리눅스 기본명령어 사용방법 2편
작성자 정보
- 웹관리자 작성
- 작성일
컨텐츠 정보
- 12,360 조회
- 0 추천
- 목록
본문
제목 : 리눅스 기본명령어 사용방법 2편
ㅇ 제작 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 서버관리팀
ㅇ SULINUX 홈페이지 : www.sulinux.net
ㅇ 리눅스포털 홈페이지 : www.superuser.co.kr
2-11. 파일 찾아보기 - find
원하는 파일 찾아보기
형식 : find [경로] [옵션] 파일명
옵 션 |
기 능 |
-amin n |
n분 전에 마지막으로 액세스된 파일 |
-atime n |
n x 24시간 전에 마지막으로 액세스된 파일 |
-cmin n |
n분 전에 마지막으로 변경된 파일-ctime n n x 24시간 전에 마지막으로 변경된 파일 |
-empty |
비어 있는 파일이나 디렉토리 |
-name <pattern> |
pattern으로 주어진 파일 |
-newer |
파일 “파일”보다 최신의 파일 |
설명 : find 명령은 일종의 검색 기능이다. 만약, 웹브라우저인 모질라가 설치되지 않은 상태에서 이를 추가로설치하고자 할 경우에 이 파일의 압축 파일이 어디에 있는지 안다면 다행이지만, 모를 경우 이것을 찾기 위하여 일일이 디렉토리들을 찾아 헤매는 것은 컴퓨터를 사용하고 있는 사용자로서 어리석은 행동일 것이다.
이 경우에 find 명령으로 쉽게 어느 디렉토리에 있는지 찾아 볼 수 있다. find 명령으로 찾은 다음에는 지정된 경로로 이동하여 압축을 해제하여 설치하면 시간을 낭비하지 않아도 된다. 자, 그러면 SULinux CD를 CD-ROM/DVD/-ROM 드라이브에 삽입하여 다음과 같이 xinetd RPM 패키지 파일을 찾아봅니다.
$ find /media/dvdrom1 -name xinetd*
find 명령에 [시작 경로] [옵션] [검색될 문자열 또는 파일명]의 형식으로 입력하여 파일을 찾는 명령을 실행한다. 그러면 명시한 경로로부터 해당 파일을 알려준다. 자세히 말하자면 “마운트된 /media/dvdrom1 디렉토리 이하에서 xinetd를 포함하는 모든 파일을 찾아라!” 라는 명령이다. 이와 같이 특정한 파일을 찾고자 할 때는 찾기 시작할 경로를 지정해 주고,만약 시작 경로조차 모른다면 가장 상위 경로인 루트 디렉토리(/)를 지정하여 -name 옵션을 부여한 후에 찾고자 하는 파일명을 붙여주면 된다.
2-12. 프로세스 상태 확인 - ps, pstree
작동중이 프로세스 상태 체크하기
ps
형식 : ps [옵션]
옵 션 |
기 능 |
l |
긴 포맷으로 출력 |
u |
실행한 유저와 실행 시간을 표시 |
j |
“job" 형식으로 표시 |
s |
시그널(signal) 포맷으로 표시 |
m |
메모리 정보 표시 |
a |
다른 유저의 프로세스 현황 표시 |
x |
터미널 제어 없이 프로세스 현황 표시 |
설명 : ps 명령어로 현재 실행중인 프로그램들을 확인할 수 있다.
# ps
# ps ax | more
어떤 사용자에 의해 프로세스가 실행되었는지 확인하기 위해서는 다음 화면과 같이 ‘-u' 옵션을 사용한다.
# ps aux | more
pstree
형식 : pstree [옵션] [pid | user]
옵 션 |
기 능 |
a |
명령행에서 지정한 인수가 있다면, 명령어 라인 인수까지 보여줌 |
c |
기본값은 동일한 트리 내의 같은 프로세스를 하나의 프로세스만 보여주고 해당 프로세스의 개수를 나타내는데, 같은 프로세스를 모두 표 |
G |
트리 형태를 보기 좋게 VT100 형태로 표시 |
h |
현재 프로세스오 부모 프로세스를 하이라이트로 표시 |
H pid |
pid로 지정된 프로세스와 부모 프로세스를 하이라이트로 표시 |
l |
긴 라인을 모두 표시 |
n |
PID를 기준으로 정렬하여 표시 |
p |
PID까지 표시 |
u |
UID를 표시 |
U |
UTF-8(Unicode) 형태로 표시 |
V |
버전 정보 출력 |
pid |
지정한 pid를 출력 |
user |
지정한 사용자의 프로세스만 출 |
설명 : pstree 명령어는 프로세스간의 부모 자식 관계를 트리 형태로 출력하므로해서 시스템의 프로세스의 상태를 점검하는 유용한 툴이다.
2-13. 블록 장치 연결 - mount, umount
사용하고자하는 파일시스템과 마운트 포인트를 연결해 주는 명령어이다.
형식 : mount [옵션] [디바이스] [마운트 포인트]
형식 : umount [디바이스] 또는 umount [마운트 포인트]
리눅스에서 하드 디스크나 CD-ROM, 플로피 디스크 같은 파일시스템에 접근하기위해서는 마운트라는 과정이 필요하다.
마운트란 접근하고자 하는 디바이스(파일시스템)를 리눅스 트리 구조에 있는 디렉토리를 이용해서 사용할 수 있도록 하는 방법이다.
이 디렉토리를 마운트 포인트라고 하고, 마운트 포인트에 접근해서 해당 디바이스를 사용할 수 있다.
현재 마운트 되어 사용되고 있는 파일시스템은 /etc/mtab 파일에 지정되어 있어며, 부팅시 자동 마운트 되도록 설정되어 있는 파일은 /etc/fstab이다.
옵션 |
설 명 |
-v |
자세한 출력 모드 |
-f |
실제로 마운트하지 않고 마운트 가능한지 점검 |
-n |
/etc/mtab 파일에 저장 없이 마운트 하기 |
-r |
읽기만 가능하도록 마운트 |
-w |
읽기/쓰기 모두 가능하도록 마운트 |
-t 타입 |
-t 뒤에 파일 시스템 유형을 지정함 |
파일시스템 유형
종류 |
설 명 |
CD-ROM/DVD-ROM |
iso9660 |
ms-dos |
msdos/umdos |
win98 |
vfat |
win2000, XP |
ntfs |
linux |
ext2, ext3, reiserfs, xfs |
floopy |
msdos, ext2 |
실제 사용의 예
하드디스크 마운트 [root@localhost ~ ]# mount /dev/hdb1 /mnt/hdd_disk
하드 디스크 언마운트 [root@localhost ~ ]# umount /dev/hdb1 또는 [root@localhost ~ ]# umount /mnt/hdd_disk
CD 마운트 [root@localhost ~ ]# mount -t iso9660 /dev/cdrom /media/cdrom
CD 언마운트 [root@localhost ~ ]# umount /dev/cdrom 또는 [root@localhost ~ ]# umount /media/cdrom |
2-14. 파일 시스템 만들기 - mkfs
리눅스 파일 시스템 만들기
형식 : mkfs [-t 형태] [fs-옵션] 장치명 [블록]
설명 : mkfs 명령어는 하나의 드라이브 장치를 리눅스 파일 시스템으로 만들 경우에 사용한 명령어이다. 도스에서는 디스크를 포맷할 때 format 명령어를 사용하는데 하드 디스크 파티션을 리눅스 파일 시스템으로 포맷한다는 개념으로 이해하면 쉬울 것이다.
리눅스의 파일 시스템은 ext2 또는 ext3 형태를 사용함을 이미 마운트 명령어에서 살펴본 바 있다. /dev/hda3 파티션에 대해서 파일 시스템으로 포맷하는 과정은 다음과 같다.
# mkfs -t ext3 /dev/hda7
2-15. 파일 시스템 점검 - fsck
리눅스 파일 시스템을 점검하고 복원시켜 준다.
형식 : fsck [-t 파일시스템유형] 파일시스템
설명 : 리눅스 시스템은 부팅시에 파일 시스템을 자동으로 체크하고, 파일 시스템이 손상이 입었을 때 fsck 명령으로 이러한 것을 점검하고 복구한다. 리눅스 시스템을 종료할 때 shutdown 명령어를 사용하여 정상적으로 종료하지 않고, 전원 스위치로 바로 끄는 경우 실행중인 프로세스가 중단되지 않아 리눅스 파일 시스템에 손상을 입게 된다.
이 경우 다시 전원 스위치를 넣어 부팅하게 되면 커널 부팅 과정 중 파티션을 확인하는 부분에서 이 명령어가 자동으로 작동되는 것을 볼 수 있다. 만약 커널 부팅 과정에서 자동적으로 파티션 겨러함을 복수하지 못한다면 부팅이 완료된 후에 수동으로 e2fsck 명령어나 fsck 명령어를 이용하여 복구해야한다.
# e2fsck /dev/hda7
2-16. 시스템 사용자 확인 - who, w
현재 시스템에 접속한 사용자를 확인하고자 할 때 사용
형식 : who 또는 w
옵 션 |
기 능 |
-i |
idle time과 함께 사용자 출력함 |
-m |
who 명령을 실행한 사용자 표시 |
-q |
사용자 이름과 사용자 수 출력 |
-w, -T |
각 사용자의 메시지 설정 상태 출력 |
설명 : 현재 시스템을 사용하고 있는 계정 사용자들을 확인하는 명령으로 who 또는 w 명령을 사용한다. 간단히 who명령을 실행하면 현재 쉘 사용자를 확인할 수 있다.
2-17. 프로세스 죽이기 - kill
실행중인 프로세스를 재활성화하거나 완전히 죽이고자 할 때 쓰이는 명령
형식 : kill [옵션] 프로세스ID
옵션 |
기 능 |
-1 |
-HUP 프로세스를 재활성화함 |
-9 |
프로세스를 장제로 죽임 |
설명 : 현재 작동중인 프로세스를 죽이거나 다시 띄우고자 할 때 kill명령을 사용한다. “네밈서버”에서 배우게 될 네임 서버의 환경 설정을 변경한 경우에는 반드시 네임서버의 데몬을 다시 띄워 주어야 하는데 이 때 사용되는 명령이 바로 kill 명령이다. kill 명령을 이용하여 현재 작동중인 프로세스를 죽이거나 다시 띄우는 방법에 대해서 연습해 보도록 한다. 먼저 작동중인 커널 프로세스가 어떤 것들이 있는지 확인한 후 그 가운데 존재하는 xinetd 데몬을 다시 띄워 보도록 한다.
# ps ax | grep xinetd
# kill -1 2292
또는
# kill -HUP 2292
-1 또는 -HUP 옵션을 사용하여 작동중인 프로세스를 다시 시작할 수 있다. 자, 이번에는 xinetd 데몬을 제거해 봅니다. 이때 사용되는 옵션은 -9이다.
# ps ax | grep xinetd
# kill -9 2292
# ps ax | grep xinetd
해당 프로세스를 -9 옵션으로 제거하면 “ps ax | grep 프로세스명” 으로 검색했을 때 해당 프로세스에 대한 PID가 나오지 않는다.
2-18. 리눅스 매뉴얼 보기 - man
리눅스의 모든 명령어에 대한 사용 방법을 알려주는 명령
형식 : man 리눅스명령어
설명 : 이제까지 살펴 본 리눅스의 기본 명령어에 대한 자세히 알고자 하는 경우에는 “man 명령어”를 실행하면 해당 명령어의 기능, 사용법, 옵션 등에 대해 자세히 알 수 있다. 따라서 여러분들이 해당 명령어에 대한 사용법을 모르는 경우에는 man페이지를 통하여 쉽게 터득할 수 있다.
Man 페이지 내용을 텍스트 파일로 변환하기
맨페이지 문서 내용을 텍스트 페이지로 저장하는 방법은 다음과 같다.
man 명령어 | col -b > 텍스트파일명
cp 명령어에 대한 Man 페이지의 도움말을 cp.man.txt 파일로 저장하는 예제이다.
# man cp | col -b > cp.man.txt
2-19. 현재 위치 보기 - pwd
pwd는 자신이 위치하고 있는 현재 디렉토리를 표시해 주는 명령어이다.
[그림 ] pwd 실행 화면
[그림]에서 보는 것과 같이 pwd라는 명령어를 내린후 /root 라는 결과값을 보여준다. 이는 현재 작업중이 디렉토리의 경로가 /root라는 말이다.
2-20. 자원 관련 명령어 - free, top
free
free는 현재 사용하고 있는 시스템의 메모리 상태을 보여준다.
-m관 -k 옵션을 추가로 넣어 메모리 양을 메가바이트 단위나 킬로바이트 단위로 출력한다.
관련자료
-
이전
-
다음