2025-11-30

오늘 배운 것

Linux

1. 프로세스 / 스레드

개념

  • 프로세스: 실행 중인 프로그램. 독립된 메모리 공간 보유.
  • 스레드: 프로세스 내부의 실행 단위로 메모리 대부분을 공유.
  • Context Switching: CPU가 다른 프로세스로 전환되는 과정.

면접 질문

  • ps, top, htop 사용 목적
  • CPU 100% 프로세스 원인 분석 절차
  • 스레드 개수 조회: ps -T -p <pid>
  • 시그널 차이: SIGTERM vs SIGKILL

2. 프로세스 관리 명령어

  • ps aux: 전체 프로세스 조회
  • top / htop: 시스템 리소스 실시간 모니터링
  • kill -9 PID: 프로세스 강제 종료
  • nice / renice: 프로세스 우선순위 조정
  • systemctl: 서비스 관리
  • OOM 로그 확인: /var/log/messages, dmesg | grep -i kill

3. 파일 시스템 / 디렉토리 구조

주요 디렉토리

  • /etc: 시스템 설정 파일
  • /var/log: 시스템 및 애플리케이션 로그
  • /usr/bin, /usr/sbin: 실행 파일
  • /home: 사용자 홈 디렉토리
  • /proc: 프로세스 및 커널 정보 제공하는 가상 파일
  • /opt: 별도 설치 소프트웨어 위치

디스크 관리

  • df -h: 전체 디스크 사용량
  • du -sh: 특정 디렉토리 용량
  • inode 확인: df -i

면접 질문

  • 디스크 100% 사용 시 대응 절차
  • logrotate 개념과 설정 이유

4. 권한 / 퍼미션 / 링크

퍼미션

  • rwx 의미
  • 644: 읽기/쓰기 + 읽기
  • 755: 읽기/쓰기/실행 + 읽기/실행

링크

  • Hard Link: 같은 inode 공유
  • Soft Link: 경로 기반 링크 (inode 다름)

면접 질문

  • 실행 권한 오류 대처
  • 심볼릭 링크 깨지는 이유

5. 네트워크 명령어

  • ping: 네트워크 연결 확인
  • curl: API 호출 테스트
  • ss -lntp: 포트 listening 상태 확인
  • lsof -i :8080: 특정 포트 점유 프로세스 확인
  • netstat -anp: 네트워크 연결 정보(구버전)

면접 질문

  • 서버 접속 불가 시 진단 순서
  • 포트 충돌 문제 해결 프로세스

6. 메모리 / CPU 분석

  • free -m: 메모리 사용량
  • vmstat: CPU/메모리/IO 확인
  • top: 리소스 문제 확인

면접 질문

  • 메모리 누수 확인 경로: /proc/<pid>/smaps
  • Java 기반 서버 CPU 스파이크 분석 흐름

    (top → PID → ps -Lf → jstack)


7. 로그 관리

주요 로그 파일

  • /var/log/messages
  • /var/log/syslog
  • /var/log/auth.log

모니터링

  • tail -f file.log
  • tail -f file | grep ERROR

면접 질문

  • 로그 폭증으로 인한 장애 사례와 대응법
  • logrotate 기본 방식

8. 서비스 관리 (systemd)

  • systemctl start/stop/status xxx.service
  • systemctl enable: 부팅 시 자동 실행
  • journalctl -u xxx.service: 서비스 로그 확인
  • systemctl daemon-reload: 설정 변경 반영

면접 질문

  • nohup, &, systemd의 차이
  • 백그라운드 프로세스가 죽는 이유와 해결 방법

9. 쉘 / 환경 변수

개념

  • bash, zsh 등 쉘 종류
  • 환경 변수 파일
    • ~/.bashrc
    • ~/.bash_profile
    • /etc/profile

면접 질문

  • 환경 변수 적용되지 않을 때 점검 순서
  • 로그인 쉘/비로그인 쉘 차이

10. 리눅스 부하 분석 흐름

  1. CPU 급증 → top → 해당 PID → 스레드 수 → jstack
  2. 메모리 부족 → free → OOM 로그 → heap dump
  3. 포트 충돌 → ss/lsof → 프로세스 정리
  4. 디스크 FULL → df → du → 로그 삭제 또는 압축
  5. IO 병목 → vmstat/iostat 분석

results matching ""

    No results matching ""