개인 자료 정리 홈페이지 입니다.

Note > 리눅스 명령어 모음

Note > 리눅스 명령어 모음top display Linux processes

By a3040, Published on Invalid Date

Linux 시스템에서 현재 실행 중인 프로세스의 정보를 실시간으로 모니터링할 수 있는 명령어입니다. 

시스템의 상태를 실시간으로 모니터링할 수 있습니다.


주요 옵션


-d [초] : 지정한 시간마다 top 화면을 갱신합니다.

-u [사용자명] : 해당 사용자가 실행 중인 프로세스만 보여줍니다.

-p [PID] : 지정한 PID에 해당하는 프로세스의 상태를 보여줍니다.

-n [횟수] : 지정한 횟수만큼 top 명령어를 실행합니다. 

-b : 배치 모드로 실행합니다. 

-c : 명령어 이름을 보여줍니다.



top 결과 창 보기

14:46:21 : 현재 시간을 나타냅니다.

up 22 days, 17:01 : 시스템이 부팅된 이후 경과한 시간을 나타냅니다.

1 user : 현재 시스템에 로그인한 사용자 수를 나타냅니다.

load average: 0.52, 0.39, 0.26 : 1분, 5분, 15분 동안의 시스템 부하를 나타냅니다.

Tasks: 281 total : 현재 실행 중인 프로세스의 개수를 나타냅니다.

2 running : 실행 중인 프로세스 중 실행 중인 프로세스의 개수를 나타냅니다.

279 sleeping : 실행 중인 프로세스 중 대기 중인 프로세스의 개수를 나타냅니다.

0 stopped : 실행 중인 프로세스 중 정지된 프로세스의 개수를 나타냅니다.

0 zombie : 실행 중인 프로세스 중 좀비 프로세스의 개수를 나타냅니다.

%Cpu(s): 2.4 us, 1.8 sy, 1.8 ni, 89.8 id, 3.0 wa, 0.0 hi, 0.4 si, 0.7 st 

: CPU 사용량을 나타냅니다. 

us는 사용자 프로세스에서 사용한 CPU 사용량을, 

sy는 시스템 프로세스에서 사용한 CPU 사용량을, 

ni는 우선 순위가 높은 프로세스에서 사용한 CPU 사용량을, 

id는 CPU가 유휴 상태였던 시간의 비율을, 

wa는 입출력 대기 시간에서 사용한 CPU 사용량을, 

hi는 하드웨어 인터럽트에서 사용한 CPU 사용량을, 

si는 소프트웨어 인터럽트에서 사용한 CPU 사용량을, 

st는 가상화 환경에서 발생한 CPU 사용량을 나타냅니다.

MiB Mem: 975.3 total, 94.5 free, 596.5 used, 284.4 buff/cache 

: 시스템 메모리의 사용 상태를 나타냅니다. 

Mem은 시스템 전체 메모리 용량, 

free는 사용 가능한 메모리 용량, 

used는 사용 중인 메모리 용량, 

buff/cache는 버퍼와 캐시에 사용된 메모리 용량을 나타냅니다.

MiB Swap: 3812.0 total, 3007.7 free, 804.2 used, 198.7 avail Mem 

: 시스템 스왑의 사용 상태를 나타냅니다. 

Swap은 스왑 전체 용량,free는 사용 가능한 스왑 용량, 

used는 사용 중인 스왑 용량, 

avail Mem은 스왑 용량을 사용할 수 있는 메모리 용량을 나타냅니다.


실행 중인 프로세스의 정보를 나타냅니다.


PID : 프로세스 ID입니다.

USER : 프로세스를 실행한 사용자 계정입니다.

PR : 프로세스의 우선 순위를 나타냅니다.

NI : 프로세스의 nice 값입니다. nice 값이 높을수록 우선 순위가 낮아집니다.

VIRT : 프로세스가 사용하는 가상 메모리의 크기입니다.

RES : 프로세스가 실제로 사용 중인 메모리의 크기입니다.

SHR : 공유 메모리의 크기입니다.

S : 프로세스의 상태를 나타냅니다. S는 sleeping(대기 중), R은 running(실행 중), Z는 zombie(좀비), T는 traced(추적 중)를 나타냅니다.

%CPU : 프로세스가 사용한 CPU 사용률입니다.

%MEM : 프로세스가 사용한 메모리 사용률입니다.

TIME+ : 프로세스가 실행된 총 시간입니다.

COMMAND : 프로세스의 명령어 이름입니다.


Note > 리눅스 명령어 모음 ps - report a snapshot of the current processes.

By a3040, Published on Invalid Date

