1. 시스템 모니터링
리눅스로 기본적인 로컬의 상태들을 확인하고 컨트롤 할 수 있어야 한다.
1-1) 명령어
uname
시스템과 커널의 정보를 확인
-a 옵션을 사용하면 커널 이름, 노드 이름, 커널 릴리즈, 커널 버전, 프로세서, 하드웨어 플랫폼, 운영 체제 정보 출력
top
전체 프로세스가 OS에 대해서 리소스를 어느정도 차지하고 있는가 출력
요약 영역에 나타나는 대표적인 내용은
시간,
유저,
로드 애버리지(Load Average), CPU가 수행하는 작업의 양을 순서대로 1분, 5분, 15분 간격의 평균값으로 표시
태스크(Tasks), ==process, 현재 프로세스들의 상태를 나타내주는 영역
CPU, CPU가 어떻게 사용되고 있는지 그 사용률, 유저 영역, 커널 여역, 우선순위 설정 등, 각 영역 값의 총 합은 100%
메모리(memory), 첫번째 줄은 RAM의 메모리 영역으로 Mem이라 표시되어있는 부분이며, 두번째 줄은 디스크를 메모
처럼 이용하는 Swap 메모리 영역. 일반적으로 Mem의 사용량이 가득 찼을때 Swap 메모리 영역을 사용
ifconfig
네트워크 기본 모니터링, 활성화 된 네트워크만 확인 가능
출력되는 정보 카테고리는 다음과 같다.
- enp0s3 : 네트워크 인터페이스
- flags : 네트워크 카드의 상태 표시
- mtu : 네트워크 최대 전송 단위(Maximum Transfer Unit)
- inet : 네트워크에 할당된 IP 주소
- netmask : 네트워크에 할당된 넷마스크 주소
- broadcast : 네트워크에 할당된 브로드캐스트 주소
- inet6 : 네트워크에 할당된 IPv6 주소
- prefixlen : IP 주소에서 서브 넷 마스크로 사용될 비트 수
- scopeid : IPv6의 범위. LOOPBACK / LINKLOCAL / SITELOCAL / 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 : 파일 경로 및 파일 이름
대표사용법
lsof -i :80 | awk 'FNR == 1 {next} {print $2}' | xargs kill
현재 시스템에서 활성화된 프로세스 중에서 포트 번호가 80인 프로세스를 찾아 강제 종료
netstat
network statistics, 현재 시스템에 연결된 네트워크 상태, 라우팅 테이블, 인터페이스 상태 확인
연결된 소켓과 수신 대기 중인 소켓을 찾을 수 있음.
옵션 종류
-n : IP, Port번호를 보여줍니다.
-a : 모든 네트워크상태를 보여줍니다.
-t : TCP 프로토콜만 보여줍니다.
-u : UDP 프로토콜만 보여줍니다.
-r : 라우팅 테이블 출력
-s : 프로토콜 별(IP, ICMP, TCP, UDP 등)로 통계를 보여줍니다.
-l : 대기중인 소켓 목록을 보여줍니다.
*** 참고문헌 ***
https://www.howtogeek.com/513003/how-to-use-netstat-on-linux/
'CS > 운영체제' 카테고리의 다른 글
[OS] 개념: 프로세스, 스레드, 데드락 (1) | 2024.10.30 |
---|---|
[Linux]환경변수&bash 스크립트 (0) | 2022.05.13 |
[Linux]nohup (0) | 2022.05.13 |
[Linux]입출력, 표준 스트림 (0) | 2022.02.11 |
[Linux]패키지&프로세스 (0) | 2022.02.10 |