Branding, UI Design Linux / 2025-05-22 / by 이주환

리눅스 주요 로그파일

리눅스 로그 파일 개요 및 주요 종류


리눅스 시스템은 안정성과 보안 유지를 위해 다양한 로그 파일을 생성하고 관리합니다. 이 로그들은 시스템 관리자에게 문제 해결, 성능 모니터링, 보안 감사 등에 필수적인 정보를 제공합니다.

대부분의 로그 파일은 /var/log 디렉토리에 저장됩니다.

📁 /var/log 디렉토리 개요

/var/log는 시스템의 모든 로그 파일이 저장되는 표준 위치입니다. 이 디렉토리에는 각 서비스/애플리케이션별 하위 디렉토리나 로그 파일이 존재합니다.

오래된 로그는 logrotate 서비스에 의해 자동으로 압축되거나 삭제되어 디스크 공간을 효율적으로 관리합니다.


📝 주요 시스템 로그 파일

  • /var/log/syslog (Debian/Ubuntu) 또는 /var/log/messages (CentOS/RHEL)
    • 내용: 시스템 전반적인 활동(커널 메시지, 데몬 알림, 네트워크 이벤트 등)을 기록합니다.
    • 특징: 확인 우선순위가 높은 로그 파일입니다.
    • 예시:
        May 22 01:00:01 hostname kernel: [1234.567890] EXT4-fs (sda1): mounted filesystem with ordered data mode.
        May 22 01:00:05 hostname systemd[1]: Starting Apache HTTP Server...
      
  • /var/log/auth.log (Debian/Ubuntu) 또는 /var/log/secure (CentOS/RHEL)
    • 내용: 사용자 인증 및 권한 부여 활동을 기록합니다.
    • 특징: 로그인 시도, sudo 사용, SSH 접속 등 보안 관련 정보가 담겨 있습니다.
    • 예시:
        May 22 01:05:01 hostname sshd[1234]: Accepted password for user1 from 192.168.1.100 port 54321 ssh2
        May 22 01:05:10 hostname sshd[9876]: Failed password for invalid user from 203.0.113.5 port 2222 ssh2
      
  • /var/log/kern.log
    • 내용: 커널 메시지, 드라이버 오류, 하드웨어 문제 등을 기록합니다.
    • 특징: 낮은 수준의 시스템 문제 진단에 유용합니다.
    • 예시:
        May 22 01:10:01 hostname kernel: [2345.678901] usb 1-1: new full-speed USB device number 2 using ohci-hcd
      
  • /var/log/dmesg
    • 내용: 시스템 부팅 시 출력된 모든 커널 메시지를 담고 있습니다.
    • 특징: 하드웨어 감지, 드라이버 로딩 확인에 유용합니다.
    • 확인: dmesg | less 또는 dmesg -H
  • /var/log/boot.log
    • 내용: 부팅 시 실행된 서비스의 상태를 기록합니다.
    • 특징: 서비스가 정상적으로 시작되었는지 여부를 확인할 수 있습니다.
    • 예시:
        [   OK   ] Started OpenSSH server.
        [FAILED] Failed to start Apache HTTP Server.
      
  • /var/log/dpkg.log (Debian/Ubuntu)
    • 내용: 패키지 설치/제거/업데이트 기록을 담고 있습니다.
    • 특징: 패키지 변경 이력을 추적할 수 있습니다.
    • 예시:
        2025-05-22 01:15:01 install apache2:amd64 <none> 2.4.52-1ubuntu4.1
      

🌐 주요 애플리케이션 및 서비스 로그 파일

  • Apache 웹 서버
    • /var/log/apache2/access.log: 클라이언트 요청 기록 (트래픽 분석에 유용)
    • /var/log/apache2/error.log: 서버의 오류 및 경고 기록
    • 예시 (access.log):
        192.168.1.10 - - [22/May/2025:01:20:00 +0900] "GET /index.html HTTP/1.1" 200 1234 "-" "Mozilla/5.0"
      
    • 예시 (error.log):
        [Thu May 22 01:21:00.123456 2025] [core:error] ... File does not exist: /var/www/html/nonexistent.html
      
  • Nginx 웹 서버
    • /var/log/nginx/access.log
    • /var/log/nginx/error.log
    • 예시 (access.log):
        192.168.1.10 - - [22/May/2025:01:25:00 +0900] "GET /api/data HTTP/1.1" 200 567 "-" "PostmanRuntime/7.29.0"
      
    • 예시 (error.log):
        2025/05/22 01:26:00 [error] ... open() "/usr/share/nginx/html/favicon.ico" failed
      
  • MySQL/MariaDB 데이터베이스
    • /var/log/mysql/error.log
    • 내용: DB 시작/종료, 쿼리 오류, 경고 등을 기록합니다.
    • 예시:
        2025-05-22T01:30:00.123456Z 0 [System] [Server] /usr/sbin/mysqld starting as process 1234
      
  • 메일 서버 (Postfix, Dovecot 등)
    • /var/log/mail.log
    • 예시:
        May 22 01:35:01 hostname postfix/smtpd[1234]: connect from unknown[192.168.1.100]
      

📌 기타 중요한 로그 파일

  • /var/log/lastlog
    • 내용: 사용자의 마지막 로그인 시간을 기록하는 바이너리 파일입니다.
    • 확인: lastlog 명령어로 확인합니다.
  • /var/log/wtmp/var/run/utmp
    • wtmp: 로그인/로그아웃 기록을 담고 있으며, last 명령어로 확인합니다.
    • utmp: 현재 로그인한 사용자를 기록하며, who, w 명령어로 확인합니다.

🔍 로그 확인 팁

  • tail -f /var/log/syslog: 실시간으로 로그를 확인할 때 사용합니다.
  • grep ssh /var/log/auth.log: /var/log/auth.log 파일에서 “ssh“라는 특정 키워드를 검색합니다.
  • less /var/log/syslog: 파일의 전체 내용을 페이지 단위로 확인할 때 유용합니다.

✅ 마무리

리눅스 로그는 시스템의 건강 상태를 파악하고, 문제 해결의 실마리를 제공하는 중요한 도구입니다. 주기적으로 로그를 점검하고, 명령어를 활용해 분석하는 습관은 좋은 시스템 관리자의 시작입니다.

Tags:
Comments