학습 목표
관리자로서의 리눅스 ~ 자동화
- 시스템 관리자가 하는 일을 이해할 수 있다.
- 사용자 및 루트 권한에 대해 이해하고, 사용자 및 그룹 관리를 할 수있다.
- 파일의 권한을 변경하고 관리할 수 있다.
- 프로그램과 프로세스의 차이를 이해하고, 프로세스를 확인/종료할 수 있다.
- 백그라운드 프로세스와 서비스를 이해하고, 관리할 수 있다.
- cron 및 bash 스크립트를 이용해서 자동화를 할 수 있다.
시스템 모니터링
- uname: 시스템과 커널의 정보
- -a: 커널 이름, 노드 이름, 커널 릴리즈, 커널 버전, 프로세서, 하드웨어 플랫폼, 운영 체제 정보를 알 수 있음
- top: 운영체제 작업 내역 모니터링
- 로드 애버리지(Load Average): CPU가 수행하는 작업의 양을 순서대로 1분, 5분, 15분 간격의 평균값으로 표시
- 태스크(Task/Process): 현재 프로세스들의 상태를 나타내주는 영역
- 메모리 사용량: 첫 번째 줄은 Mem으로 RAM의 메모리 영역, 두 번째 줄은 디스크를 메모리처럼 이용하는 Swap 메모리 영역
- ifconfig: 네트워크 기본 모니터링
- enp0s3: 네트워크 인터페이스
- flags: 네트워크 카드의 상태 표시
- mtu: 네트워크 최대 전송 단위(Maximum Transfer Unit)
- inet: 네트워크에 할당된 IP 주소
- netmask: 네트워크에 할당된 넷마스크 주소
- broadcast: 네트워크에 할당된 브로드캐스트 주소
- inet6: 네트워크에 할당된 IPv6 주소
- prefixlen: IP 주소에서 서브 넷 마스크로 사용될 비트 수
- scopeid: IPv6의 범위 LOOPBACK / LINKLOCAL / SITELCAL / COMPATv4 / GLOBAL
- ether: 네트워크 인터페이스의 하드웨어 주소
- RX packets: 받은 패킷 정보
- TX packets: 보낸 패킷 정보
- collision: 충돌된 패킷 수
- Interrupt: 네트워크 인터페이스가 사용하는 인터럽트 번호
- lsof: list open files열린 파일 목록 출력
- COMMAND: 실행 명령어
- PID: 프로세스 ID
- USER: 실행한 사용자
- FD: File Descriptor, 파일의 종류
- cwd: current working directory
- rtd: root directory
- mem: memory-mapped file
- txt: program text (code and data)
- TYPE: 파일 종류
- DIR: 디렉토리
- REG: Regular File
- CHR: Character Special File
- unix: UNIX domain socket
- DEVICE: 장치 번호
- SIZE/OFF: 파일의 크기나 오프셋
- NODE: 노드 번호
- NAME: 파일 경로 및 파일 이름
- netstat: network statistics, 네트워크 상태 모니터링
- -n: IP, Port 번호를 보여줌
- -a: 모든 네트워크 상태를 보여줌
- -t: TCP 프로토콜만 보여줌
- -u: UDP 프로토콜만 보여줌
- -r: 라우팅 테이블 출력
- -s: 프로토콜(IP, ICMP, TCP, UDP 등) 별로 통계를보여줌
- -l: 대기중인 소켓 목록을 보여줌
+)
- awk: 필드 단위로 패턴을 검색하고 조작하는 명령어
- 예시) 백그라운드에서 실행 중인 프로세스 중 PPID가 23197인 프로세스의 ID를 찾을 때
- ps -ef | awk '{print $2, $3}' | grep 23197
- 예시) 백그라운드에서 실행 중인 프로세스 중 PPID가 23197인 프로세스의 ID를 찾을 때
- &와 &&차이
- &: 백그라운드로 동작시킬 때 사용
- &&: 앞의 명령어가 실행되었을 때 성공한 경우, 다음 명령어 실행
- ; 성공 여부와 상관 없이 다음 명령어 실행
- 예시) A와 B 작업을 모두 백그라운드 방식으로 실행하고, 결과물을 따로 저장하고 싶을 때
- nohup A & B &> nohup2.out
'Code States > TIL' 카테고리의 다른 글
[0315] 웹서비스 개발 기초 - 클라이언트-서버 아키텍처 (0) | 2023.03.15 |
---|---|
[0314] (페어) 리눅스 운영체제 - 리눅스 실습 (0) | 2023.03.14 |
[0313] 리눅스 운영체제 - 자동화 (0) | 2023.03.14 |
[0313] 리눅스 운영체제 - 서비스 관리 (1) | 2023.03.14 |
[0313] 리눅스 운영체제 - 프로세스 관리 (1) | 2023.03.14 |