April 09, 2022
POSIX: 운영체제들간의 호환성을 위해서, UNIX에 기반해서 IEEE에서 standard operating system interface와 그 환경을 정의한 것
‘모두의 리눅스’는 정말 자세하다. 그것을 뒷받침하는 요소로는 잘 짜여진 목차와 내부의 설명을 들 수 있는데, 그에 비해 두께는 그리 두껍지 않아 겁먹지 않고 읽을 수 있다.
목차
크게 세 부분으로 나뉜다.
자세한 설명
첨부한 이미지처럼 각각의 커맨드와 그 결과물에 대해서 매우 자세한 설명이 나와있어서 리눅스에 대해 처음 학습해보는 사람에게 아주 도움이 될 것이라고 생각했다.
개인적으로는 ‘이 명령어 입력하면 왜 이런 게 나오지?‘라는 것들에 대해 꼭 필요한 설명들을 자세히 해주는 느낌이어서 정말 좋았다.
아래는 제가 책을 읽으면서 새롭게 알게 된 것, 기존에 헷갈렸던 것, 기록해놓고 나중에도 보고 싶은 것들을 정리한 것입니다.
책 내용의 극히 일부분만이 담겨 있습니다.
shell: 커널과 사용자를 이어주는 인터페이스
terminal VS shell
단축키
각 디렉토리 역할
/bin: 명령어들의 실행 파일이 여기에 있음
/usr: 설치한 애플리케이션 실행 파일, 문서 등이 있음
i: 입력 시작 → 입력 → esc → :wq(저장 후 종료) or :q!(저장 안 하고 종료)
chmod
숫자 모드: 한번에 유저, 유저 그룹, 기타 사용자 설정까지 변경할 수 있음
r:4, w:2, x:1
$ touch test.txt test1.txt
$ ll
-rw-r--r-- 1 sunmin staff 0B 4 9 12:09 test.txt
$ chmod u+x test.txt #기호모드#텍스트파일이어서 실행은 안되지만 예시로 사용
-rwxr--r-- 1 sunmin staff 0B 4 9 12:09 test.txt
$chmod 755 test1.txt #숫자모드
-rwxr-xr-x 1 sunmin staff 0B 4 9 12:21 test1.txt프로세스: 커널 기준에서의 할 일 단위(메모리 위에 올려진 프로그램)
잡: 셸 기준에서의 할 일 단위(셸의 커맨드 라인에 있는 한 줄)
종료 방법
$ ll | cat -n #생성되는 프로세스는 2개, 잡은 1개 kill은 잡이나 프로세스 종료만을 위한 것이 아닌 시그널을 전송하는 명령어
1번부터 쭉 있고, 이 중 9번 SIGKILL만큼은 프로세스에 전달되지 않고, 커널이 바로 프로세스 강제 종료
메타 문자: 특별한 의미로 사용되는 문자
docker ps | grep text #docker ps 의 결과를 넘겨 받아(redirection) → 그 중 text가 들어간 것을 찾는다(grep)출처