-
2022.03.12
[리눅스 명령어] at / atq /atrm
at 지정한 시간에 원하는 명령이나 작업이 실행될 수 있도록 해주는 명령어 보통 한번 실행되는 경우에 주로 사용됨. atd 데몬에 의해 실행됨. 지정한 작업은 큐(Queue)에 저장됨. 저장된 작업들은 /var/spool/at 디렉터리 아래에 파일로 저장됨. 명령은 기본적으로 표준 입력 장치를 통해 받음. 원하는 명령을 순차적으로 입력한 후에 [Ctrl]+[D] 를 누르면 해당 작업이 예약됨. 기본적인 결과는 root 사용자의 메일로 전송됨. (참고) at 사용자 제한 더보기 다음의 파일로 at 사용자를 제한할 수 있음. /etc/at.allow /etc/at.deny /etc/at.allow 파일이 존재하는 경우 /etc/at.deny 파일 존재 유무에 상관없이 /etc/at.allow 파일에 등록된 ..
-
2022.03.10
[리눅스 명령어] pkill
pkill 프로세스명을 사용해서 특정 프로세스에 시그널을 보내는 명령 kill 명령과 같이 기본 시그널은 15번 시그널(TERM, SIGTERM)이다. 프로세스명과 사용자 및 그룹명 등으로 프로세스를 종료시킬 수 있음. 사용법 # pkill [option] [pattern] 주요 옵션 옵션 설명 -u 특정 사용자가 실행시킨 프로세스의 PID에 시그널을 보냄. -U 특정 UID를 갖는 사용자가 실행시킨 프로세스의 PID에 시그널을 보냄. -g 특정 그룹이 실행시킨 프로세스의 PID에 시그널을 보냄. -G 특정 GID를 갖는 그룹이 실행시킨 프로세스의 PID에 시그널을 보냄. -t 특정 터미널에 실행 중인 프로세스의 PID에 시그널을 보냄. -l PID 이외에 프로세스명도 같이 출력함. 사용 예 예 1 ht..
-
2022.03.10
[리눅스 명령어] pgrep
pgrep 프로세스를 이름 기반으로 검색하는 명령 PID 값을 출력함. 옵션을 이용하면 사용자나 그룹명 등으로도 PID 조회가 가능함. 사용법 $ pgrep [option] [pattern] 주요 옵션 옵션 설명 -u 특정 사용자가 실행시킨 프로세스의 PID 출력 -U 특정 UID를 갖는 사용자가 실행시킨 프로세스의 PID 출력 -g 특정 그룹이 실행시킨 프로세스의 PID 출력 -G 특정 GID를 갖는 그룹이 실행시킨 프로세스의 PID 출력 -t 특정 터미널에 실행 중인 프로세스의 PID 출력 -l PID 이외에 프로세스명도 같이 출력함. 사용 예 예 1 httpd 프로세스의 PID 출력 $ pgrep httpd 예 2 starrykss 및 yuloje 사용자가 실행시킨 프로세스의 PID 출력 $ pgr..
-
2022.03.10
[리눅스 명령어] nohup
nohup 사용자가 로그아웃하거나 작업 중인 터미널 창이 닫혀도, 실행중인 프로세스를 백그라운드 프로세스로 작업될 수 있도록 해주는 명령 실행중인 프로세스의 표준 출력과 표준 에러는 nohup.out 이라는 파일을 생성하여 기록한다. 만약 쓰기 작업이 불가능할 경우, $HOME/nohup.out 파일을 생성하여 기록한다. nohup 은 실행한 명령을 자동으로 백그라운드로 보내지 않으므로, 사용자가 명령행 뒤에 &를 명시해야 한다. 결론적으로 nohup은 실행되는 명령행 앞에 붙이는 명령이다. 사용법 # nohup 명령 사용 예 예 tar cvf source.tar /opt/src 라는 명령을 백그라운드 프로세스로 실행함. 사용자가 로그아웃하거나 실행중인 프로세스의 터미널 창이 닫혀도 계속적으로 작업이 수..
-
2022.03.10
[리눅스 명령어] renice
renice 실행중인 프로세스의 우선순위를 변경할 때 사용하는 명령 다음을 이용함. PID 사용자 이름 프로세스의 GID nice 명령과 renice 명령의 비교 공통점 root 만이 NI 값을 낮춤으로써 우선순위를 높일 수 있음. NI 값 범위 : -20~19` 차이점 nice 명령 프로세스명으로 우선순위 조정 명령을 실행하면 새로운 프로세스가 추가로 발생 기존의 NI 값에 증감되는 형태 renice 명령 주로 PID로 우선순위 조정 기존의 프로세스를 교체하여 조정 기존의 NI 값에 상관없이 지정한 NI 값이 바로 설정되는 형태 사용법 # renice [option] NI값 PID 주요 옵션 옵션 설명 -n - NI 값을 지정할 때 사용하는 옵션이지만, 일반적으로 생략함. - (--priority) -..
-
2022.03.10
[리눅스 명령어] nice
nice 프로세스의 우선 순위를 변경하는 명령 NI 값을 설정할 때 사용 프로세스에 설정되어 있는 NI의 기본값 : 0 지정 가능한 범위 : -20~19 값이 작을수록 우선순위가 높음. nice 명령으로 지정하는 값 기존에 설정된 값을 증감시키는 형식 일반 사용자 : NI 값을 증가시킬 수만 있음. root 사용자 : NI 값을 감소시켜 우선순위를 높일 수 있음. 사용법 # nice [option] 프로세스명 주요 옵션 옵션 설명 -n 값, -값 사용자(User) 쿼터를 활성화할 때 사용하는 옵션 (기본 옵션) 사용 예 예 1 # ps -l 더보기 F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 4 S 0 4685 3039 0 80 0 - 58059 do_w..
-
2022.03.10
[리눅스 명령어] bg
bg 포어그라운드 프로세스를 백그라운드 프로세스로 전환하는 명령 포어그라운드로 실행중인 프로세스에 [Ctrl]+[Z]를 눌러 작업을 일시 중지시킨 후, bg 명령을 사용해서 백그라운드로 전환할 수 있다. 사용법 bg 사용 예 예 $ find / -name '*.txt' 2> /dev/null > list.txt ^Z // [CTRL]+[Z] [1]+ Stopped find / -name '*.txt' 2> /dev/null > list.txt $ bg // 백그라운드 프로세스로 전환 [1]+ find / -name '*.txt' 2> /dev/null > list.txt &
-
2022.03.10
[리눅스 명령어] fg
fg 백그라운드 프로세스를 포어그라운드 프로세스로 전환하는 명령 사용법 fg [%Job_Number] fg [Job_Number] 사용 예 예 1 백그라운드로 수행중인 작업을 포어그라운드로 전환 만약, 백그라운드로 수행중인 작업이 여러 개인 경우, 가장 최근에 수행한 작업(보통 + 기호가 붙어 있는 작업)을 포어그라운드로 전환 $ fg 예 2 작업 번호가 2번인 프로세스를 포어그라운드로 전환 다음의 명령과 같음. fg 2 $ fg %2
-
2022.03.10
[리눅스 명령어] jobs
jobs 다음의 프로세스 목록을 출력해주는 명령 백그라운드로 실행중인 프로세스 현재 중지된 프로세스 사용법 jobs [option] 주요 옵션 옵션 설명 -l 프로세스 번호(PID)를 추가로 출력 사용 예 예 1 백그라운드 프로세스 출력 $ jobs 예 2 프로세스 번호를 추가하여 백그라운드 프로세스 출력 $ jobs -l
-
2022.03.10
[리눅스 명령어] killall
killall 같은 데몬의 여러 프로세스를 한 번에 종료시킬 때 사용하는 명령 프로세스명을 사용한다. 기본적인 사용법은 kill 명령과 유사하다. 시그널을 지정하지 않으면, 종료 시그널(TERM, SIGTERM)이 전송된다. 사용법 # killall [option] 프로세스명 주요 옵션 옵션 설명 -l - 시그널의 종류 출력 - (--list) -w - 시그널을 받은 프로세스들이 종료될 때까지 기다림. - (--wait) -v - 시그널이 전송된 결과를 출력 - (--verbose) -s signal - 시그널의 이름을 지정 - (--signal) -u 사용자명 - 특정 사용자의 프로세스를 지정할 때 사용 - (--user) 사용 예 예 1 Apache 웹 서버 데몬인 httpd를 모두 종료 # kill..
-
2022.03.10
[리눅스 명령어] kill
kill 프로세스에 특정한 시그널(Signal)을 보내는 명령 옵션 없이 실행하면 프로세스에 종료 신호(15, TERM, SIGTERM)을 보냄. 보통 중지시킬 수 없는 프로세스를 종료시킬 때 사용함. 사용법 # kill [option] [signal] [PID 또는 %Job_Number] 주요 옵션 옵션 설명 -l 시그널의 종류 출력 -s signal 시그널의 이름을 지정 사용 예 예 1 시그널의 종류 출력 # kill -l 더보기 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL10) SIGUSR1 11) SIGSEGV12) SIGUSR213) SIGPIPE14) SIGALRM15) ..
-
2022.03.10
[리눅스 명령어] top
top 동작중인 프로세스의 상태를 실시간으로 화면에 출력해주는 명령 프로세스의 상태 뿐만 아니라 CPU, 메모리, 부하 상태 등도 확인할 수 있음. top 명령은 실행 상태에서 다양한 명령을 입력하여 프로세스 상태를 출력하거나 제어할 수 있음. 사용법 top [option] 주요 옵션 옵션 설명 -d 갱신 시간 갱신 시간 설정 (초 단위) -p 특정 PID 값을 갖는 프로세스를 모니터링할 때 사용 -b - 배치 모드(Batch Mode)로 실행하는 옵션 - 다른 프로그램이나 파일에 전송할 때 사용함. - 보통 -n 옵션과 같이 실행함. -n 값 top 명령의 실행 횟수를 지정하는 옵션 사용 예 예 1 $ top 더보기 top - 20:12:33 up 3:24, 2 users, load average: 0..
-
2022.03.10
[리눅스 명령어] pstree
pstree 프로세스의 상태를 트리(Tree) 구조로 출력해주는 명령 가장 왼쪽이 부모 프로세스이고, 오른쪽이 자식 프로세스에 해당함. 사용법 pstree [option] 주요 옵션 옵션 설명 -a 각 프로세스의 명령행 인자까지 보여줌. -h 현재 프로세스와 그것의 조상 프로세스를 하이라이트(Highlight)로 강조해서 보여줌. -n 프로세스 이름 대신에 PID 값으로 정렬해서 보여줌. (Number Sort) -p PID 값을 보여줌. 사용 예 예 실행 중인 프로세스의 정보를 트리 구조로 출력해 주되, 실행한 명령 부분을 진하게 강조해서 출력 $ pstree -h 더보기 systemd─┬─ModemManager───2*[{ModemManager}] ├─NetworkManager─┬─dhclient │..
-
2022.03.10
[리눅스 명령어] ps
ps Process Status 동작 중인 프로세스의 상태를 출력해주는 명령 ps의 옵션 전통적인 유닉스인 System V, BSD, GNU에 따라 결과가 다르게 나타나고, 표기법에도 차이를 보임. System V 계열 옵션 사용 시, 1개의 대시(Dash, -)를 사용함. BSD 계열 옵션 사용 시, 대시(-)를 사용하지 않음. GNU 계열 옵션 사용 시, 2개의 대시(--)를 사용함. 원하는 프로세스 상태를 출력하려면 정확한 옵션 사용이 중요함. 예) ps -a 와 ps a 는 전혀 다른 결과를 출력함. 특히, 동작중인 전체 프로세스를 출력하는 경우 System V 계열과 BSD 계열의 옵션을 정확히 사용해야 함. 사용법 ps [option] 주요 옵션 옵션 설명 a - 터미널과 연관된 프로세스를 출..
-
2022.01.09
[리눅스마스터 1급 실기][단답식] 연습 문제 (프로세스 관리)
[리눅스마스터 1급 실기][단답식] 연습 문제 (프로세스 관리) 문제 1 Q. 다음은 프로세스아이디(PID)가 1079번인 프로세스를 실행시키는 명령어를 찾는 과정이다. (괄호) 안에 알맞은 내용을 적으시오. # ls -l /proc/(1)/(2) ● 정답 더보기 ① 1079 ② exe 문제 2 Q. 다음은 cron을 이용한 프로세스 스케줄링을 관리하는 과정이다. 조건에 맞게 (괄호) 안에 알맞은 내용을 적으시오. 가. idhuser가 예약한 작업의 시간을 변경하려고 한다. # (1) (2) ihduser 나. /etc/check.sh는 월, 목, 금요일 오전 4시 5분에 실행한다. # (3) /etc/check.sh 다. /etc/heartbeat.sh 명령을 10분 주기로 실행한다. # (4) /et..
-
2021.04.28
51. 프로세스
51. 프로세스 1. 데몬(Daemon) 프로세스 프로세스(Process) 프로그램(Program)이 실행되어서 프로그램이 메모리에 올라가는 것 메모리를 점유하고 사용자의 요청에 따라 명령을 실행함. 프로세스를 실행한 사용자가 직접 실행할 수도 있고, 리눅스가 부팅될 때 실행될 수도 있음. 리눅스가 부팅될 때 실행되면, 그것은 init 프로세스가 가동시키는 것임. 데몬 프로세스(Daemon Process) 리눅스 서버가 부팅될 때 백그라운드에서 실행되고 있다가 클라이언트의 요구에 대한 서비스를 수행하는 프로그램 종류 standalone 방식 백그라운드에서 항상 실행되고 있음. 클라이언트에게 서비스를 요청 받으면 즉시 처리함. inetd 방식 메모리에 상주되지 않고, sleep 상태로 있다가 클리이언트 요..