[ 파일 아카이브와 압축 ]
파일 아카이브 : 파일을 묶어서 하나로 만드는 것
1. tar : 여러 파일이나 디렉토리를 하나의 아카이브 파일로 생성하기 위해 사용하는 명령어
c : 생성
x : 추출 ( 압축 해제 )
t : 파일의 내용을 출력
v : 처리하고 있는 파일의 정보를 출력한다.
* 현재 디렉토리에 있는 내용을 하나로 묶기 위해서는 부모 디렉토리로 가서 디렉토리 자체를 압축한다.
① cvf : 새로운 tar 파일 생성 & 아카이브 생성하기
tar cvf [ 아카이브명.tar ] [ 압축할 파일/디렉토리명 ]
* tar 파일임을 명시하기 위해서 확장자 명을 사용하는 경우도 존재한다.
② tvf : 파일 안에 무엇이 들었는지 확인 가능
tar tvf [ tar 파일명 ]
③ xvf : 압축되어있는 원본 파일 추출하기 ( 압축해제 )
tar xvf [ tar 파일명 ]
2. gzip : 파일을 압축 ( 확장자 명은 gz )
① gzip : 파일 압축
② gunzip 파일 압축 해제
* linux.tar.gz의 압축을 해제하기 위해서는 먼저 gz을 해제하고 tar를 해제해야한다.
[ 프로세스 관리하기 ]
프로세스 : 현재 시스템에서 실행 중인 프로그램
① 프로세스는 부모와 자식 관계가 있다.→ 부모 프로세스가 자식 프로세스를 생성한다.
② init(1번) 프로세스는 매우 중요하다.
③ 각 프로세스는 고유한 번호를 가지고 있다.
PID : 프로세스 ID
PPID : 부모 프로세스 ID
④ 데몬 프로세스 : 특정 서비스를 제공하기 위해 존재하며 리눅스 커널에 의해 실행된다.
→ 웹 서버, FTP 서버 같은 하나의 특별한 서비스를 위한 프로세스이다. 백그라운드로 동작하기 때문에 보이지 않는다.
1. 프로세스 목록 보기
① ps -ef : 현재 실행 중인 프로세스의 정보를 출력한다.
현재 실행 중인 프로세스는 매우 많기 때문에 ps -ef | more로 한페이지씩 넘기면서 확인이 가능하다.
-e : 시스템에서 실행 중인 모든 프로세스의 정보를 출력한다.
-f : 프로세스의 자세한 정보를 출력한다.
* ps : 프로세스 목록만 출력
2. 시그널
시그널 : 프로세스에 무언가 발생했음을 알리는 간단한 메시지
① 첫번째 putty에서 무한 루프 중인 프로그램을 실행시킨 상태에서 두번째 putty에서 접속하기
② 두번째 putty에서 ps -ef | grep [ 실행중인 프로그램 ]을 입력해서 실행중인 프로세스를 확인할 수 있다.
③ 첫번째 putty에서 실행 중인 프로세스를 중지한다면 두번째 putty서 실행중인 프로세스를 다시 확인했을 때
실행중이였던 프로세스는 보이지 않는다.
④ kill : 시그널을 보내는 명령 → 시그널을 받은 프로세스가 옵션에 따른 값을 수행한다.
* kill을 사용하기 위해서는 반드시 종료할 프로세스의 PID를 알아야한다.
kill -9 [PID]
-9 : 프로세스를 강제로 종료한다.
첫번째 putty에서 프로세스를 다시 작동시키고 두번째 putty에서 실행중인 프로세스의 PID를 확인 후 그 PID를
사용해서 프로세스를 강제로 종료시킬 수 있다.
3. grep
grep : 파일 내에 있는 특정 키워드를 찾는 명령어 ( 파일 내용 검색하기 )
grep [ 키워드 ] [ 파일명 ]
① grep SSL data : data 파일 안에 존재하는 SSL을 모두 찾기
② ps -ef | grep hello : ps -ef에서 hello 키워드가 들어있는 프로세스 찾기
* | ( 파이프라인 ) : 명령어를 연결하는 용도
* grep printf *.c : C 소스코드에 존재하는 모든 printf 함수 찾기
4. find
find : 파일 자체를 찾는 명령어
find [ 찾고 싶은 위치 ] -name [ 파일명 ] -print
찾고자하는 파일인 hello.c를 내가 원하는 위치인 .( 현재 위치 )로 부터 찾고, 찾은 다음 출력해서 보여달라는 의미
* find / -name hello.c -print : 위치가 /( 루트 )일 경우 리눅스 전체에서 찾으라는 의미 → 너무 많음
5. which
which : 명령어의 위치를 찾아주는 명령어
6. 포그라운드와 백그라운드 프로세스
백그라운드로 프로세스를 실행하기 위해서는 명령어 뒤에 &( 앤퍼센드 )를 붙여줘야 한다.
백그라운드로 실행중인 프로세스는 ctrl + c를 사용해서 프로세스를 종료시킬 수 없다.
→ kill -9 [PID]를 사용해서 실행 중단을 시켜야한다.
백그라운드로 프로세스를 실행시키는 것은 뒤에서 실행이 되는 것이기 때문에 키보드 입력을 받을 수 없다.
* PID 알아내기
① ps -ef | grep [ 실행중인 프로세스 ] : 찾고자하는 프로세스의 정보만 확인할 수 있다.
② ps -ef : 실행 중인 프로세스 전체의 정보를 확인할 수 있다.
'2CHAECHAE 학교생활 > OSNW실습' 카테고리의 다른 글
[ OS/NW 실습 ] 5주차 - 네트워크 OSI 모델 7 계층 구조 (0) | 2022.10.08 |
---|---|
[ OS/NW 실습 ] gcc, 오브젝트 파일, 언어 계층 구조 보충 (0) | 2022.10.08 |
[ OS/NW 실습 ] 4주차 - 패키지 관리, 소프트웨어 컴파일 (0) | 2022.09.30 |
[ OS/NW 실습 ] 3주차 - 리눅스 명령어 (0) | 2022.09.21 |
[ OS/NW 실습 ] 2주차 (0) | 2022.09.21 |