현재 실행 중인 프로세스의 정보를 출력하는 명령어입니다. ps 명령어는 CLI(Command Line Interface)에서 사용하며, 다양한 옵션을 사용하여 원하는 정보를 출력할 수 있습니다.


a : 현재 로그인한 사용자와 다른 사용자의 프로세스 모두를 출력합니다.

u : 프로세스 소유자와 CPU 사용 시간, 메모리 사용량 등의 상세 정보를 출력합니다.

x : 터미널에 연결되지 않은 모든 프로세스를 출력합니다.

e : 모든 프로세스를 출력합니다.

f : 프로세스 간의 계층 관계를 트리 형태로 출력합니다.



ps 화면 보기

USER : 프로세스를 실행한 사용자 계정입니다.

PID : 프로세스 ID입니다.

%CPU : 프로세스가 사용한 CPU 사용률입니다.

%MEM : 프로세스가 사용한 메모리 사용률입니다.

VSZ : 프로세스가 사용하는 가상 메모리 크기입니다.

RSS : 프로세스가 사용 중인 실제 메모리 크기입니다.

TTY : 프로세스가 실행 중인 터미널 정보입니다.

STAT : 프로세스의 상태를 나타냅니다. S는 sleeping(대기 중), R은 running(실행 중), Z는 zombie(좀비), T는 traced(추적 중)를 나타냅니다.

START : 프로세스가 시작된 시간입니다.

TIME : 프로세스가 실행된 총 시간입니다.

COMMAND : 프로세스의 명령어 이름입니다.


사용예시?

오라클에서 락이 발생해서 꼭 제거에해야할 경우등에서 오라클 에서 process id 확인후 ps로 확인 이후 kill


Note > 리눅스 명령어 모음kill - send a signal to a process

By a3040, Published on Invalid Date

kill - send a signal to a process

-l : 사용 가능한 시그널 목록을 출력합니다.


많은 시그널들이 있지만 보통 시스템관리시 9번을 많이 사용합니다.;; 9) SIGKILL 

PID 찾을때 주의 해야합니다.


가끔를 사용해서 분석용 덤프를 만들기도 합니다.


kill 명령어를 사용하여 SIGQUIT 시그널을 보내면, 해당 프로세스는 코어 덤프를 생성하고 종료됩니다.

예시: kill -3 [PID]


kill -l

 1) SIGHUP    2) SIGINT    3) SIGQUIT   4) SIGILL    5) SIGTRAP

 6) SIGABRT   7) SIGBUS    8) SIGFPE    9) SIGKILL   10) SIGUSR1



Note > 리눅스 명령어 모음 tar - an archiving utility

By a3040, Published on Invalid Date

파일 압축 및 아카이브 생성을 위한 명령어입니다. tar는 Tape Archive의 약어이며, 파일 및 디렉토리를 하나의 파일로 묶은 후, 이를 gzip 등의 알고리즘을 사용하여 압축할 수 있습니다.


-c : 아카이브 생성 모드입니다.

-x : 아카이브를 해제하는 모드입니다.

-f : 아카이브 파일 이름을 지정하는 옵션입니다.

-v : 아카이브 작업 과정을 자세히 출력합니다.

-z : gzip 알고리즘을 사용하여 아카이브 파일을 압축합니다.

-j : bzip2 알고리즘을 사용하여 아카이브 파일을 압축합니다.


파일 묶기 : tar -cf [아카이브 파일 이름] [묶을 파일이나 디렉토리 경로]

파일 압축하기 : tar -czf [아카이브 파일 이름] [묶을 파일이나 디렉토리 경로]

아카이브 해제하기 : tar -xf [아카이브 파일 이름]


묶어서 압축하기 tar cvzf 만들이름.tgz 묶을대상


내용 확인


파일 풀기 및 압축해제 tar xvzf x.tgz


백업 작업등을 할때 유용하게 사용됩니다.

Note > 리눅스 명령어 모음gzip unzip

By a3040, Published on Invalid Date

gzip, gunzip, zcat - compress or expand files

unzip - list, test and extract compressed files in a ZIP archive


파일을 압축하거나 해제 하기 때문에 파일을 묶는 tar 파일과 함께 사용되기도 합니다.


파일 압축하기 : gzip [압축할 파일 이름]

압축 파일 해제하기 : gzip -d [압축 해제할 파일 이름]


파일 해제하기 : unzip [압축 해제할 파일 이름]

파일 목록 출력하기 : unzip -l [압축 파일 이름]

특정 파일 해제하기 : unzip [압축 해제할 파일 이름] [해제할 파일 이름]