[쿠버네티스 2주차 보충정리] 리눅스 - 작업제어 & 아카이브, 압축

신현식·2023년 1월 13일
0

구름_Linux

목록 보기
7/22
post-thumbnail

포그라운드 / 백그라운드 프로세스

  • 포그라운드 프로세스 : 사용자가 입력한 명령이 실행되어 결과가 출력될 때까지 기다려야 하는 작업
    -> 명령의 결과가 출력되는 동안 다른 작업 못함
    ex) sleep 100 하면 다른 작업 못하고 기다림

  • 백그라운드 프로세스 : 명령을 실행하면 명령의 처리가 끝나는 것과 관계없이 곧바로 프롬프트가 출력되어 사용자가 다른 작업을 계속 할 수 있음
    -> 명령의 결과와 상관없이 여러 작업을 수행 함
    ex ) sleep 100 & 해도 다른 작업 가능

작업제어

  • 작업전환 : 포그라운드 -> 백그라운드, 백그라운드 -> 포그라운드
  • 작업 일시 중지 : 작업을 잠시 중단
  • 작업 종료 : 작업을 종료

jobs

  • 백그라운드 작업을 모두 보여준다. 특정 번호를 지정하면 해당 작업의 정보만 보여줌( jobs %작업번호 )
  • ctrl + c : 포그라운드 작업은 이를 입력하면 대부분 종료
  • kill -9 %작업번호나 kill -9 PID를 이용해서 백그라운드 작업 강제종료

nohup

  • 로그아웃해도 백그라운드에서 작업을 계속 실행( nohub 명령& )
  • ex) nohub find / -name passwd > pw.dat 2>&1 &

작업예약

  • 정해진 시간에 한 번만 수행(at)
  • 정해진 시간에 반복 수행(crontab)

at

  • 예약한 명령을 정해진 시간에 실행한다 ( at [옵션][시간] )
  • at -l , atq : 예약한 작업 목록를 보는 명령
  • at -d 작업번호, atrm : 설정한 작업이 실행되기 전에 삭제하는 명령
  • at로 생성한 작업은 /var/spool/at 디렉터리에 저장됨

    💡 at 명령 사용 제한

    • /etc/at.allow 파일이 있으면 이 파일에 있는 사용자만 at 명령 사용가능, 없다면 /etc/at.deny 파일에 지정된 사용자를 제외한 모든 사용자가 at 명령사용가능
    • 두 파일 모두 없다면 root 만 at 명령 사용 가능
    • 한 사용자가 두 파일에 모두 속해 있다면 그 사용자는 at 명령 사용 불가능

crontab

  • 사용자의 crontab 파일을 관리하는 명령이다. ( crontab [-u 사용자 ID][옵션] [파일명] )
  • root사용자라면 다른 사용자에게 -u옵션으로 cron작업을 예약할 수 있다.
  • crontab -e로 편집한 파일을 저장하면 자동적으로 /var/spool/cron 디렉터리에 사용자 이름으로 생성됨
  • crontab -l : crontab 파일 내용 확인
  • crontab -r : crontab 파일 내용 삭제
  • 시스템 차원에서 crontab 예약 법 : vi /etc/crontab 접속후 파일 수정(사용자 반드시 명시)
    ex) 매년 1월 첫번째 일요일에 재부팅 설정
    -> 0 0 1-7 1 0 reboot : 시간은 24시간을 기준으로 작성
    10분마다 = */10

💡 crontab 명령 사용 제한

  • /etc/cron.allow 파일이 있으면 이 파일에 있는 사용자만 crontab 명령 사용가능, 없다면 /etc/cron.deny 파일에 지정된 사용자를 제외한 모든 사용자가 at 명령사용가능
  • 두 파일 모두 없다면 시스템 관리자만 crontab 명령 사용 가능

아카이브와 압축

아카이브 : 여러개 파일을 하나의 파일로 묶는 것을 의미
압축 : 용량을 줄이는 것
-> window는 아카이브와 압축을 한번에 실행하지만 linux는 따로 실행하기 때문에 완전히 다른 개념이다.

tar - .tar 파일

  • 파일과 디렉터리를 묶어 하나의 아카이브 파일을 생성하는 명령이다. ( tar 기능[옵션][아카이브 파일] [파일명] )
  • 다른 시스템과 파일을 주고받거나, 백업을 하기 위해 여러 파일이나 디렉터리를 하나의 아카이브 파일로 생성하거나, 기존 아카이브에서 파일을 추출하기 위해 사용
  • 아카이브 생성 : tar cvf a.tar(tar 파일) 1 2 3 4 5 (파일들)
  • 아카이브 파일 보기 : tar tvf a.tar
  • 아카이브 파일 풀기 : tar xvf a.tar
  • 아카이브에 파일 추가하기 : tar uvf a.tar 6 (파일)

gzip - .gz 파일

  • 파일을 압축하는 명령이다. ( gzip [옵션][파일명] )
  • 파일을 압축한다 = 파일의 용량을 줄인다
  • 압축된 파일 내용보기 : **gzip -l [파일명]
  • 압축풀기 : gunzip [파일명]
  • 압축 풀고 파일 읽기 : zcat [파일명]

🔥 linux에서 .zip도 지원 -> 아카이브, 압축 동시을 동시에 작업해줌 (zip, unzip)

profile
전공 소개

0개의 댓글