vi 파일명 vi에디터로 열기
명령모드 → 입력모드
O
I 가 나 다 i 라 a 마 바 사 아 자 차 A
o
입력모드
이동
|
k |
|
h |
j |
l |
Ctrl + F 다음화면으로 이동
Ctrl + B 이전화면으로 이동
^ 현재행의 처음으로 이동
$ 현재행의 마지막으로 이동
gg 제일 첫 행으로 이동
G 제일 끝 행으로 이동
숫자G 해당 숫자의 행으로 이동
:숫자엔터 해당 숫자의 행으로 이동
삭제,복사,붙여넣기
가 나 (다 X) (라 x) 마 바 사 아 자 차
dd 현재 커서의 행 삭제
숫자dd 현재커서부터 숫자만큼의 행 삭제
D 커서 기준 뒤 다 지움
1,5000d 1~5000번 다지움
yy 현재 커서가 있는 행 복사
숫자yy 현재 커서부터 숫자만큼의 행 복사
p 복사행 내용을 현재 행 이후에 붙여넣기
P 복사행 내용을 현재 행 이전에 붙여넣기
:1,3 co 5 1~3라인을 5에 복사
:4,6 mo 8 4~6라인을 8에 이동
u 이전작업 취소
명령모드
/문자열 (현재 커서 이후)해당 문자열 찾음
?문자열 (현재 커서 이전)해당 문자열 찾음
n 찾은 문자 중에서 다음 문자로 이동
N 찾은 문자 중에서 이전 문자로 이동
noh 찾아서 블록 되어있는 문자들 해제
:%s/이전단어/새단어/g
ex) :%s/\$//g (설명: :%s/바꿔라 \$/의미없는(\) $를 /g 빈칸으로)
:w 저장
:w 새이름 새 이름으로 저장
:q! 저장안하고 닫기
:wq! 저장하고 닫기
-------------------------------
shutdown –h now halt init 0
끄기
shutdown –r now reboot init 6
재부팅
su – 입력후 루트암호 루트권한으로 진입
su – 사용자명 사용자권한으로 진입
init s 싱글유저
man 명령어 명령어 --help 도움말
pwd 현재위치확인
ls 경로 경로의 목록
ls –a 숨김파일포함 목록
ls –l 자세히 보여줌
ls *.txt 확장자가 txt 인 목록을 보여줌
ls –l /user/bin/a* /user/bin 디렉토리에있는 목록중 앞글자가 a인 것의 목록을 자세히보여줌
cd ~root root 사용자의 홈 디렉토리로 이동함
cd .. 상위 디렉토리로 이동
cd /user/bin /user/bin 디렉토리로이동 (절대경로)
cd ../user/bin 현재경로의 상위..디렉토리 밑의 /user/bin디렉토리로 이동(상대 경로)
rm 파일명 파일명 파일 삭제
rm –r abc 디렉토리 삭제
rm –rf abc abc디렉토리와 그 하부 강제로 삭제
cp –p 날짜까지 원본과 같이 복사
cp a.txt b.txt a.txt파일을 b.txt 파일로 복사
cp –r abc efg 디렉토리복사
cp –a abc efg 숨김파일, 디렉토리까지 복사
cp /dev/null a.txt a.txt에 null값 복사
touch a.txt a.txt파일 생성
mv aa bb cc dd aa,bb,cc 파일을 dd 디렉토리로 이동
mv a.txt b.txt 이름변경
mkdir 디렉토리 생성
rmdir ab ab 디렉토리 삭제(빈디렉토리만)
rm –r ab ab 디렉토리 삭제(내용있어도)
cat 파일명 텍스트 파일 내용 출력 (Ctrl + D 저장)
head 파일명 텍스트 앞10줄 출력
tail 파일명 텍스트 뒤10줄 출력
옵션[-f] => 실시간 감시
tail 이 중요한이유!!!
tail -f /var/log/messages => /var/log/messages 로그를 실시간으로 갱신 가능
more 페이지 단위로 출력 (Space : 다음페이지, b : 앞페이지, Q : 종료)
clear 명령창 화면 지워줌
----------------------
groupadd –g 5000 dba gid 5000번인 dba 그룹생성
useradd –u 500 –g 5000 oracle uid 500번인 oracle 계정을 그룹5000번에 생성
passwd oracle oracle의 비번 생성
useradd user1
useradd –d /newhome newuser newuser생성하면서 홈디렉토리를 /newhome으로 지정(디폴트 /home/사용자이름) 새로운 사용자 생성시 /etc/skel 디렉토리의 모든내용이 홈 디렉토리에 복사됨
tail /etc/passwd
userdel –r user1 사용자의 홈디렉토리까지 삭제
system-config-users x윈도우 환경에서 사용자관리자 띄워줌
system-config-display x윈도우 환경에서 화면설정 띄워줌
퍼미션rwxrwxrwx
4 2 1 유저
4 2 1 그룹
4 2 1 그외사용자
chmod 777 a.txt a.txt에 퍼미션 rwxrwxrwx 부여함
소유자 변경
# chown [option] [UID:GID] [디렉토리/파일명]
option
-R 하위 디렉토리/파일에 모두 적용하여 바꾼다.
ex) chown -R oracle:dba /usr/local/jre
chgrp 새로운그룹명 파일명
rpm –Uvh abc.rpm
rpm –e 패키지이름
rpm –qa 패키지이름 시스템에 패키지 설치되었나 확인
rpm –qf 파일절대경로 파일이 어느 패키지 포함된것인지 확인
rpm –ql 패키지이름 패키지에 포함된 파일 확인
rpm –qi 패키지이름 설치된 패키지 상세정보
rpm –qip 패키지파일명.rpm 설치전 패키지 파일 상세정보 확인
--nodeps 의존성무시
--force 무조건 덮어씀(기존 비정상설치등 무시)
tar xvfj bzip2 압축풀기 파일명.tar.bz2
tar xvfz gzip 압축풀기 파일명.tar.gz
tar cvfj a.tar.bz2 bzip2로 압축
tar cvfz a.tar.gz gzip으로 압축
find 경로 옵션 파일이름
옵션 -name
-user
-perm
ex) find /bin -size +10k –size –100k /bin폴더 밑 10KB~100KB 파일검색
ln –s 링크대상파일이름 링크파일이름
반복작업
cron (관련데몬 crond , 관련파일 /etc/crontab)
vi etc/crontab
* * * * * root run-parts 디렉토리
디렉토리 안 파일을 root 권한으로 실행
분 시 일 월 요일(0~6)
ex) 0 2 * * 3,5 a.sh 매월 2시 수,금에 a.sh 수행
(분자리에) */3 (리눅스에서) 3분마다
netconfig 랜카드 설정파일 IP주소 바꿀 때 –터미널 그래픽버전
/etc/init.d/network restart
명령1 | 명령2 pipe(파이프) 명령1의 결과를 명령2로 실행
ex) ls -l /etc/*.conf | wc –l /etc/*.conf 파일을 자세히 보여주기 | 결과물 라인수
명령1 > 명령2 redirection(리다이렉션) 명령1의 결과를 명령2에 출력
ls –l /etc/*.conf > list.txt /etc/*.conf 파일을 자세히 보여주기 > list.txt 에..
한번더 명령하면 덮어쓰기
ls –l /etc/*.conf >> list.txt list.txt 파일 하단에 결과물 추가함
명령 | grep 단어 filter(필터) 필요한것만 걸러줌
ex) ps –ef | grep bash bash가 들어간 프로세스만 출력
rpm –qa | grep bind bind가 들어간 패키지 출력(그냥 rpm –qa bind만 입력하면 bind-utils등등은 출력안됨)
ls –lSh 결과물 용량을 KB단위로 출력
cat /dev/null > list.txt 용량 0으로 만들기 (cat 텍스트 파일 내용 출력)
nslookup DNS 서버의 작동을 테스트
ping IP또는URL
ifconfig 장치이름 장치의 IP주소 설정 정보 출력
ex) ifconfig eth0 랜카드 IP주소 설정 정보확인
/etc/sysconfig/network 네트워크의 기본적인 정보가 설정되어 있는 파일
/etc/sysconfig/network-scripts/ifcfg-eth0 eth0 장치에 설정된 네트워크 정보가 모두 들어있는 파일
/etc/resolv.conf DNS 서버의 정보 및 호스트 이름이 들어 있는 파일
/etc/hosts gus 컴퓨터의 호스트이름 및 FQDN이 들어있는 파일
ps –ef | grep 프로세스이름 프로세스이름이 들어간 프로세스의 상태 확인
pstree 부모와 자식프로세스의 관계를 트리구조로 보여줌
watch –n 시간(초) ‘ps –ef | grep ssh’ 지정한 시간에 한번씩 ‘ ’ 안의 명령 실행
bg 작업번호 Ctrl + Z로 잠시 중지시킨 프로세스를 백그라운드로 실행
작업번호를 백그라운드 프로세스로 만들어줌
fg 작업번호 작업번호를 포그라운드 프로세스로 만들어줌
jops 현재 백그라운드 장동 프로세스 확인
명령어 & 백그라운드로 프로세스 실행
kill –9 프로세스번호 프로세스번호의 프로세스 강제 종료
top 리눅스의 작업관리자
Shift + p CPU 사용 순위로 정령
k 누르고 PID번호입력 (top상태에서) k 누르고 PID번호 입력후 옵션입력
-1 강제종료후 다시시작
-9 강제종료
-15 정상종료
q top모드 종료
top –c 어떤 명령어가 돌아가고 있는지 보여줌
ssh 계정@IP 계정@IP로 접속
scp [option] [file][user@host:file옮길 위치]
<ex> scp ./apache-tomcat-6.0.32.tar.gz suser@222.333.444.56:/home/suser
<option>
-r : 지정한 디렉토리의 하위 디렉토리 및 파일까지 모두 복사
-v : 전송시 진행사항을 보여줌
------------------------------------------
응급복구는 1CD로 부팅 → F5눌러서 진입 → linux rescue 엔터 → 전부진행후 → chroot /mnt/sysimage
fdisk → mkfs → mount
⓵ fdisk /dev/sd* 파티션 나누기
⓶ mkfs.ext3 /dev/sd* ext3형식으로 포맷
⓷ mount /dev/sdb1 마운트할디렉토리 sdb1을 마운트할 디렉토리에 마운트
(재부팅시 적용하려면 /etc/fstab에 저장필수)
LVM관련
fdisk /dev/sdc fdisk /dev/sdd fdisk /dev/sde
pvcreate 물리 볼륨 생성
ex) pvcreate /dev/sdc1
pvcreate /dev/sdd1
pvcreate /dev/sde1
vgcreate 볼륨 그룹 생성
ex) vgcreate 볼륨그룹이름 /dev/sdc1 /dev/sdd1 /dev/sde1
vgdisplay 볼륨 그룹 확인
이상까지 생성한 볼륨그룹을 하나의 드라이브로 생각하고 작업하면됨(=디스크 장착완료함)
⓵ lvcreate 파티션나누기
ex) lvcreate –L 400 –n myLG1 myVG myVG가상드라이브를 myVG라는 논리볼륨으로 파티션
⓶ mkfs.ext3 /dev/myVG/myLG1 myLG1포맷
⓷ mount /dev/myVG/myLG1 /만든디렉토리 만든디렉토리에 마운트
(재부팅시 적용하려면 /etc/fstab에 저장필수)
df –h 파일 시스템에 대한 디스크 사용량을 MB 단위(-h 옵션)로 체크
RAID관련(하드디스크8개 장착실습)
fdisk /dev/sdb 디스크장착후 각각 파티션나누기
t fd 커맨드에서 t로 파일시스템 유형 선택 : fd (레이드용)
ls /dev/sd* 파티션 모두 만들어졌나 확인
ls –l dev/md? md? 장치 있나 확인하고 있으면 해당 md숫자 지워주고 다시 생성 (rm –r md숫자)
⓵ mknod /dev/md0 b 9 0 md0 이라는 장치 파일 만들어줌
⓶ mdadm --create /dev/md0 --level=0 --raid-device=2 /dev/sdb1 /dev/sdc1
⓷ mdadm --datail --scan
⓸ mkfs.ext3 /dev/md0
⓹ mkdir /raid0data
mount /dev/md0 /raid0data
RAID 고장났을 때
⓵ 고장난 하드 숫자만큼 하드디스크 추가한다음
⓶ mdadm --query --detail /dev/md1 현재 RAID1의 상태 확인
⓷ fdisk /dev/sde 디스크장착후 파티션나누기
fdisk /dev/sdg
t fd 커맨드에서 t로 파일시스템 유형 선택 : fd (레이드용)
⓸ mdadm /dev/md1 --add /dev/sde1
mdadm /dev/md5 --add /dev/sdg1
⓹ mdadm --query --detail /dev/md1 과 /dev/md5
mdadm --detail --scan 현재 RAID 장치 확인
팀과제 : DNS + ftp + mail + APM 구축
DNS (bind)
⓵ bind 설치
bind-버전.rpm
bind-chroot-버전.rpm
bind-libs-버전.rpm
bind-utils-버전.rpm
⓶ rpm -Uvh --nodeps --force bind*.rpm bind 관련파일 설치
⓷ named.conf
⓸ zone-file
--------------------------
ftp (vsftp)
인터넷을 통해 한 컴퓨터에서 다른 컴퓨터로 파일을 전송할 수 있도록 하는 방법과, 그런 프로그램을 모두
일컫는 말이다.
rpm –Uvh vsftpd-2.0.5-16.el5_6.1.i386.rpm 설치
vi /etc/vsftpd/vsftpd.conf 설정
----------------------------
-----------------
APM 이란?
Apache + Php + Mysql = APM
apache -> 리눅스에서 제공하는 웹서버. 무료!
php -> 웹페이지를 이쁘게 꾸밀수 있는 언어! 무료!
Mysql -> 데이터베이스 프로그램 무료!
'UNIX 계열 > Linux - 명령어' 카테고리의 다른 글
리눅스 네트워크 설정 (4) | 2011.12.18 |
---|---|
sendmail 설정후 검사 및 부팅시 서비스 자동실행 명령어 (0) | 2011.12.09 |
프로세스 종료후 시작 (0) | 2011.12.07 |
linux - 데몬 제어 (0) | 2011.12.07 |
파일 주요경로 Ver.111205 (0) | 2011.12.05 |