Linux의 Syslog 시스템 및 로그. Linux 시스템 로그(로깅 관리) Ubuntu 로깅

이 가이드를 시작하기 전에 Linux에 로그인하고 파일을 직접 보고 이 가이드를 따르는 것이 주제를 배우고 기억하는 가장 좋은 방법이기 때문에 권장됩니다.

시스템이 원활하게 실행될 때 로그 파일에 대해 알아보고 로그 파일에 대한 이러한 이해가 나중에 발생할 수 있는 문제를 성공적으로 진단하고 수정하는 데 어떻게 도움이 되는지 알아보십시오.

그리고 마지막으로, ' 리눅스 로그 파일'는 상당히 광범위한 주제이며 한 기사에서 완전히 다루지는 않을 것입니다. 이 문서는 아마도 일반적인 가이드 역할만 할 것입니다. 시스템에 설치된 각 응용 프로그램에는 고유한 로깅 메커니즘이 있습니다. 응용 프로그램에 대한 특정 정보가 필요할 때마다 응용 프로그램의 설명서를 찾는 것이 가장 좋습니다.

일반 로그 파일

거의 모든 Linux 시스템의 일반 표준으로 로그 파일은 /var/log 디렉토리에서 찾을 수 있습니다. 나중에 시스템에 설치할 수 있는 다른 응용 프로그램은 여기에 로그 파일을 남길 것입니다. 시스템에 로그인한 후 다음 명령을 입력하십시오.

Ls -l /var/log

이 디렉토리의 내용을 보려면.

/var/log/메시지– 시스템 시작 중 메시지를 포함하여 대부분의 일반 시스템 메시지가 여기에 기록됩니다.
/var/로그/크론– cron 데몬 메시지가 여기에 기록됩니다. 작업이 생성되고 중지되며 오류 메시지가 표시됩니다.
/var/로그/메일로그또는 /var/log/mail.log– 서버에서 실행 중인 메일 서버의 정보를 등록합니다.
/var/log/wtmp– 모든 항목 및 종료 기록을 포함합니다.
/var/로그/btmp– 로그인 시도 실패 기록.
/var/실행/utmp– 각 사용자의 상태에 대한 실제 로그인을 기록합니다.
/var/log/dmesg– 링 버퍼 코어에 대한 매우 중요한 메시지가 포함되어 있습니다. 인간의 관점에서 이것은 핵이 회전할 때 여기에 모든 정보를 쓴다는 것을 의미합니다. 팀 dmesg이 파일의 메시지를 보는 데 사용할 수 있습니다.
/var/로그/보안– 보안 관련 메시지가 여기에 저장됩니다. 여기에는 SSH 데몬의 메시지, 암호 오류, 존재하지 않는 사용자 등이 포함됩니다.
/var/log/mariadb– MariaDB가 시스템에 설치된 경우 기본적으로 여기에서 로그를 삭제합니다.
/var/로그/mysql– 데이터베이스가 설치된 경우 이것이 기본 데이터 입력 디렉토리입니다.

로그 파일 보기 및 관리

Linux 데몬의 기본 등록은 rsyslogd 프로세스이며 해당 구성은 다음 위치에 있습니다. /etc/rsyslog.conf.

모든 일반 텍스트 로그 파일의 경우 cat 명령을 사용하여 로그를 볼 수 있습니다. 그러나 로그 파일이 매우 크면 로그의 마지막 부분만 표시할 수 있는 tail 명령을 사용할 수 있습니다.

파일의 마지막 500개 항목을 보려면 다음 명령을 입력하십시오.

테일 -n 500 /var/log/messages

로그를 실시간으로 모니터링하는 경우 tail -f는 입력된 메시지를 추적하는 매우 유용한 명령이기도 합니다. 이는 메일 흐름 및 메일 배달 오류 문제를 해결할 때 특히 유용합니다.

테일 -f /var/log/maillog

일부 Linux 로그는 이러한 로그를 보기 위해 특별히 조정된 다른 응용 프로그램에서 구문 분석해야 하는 바이너리 파일과 같습니다. 이러한 로그는 /var/log/wtmp /var/log/btmp 및 /var/run/utmp 에 저장됩니다.

/var/log/wtmp의 내용을 보려면 다음을 사용하십시오.
/var/log/btmp의 내용을 보려면 다음을 사용하십시오. lastb
/var/run/utmp의 내용을 보려면 다음을 사용하십시오.

cpanel 특정 로그 파일

아파치 로그 파일:

/usr/local/apache/logs/ - 일반 로그.
/usr/local/apache/domlogs/ - 도메인 특정 로그.

Exim 로그 파일:

/var/log/exim_mainlog
/var/log/exim_rejectlog

cpanel 로그 파일:

/usr/local/cpanel/logs/ - 이 위치의 모든 cpanel 관련 로그.

DirectAdmin 특정 로그 파일

DirectAdmin 로그 파일

/var/log/directadmin/ - DirectAdmin 관련 로그.

로그 파일

/var/log/httpd/ - Apache 웹 서버가 표준 디렉토리에 로그인했습니다.
/var/log/httpd/domains/ - 다른 모든 도메인의 경우 로그는 이 하위 디렉터리에 있습니다.

로그 파일

/var/log/proftpd/ - ProFTPd를 사용하는 경우.
/var/log/pureftpd.log - PureFTPd를 사용하는 경우.

Exim 로그 파일

/var/log/exim/ – 이 디렉터리에 있는 Exim 메일 전송 에이전트의 로그입니다.

로그 파일

/var/lib/mysql/server.hostname.com.err - 관련 오류에 대한 디렉토리 로깅입니다.

로그 파일

/var/log/yum.log - Yum 패키지 관리자를 기록합니다.
/var/log/httpd - /RedHat CentOS 기반 시스템에서 Apache 웹 서버가 기본적으로 로그를 저장하는 위치입니다.

로그 파일

/var/log/apache2/ - Ubuntu 시스템에서 Apache 웹 서버 로그는 이 디렉토리에 저장됩니다.
/var/log/apt/ - Ubuntu의 패키지 관리 로그입니다.

파일 이름 앞에 파이프 문자(|)를 사용하면 다음을 사용할 수 있습니다. fifo (선입선출,선입선출) 또는 명명된 파이프메시지 수신자로. syslogd를 시작(또는 재시작)하기 전에 mkfifo 명령을 사용하여 fifo를 생성해야 합니다. 때로는 fifo가 디버깅에 사용됩니다.

터미널 및 콘솔

/dev/console과 같은 터미널.

원격 기계

메시지를 다른 호스트로 전달하려면 호스트 이름 앞에 at 기호(@)를 붙입니다. 메시지는 수신 호스트에서 전달되지 않습니다. (이 할당이 파일의 클라이언트 및 서버에서 작동하려면 /기타/서비스줄을 써야 합니다 시스템 로그 514/udp, 그리고 UTP 포트 514를 엽니다)

사용자 목록

메시지를 수신하는 사용자의 쉼표로 구분된 목록입니다(사용자가 로그인한 경우). 여기에는 종종 루트 사용자가 포함됩니다.

등록된 모든 사용자

wall 명령을 사용하여 등록된 모든 사용자에게 알리려면 별표 문자(*)를 사용하십시오.

간단한 예 syslog.conf:

# 모든 커널 메시지를 콘솔에 출력합니다. #kern.* /dev/console # 이메일을 제외한 정보 수준 이상의 모든 로그와 # 인증 메시지 및 cron 데몬 메시지를 기록하지 않습니다! *.info;mail.none;authpriv.none;cron.none /var/log/messages # 기밀 인증 정보가 포함된 # 메시지를 수준에 관계없이 별도의 파일에 기록합니다. authpriv.* /var/log/secure # 메일 시스템의 모든 메시지도 별도의 파일에 기록됩니다. mail.* -/var/log/maillog # 스케줄러 메시지를 파일에 기록 /var/log/cron cron.* /var/log/cron # 모든 시스템 사용자가 긴급 메시지를 즉시 수신해야 함 # 모든 시스템 사용자 *.emerg * # 메시지 저장 크리티컬 레벨 이상의 뉴스를 별도의 파일로. uucp,news.crit /var/log/spooler # 부트 메시지를 boot.log에 저장 local7.* /var/log/boot.log

많은 구성 파일과 마찬가지로 구문은 다음과 같습니다.

  • #으로 시작하는 줄과 빈 줄은 무시됩니다.
  • * 기호는 모든 범주 또는 모든 우선 순위를 나타내는 데 사용할 수 있습니다.
  • 특수 키워드 none은 이 작업에 대해 이 범주에 대한 로깅을 수행하지 않아야 함을 나타냅니다.
  • 파일 이름 앞의 하이픈(예: 이 예의 -/var/log/maillog)은 각 쓰기 후에 로그가 동기화되지 않아야 함을 나타냅니다. 시스템 충돌 시 정보가 손실될 수 있지만 동기화를 비활성화하면 성능이 향상됩니다.

구성 파일의 구문에서 우선 순위 앞에 놓을 수 있습니다. 징후!조치를 적용해서는 안 됨을 보여주기 위해 이 수준 이상. 마찬가지로 우선 순위를 접두사로 붙일 수 있습니다. 기호 =규칙이 해당 수준에만 적용됨을 나타내거나 != 규칙이 이 수준을 제외한 모든 수준에 적용됨을 보여줍니다. 다음은 몇 가지 예입니다(man syslog.conf에서 더 많은 예를 찾을 수 있음).

# 모든 커널 메시지를 /var/log/kernel로 보냅니다. # 원격 sysloger 시스템 및 콘솔에 모든 중요 메시지 및 상위 메시지를 보냅니다. # 모든 정보, 알림 및 경고 메시지를 /var/log/kernel-info로 보냅니다. # kern.* /var/log/kernel kern.crit @sysloger kern .crit /dev/console kern.info;kern.!err /var/log/kernel-info # 정보 수준을 제외한 모든 메일 시스템 메시지를 /var/log/mail로 보냅니다. mail.*;mail.!=info /var/log/mail

다이어그램에서 가능한 한 명확하게 syslogd의 작업을 보여주려고 노력했습니다.

syslogd 데몬 시작

로깅 데몬의 시작은 스크립트를 통해 시스템 초기화 단계에서 시작됩니다. /etc/rc.d/init.d/syslog그러나 시작 옵션을 설정하기 위해 이 스크립트를 수정할 필요가 없습니다. 버전 7.2부터 시작 옵션은 별도의 구성 파일에서 읽습니다. /etc/sysconfig/syslog(/etc/default/syslog데비안에서).

다음은 가능한 몇 가지입니다. syslogd 데몬 시작 매개변수:

  • -a /폴더/소켓- 추가 청취 소켓 지정(미리 소켓을 만드는 것을 잊지 마십시오)
  • -디- 디버그 모드. 이 경우 데몬은 백그라운드로 들어가지 않고 현재 터미널에 모든 메시지를 발행합니다.
  • -에프 구성 파일 이름. 기본 /etc/syslog.conf 대신 사용할 대체 구성 파일의 이름을 지정합니다.
  • -l 호스트 목록- 전체 도메인 이름(FQDN - Full Qwalified Domain Name)으로 이름을 작성하면 안 되는 호스트 목록 설정
  • -m분- 이 옵션 없이 실행하면 sysklogd는 20분마다 범주 표시(타임스탬프)의 메시지를 기록합니다. -m 옵션을 사용하면 표시 사이의 간격을 변경하거나 이러한 메시지 발행을 완전히 중지할 수 있습니다.
  • -p 소켓- 대체 UNIX 소켓 설정(기본 청취 /dev/log 대신)
  • -아르 자형- 원격 호스트로부터 메시지를 수신할 수 있는 권한
  • -엑스- DNS 서버와 동일한 호스트에서 작업할 때 정지를 방지하기 위해 주소로 호스트 이름을 결정하는 것을 금지합니다.
  • -V- 버전 표시 및 작업 완료

syslogd 데몬을 시작한 후 상태 파일이 생성됩니다. /var/lock/subsys/syslog길이가 0이고 프로세스 ID가 있는 파일 /var/run/syslogd.pid.

명령으로
kill -SIGNAL `cat /var/run/syslogd.pid`

보낼 수 있습니다 syslogd 데몬다음 신호 중 하나: SIGHUP- 데몬 재시작; 시그텀- 작업 완료; SIGUSR1- 디버그 모드를 활성화/비활성화합니다.

실제로 두 개의 로깅 데몬이 시스템에서 시작됩니다. 시스템 로그그리고 klogd. 두 데몬 모두 패키지에 포함되어 있습니다. 시스템 로그.

klogd 데몬발생하는 로깅 이벤트에 대한 책임 시스템 코어. 별도의 klogd 데몬이 필요한 이유는 커널이 표준 syslog 기능을 사용할 수 없기 때문입니다. 표준 C 라이브러리(syslog 함수가 포함된 라이브러리 포함)는 일반적인 응용 프로그램. 커널에도 로깅 기능이 필요하므로 응용 프로그램에서 사용할 수 없는 자체 라이브러리가 포함되어 있습니다. 따라서 커널은 자체 메시지 생성 메커니즘을 사용합니다.

klogd 데몬이러한 메시지의 처리를 구성하도록 설계되었습니다. 원칙적으로 이러한 메시지를 파일에 쓰는 것과 같이 syslogd와 독립적으로 자체적으로 이 처리를 수행할 수 있지만 대부분의 경우 커널의 모든 메시지가 동일한 syslogd로 전달되는 기본 klogd 설정이 사용됩니다. 악마.

자동 회전(채워진 파일 업데이트) 및 로그 보관

시간이 지남에 따라 특히 서비스가 집중적으로 실행될 때 로그 파일이 커지는 경향이 있습니다. 따라서 로그의 크기를 제어할 수 있어야 합니다. 이것은 다음을 사용하여 수행됩니다. 로그 회전 명령, 일반적으로 수행되는 크론 데몬. 다음 기사에서 cron 작업에 대해 이야기하겠습니다. 주요 목표 로그 회전 명령주기적으로 로그를 백업하고 새로운 클린 로그를 생성하는 것입니다. 여러 세대의 로그가 저장되며 마지막 세대 로그가 만료되면 보관(압축)할 수 있습니다. 결과는 예를 들어 보관 담당자에게 메일로 보낼 수 있습니다.

로그의 회전 및 보관 순서를 결정하려면 다음을 사용하십시오. 구성 파일 /etc/logrotate.conf . 다른 로그의 경우 매일, 매주 또는 매월과 같이 다른 주기를 설정할 수 있으며 누적된 세대 수를 조정할 수 있을 뿐만 아니라 아카이브 복사본을 아카이브 관리자에게 보낼지 여부를 지정할 수 있습니다. 언제. 아래에 표시됩니다 예 /etc/logrotate.conf 파일:

# 먼저 기본 매개변수 설정(글로벌 옵션) # 매주 로그 파일 업데이트 # 지난 4주 동안의 로그 아카이브 저장 rotate 4 # 회전 후 새(빈) 파일 생성(업데이트) create # 저장된 파일이 압축된 경우 주석 해제 # compress # 지정된 디렉토리에서 회전 설정 활성화 include /etc/logrotate.d # wtmp 또는 btmp를 저장하지 않음 -- 로그 데이터 회전 설정은 다음과 같습니다. /var/log/wtmp ( missingok monthly create 0664 root utmp rotate 1 ) / var/log/btmp ( missingok monthly create 0664 root utmp rotate 1 ) # 특정 syslog는 아래에서 구성할 수 있습니다.

전역 옵션은 처음에 배치됩니다. 파일 logrotate.conf. 더 구체적인 것이 다른 곳에서 지정되지 않는 한 기본적으로 사용됩니다. 이 예에서는 로그가 회전됩니다. 주간및 백업은 다음을 위해 보관됩니다. 주. 저널이 순환되는 즉시 이전 저널 대신 새 저널이 자동으로 생성됩니다. logrotate.conf 파일다른 파일의 사양이 포함될 수 있습니다. 따라서 디렉토리의 모든 파일이 포함됩니다. /etc/logrotate.d.

이 예에는 다음에 대한 특수 규칙도 포함되어 있습니다. /var/log/wtmp그리고 /var/로그/btmp(시스템 진입 시도의 성공 및 실패에 대한 정보 저장), 회전은 매월 발생합니다. 파일이 없으면 오류 메시지가 표시되지 않습니다. 새 파일이 생성되고 하나의 백업만 유지됩니다.

이 예에서는 백업이 마지막 세대에 도달하면 이를 어떻게 처리할지 정의되어 있지 않기 때문에 삭제됩니다.

로그 백업또한 로그가 특정 크기에 도달하면 생성될 수 있으며 명령 세트에서 스크립트를 생성하여 백업 작업 전후에 실행할 수 있습니다. 예:

/var/log/messages ( 5 메일 회전 [이메일 보호]크기 100k 사후 회전 /usr/bin/killall -HUP syslogd endscript )

이 예에서 회전 /var/log/메시지 100KB 크기에 도달하면 생성됩니다. 5개의 백업이 누적되며 가장 오래된 백업이 만료되면 [이메일 보호] postrotate 명령어에는 HUP 신호를 전송하여 회전이 완료된 후 syslogd 데몬을 다시 시작하는 스크립트가 포함되어 있습니다. endscript 명령 단어는 스크립트를 종료하고 사전 회전 스크립트가 있는 경우에도 필요합니다. 자세한 내용은 logrotate 매뉴얼 페이지를 참조하십시오.

옵션, 구성 파일에서 설정 logrotate.conf:

  • 압박 붕대| 압축 없음(이전 버전은 gzip으로 압축하거나 압축하지 않음)
  • 압축 cmd(압축 프로그램 지정, 기본값은 gzip)
  • 압축 해제 cmd(압축 풀기 설정, 기본값은 ungzip)
  • 압축 텍스트(압축 파일의 접미사 설정)
  • 압축 옵션(압축 프로그램의 매개변수 설정, 기본값은 "-9", 즉 gzip의 최대 압축)
  • 복사 자르기| nocopytruncate(일반적으로 이전 버전의 이름이 바뀌고 새 버전의 로그가 생성됩니다. 이 옵션을 사용하면 logrotate는 로그를 새 파일에 복사한 다음 이전 파일을 자릅니다. 로그를 생성하는 프로그램이 닫는 방법을 모르는 경우에 사용됩니다. 그것; 복사와 잘림 사이의 간격에 만들어진 레코드는 손실됩니다; 로깅 프로그램이 추가 모드를 사용하는 대신 내부 포인터를 사용하여 파일에 쓰기만 하면 도움이 될까요?)
  • 만들다[권한 소유자 그룹] | nocreate(이전 로그 버전의 이름을 바꾼 직후와 postrotate를 호출하기 전에 지정된 속성으로 새 로그가 생성됩니다. 권한은 chmod.2에서와 같이 8진수로 설정됩니다. 속성이 지정되지 않은 경우 다음에서 가져옵니다. 이전 로그)
  • 일일(시리즈의 버전 변경은 매일 발생함)
  • 지연 압축| nodelaycompress(일부 프로그램은 로그를 즉시 닫지 않으므로 다음 주기까지 압축을 연기해야 ​​합니다.)
  • 오류이메일(버그 보고 대상)
  • 확대접미사(압축 접미사 전에 회전하는 동안 파일 이름에 추가되는 접미사 지정)
  • ifempty| 공고(파일이 비어 있어도 버전 변경, 기본값)
  • 포함하다파일 이름| 디렉토리 이름(지정된 디렉토리의 파일 또는 모든 파일을 텍스트로 대체합니다. 하위 디렉토리, 특수 파일 및 제외 목록의 접미사가 있는 파일은 포함되지 않습니다. 섹션 내에서 사용할 수 없습니다.)
  • 우편주소| 노마일(버전 변경으로 인해 이전 저널을 삭제해야 하는 경우 지정된 주소로 전송)
  • 메일 퍼스트(로그의 삭제된 버전이 아닌 첫 번째 로그를 보냅니다)
  • 메일라스트(삭제할 로그 버전 전송, 기본값)
  • 미싱곡| 노미싱곡(로그가 누락된 경우 오류 메시지를 보내지 않음)
  • 월간 간행물(매월 버전 변경)
  • 올드디어예배 규칙서| noolddir(버전 변경 시 지정된 디렉토리로 로그 이동, 동일한 물리적 장치에 있어야 함)
  • 후회전(끝 스크립트 행까지의 모든 추가 행은 버전 변경 프로세스 후 쉘 명령으로 실행됨)
  • 사전 회전(끝 스크립트 행까지의 모든 추가 행은 버전 변경 프로세스 전에 실행됨)
  • 회전숫자(유지할 이전 버전 수, 0인 경우 없음)
  • 크기바이트(로그 크기가 지정된 수를 초과하면 버전 변경이 발생합니다. 접미사 "k" - 킬로바이트 - 및 "M" - 메가바이트를 사용할 수 있습니다.)
  • 공유 스크립트| nosharedscripts(섹션에 설명된 모든 파일에 대해 사전 회전 및 사후 회전 명령을 한 번만 실행)
  • 금기 사항[+] 접미사 목록(포함할 제외 접미사 목록 설정, 더하기 기호가 지정되면 추가, 그렇지 않으면 교체, 기본값: .rpmorig, .rpmsave, .rpmnew, ",v", .swp 및 "~")
  • 주간(버전은 매주 변경됨)

저널 연구 및 모니터링

로그 항목에는 일반적으로 타임스탬프, 설명된 프로세스가 실행 중인 호스트 이름 및 프로세스 이름이 포함됩니다. 로그 보기예를 들어 페이징 프로그램을 사용할 수 있습니다. 더 적은, 다음 명령을 사용하여 특정 항목(예: 특정 데몬의 커널 메시지)을 검색할 수 있습니다. grep:

# 덜 /var/log/messages # grep "ppp" /var/log/messages | 꼬리 12월 17일 16:34:25 프록시 pppd: 연결이 종료되었습니다. 12월 17일 16:34:25 프록시 pppd: 종료합니다. 12월 17일 16:35:57 프록시 pppd: LCP가 피어(^P]kV^@에 의해 종료됨

컴퓨터가 계속 작동하지 않고 밤에 꺼질 수 있습니다. 따라서 /var/log/messages의 항목은 컴퓨터 시작부터 종료까지 주기적으로 저장되며 메시지에서 확인할 수 있습니다.

12월 17일 08:32:56 syslog-server syslogd 1.4-0: 다시 시작합니다. 12월 17일 08:32:56 syslog-server syslog: syslogd 시작 성공 12월 17일 08:32:56 syslog-server 커널: klogd 1.4-0, 로그 소스 = /proc/kmsg 시작됨. 12월 17일 08:32:56 syslog-server syslog: klogd 시작 성공

12월 17일 08:32:56 syslog-server 커널: 커널 명령줄: auto BOOT_IMAGE=linux ro root=303 BOOT_FILE=/boot/vmlinuz-2.4.2-2 12월 17일 08:32:56 syslog-server 커널: 메모리: 125652k/130560k 사용 가능(1365k 커널 코드, 4200k 예약됨, 92k 데이터, 236k 초기화, 0k highmem) 12월 17일 08:32:56 syslog-server 커널: CPU: Intel(R) Pentium(R) 4 CPU 1.60GHz 스테핑 02

또한 이 파일에서 디스크 메모리에 대한 정보(디스크 구조, 파티션 구조 및 사용된 인터럽트에 대한 정보 포함), 주변 장치에 대한 정보, 개별 서비스 및 서비스 시작에 대한 정보, 파일 시스템 연결 및 사용자 로그온 메시지에 대한 정보를 찾을 수 있습니다. 오류 메시지.

때로는 필요할 수 있습니다. 시스템 로그 모니터링현재 이벤트를 검색합니다. 예를 들어 드물게 발생하는 이벤트를 발생한 순간에 포착하려고 할 수 있습니다. 이 경우 다음 명령을 사용할 수 있습니다. 꼬리옵션으로 -에프시스템 로그의 내용을 모니터링합니다. 예:

# 꼬리 -f /var/log/messages | grep syslog-server 12월 17일 16:46:09 syslog-server pppd: pptpd-logwtmp.so ip-up ppp0 maikop 94.77.0.150 12월 17일 16:46:09 syslog-server pppd: 스크립트 /etc/ppp/ip-up 완료(pid 12552), 상태 = 0x0 Dec 17 16:46:49 syslog-server pptpd: CTRL: 클라이언트 85.175.197.65 제어 연결 시작 Dec 17 16:46:49 syslog-server pptpd: CTRL: 호출 시작(pppd 시작, GRE 열기) 12월 17일 16:46:49 syslog-server pppd: 플러그인 /usr/lib/pptpd/pptpd-logwtmp.so가 로드되었습니다.

/etc/syslog.conf에 지정된 로그 파일 외에도 syslogd가 시작되기 전에 시스템 부팅 프로세스에 대한 정보를 저장하는 파일, 바이너리 형식으로 정보를 저장하는 파일과 같은 다른 파일도 있습니다. 시스템에 대한 사용자의 마지막 로그인, 성공한 모든 사용자 로그온 및 실패한 모든 사용자 로그온에 대한 정보. /var/log/ 디렉토리에는 웹 서버 또는 프록시 서버와 같은 데몬에 대한 로그 파일도 포함될 수 있습니다. 이러한 파일의 형식은 syslogd 로그와 유사합니다.

마지막으로, 저는 이 프로토콜이 그다지 안전하지 않다는 점을 강조하고 싶습니다. syslog에는 메시지 위조에 대한 보호 기능이 없습니다. 설상가상으로 UDP 프로토콜을 사용하면 공격자가 모든 호스트를 대신하여 메시지를 보낼 수 있습니다. LAN은 스푸핑된 로컬 주소가 있는 패킷을 수신하지 못하도록 보호해야 합니다(이는 스푸핑된 메시지가 LAN 내에서 전송되는 것을 방지하지는 못함). 포트 514/udp에서 외부로부터 패킷을 수신하는 것으로부터 보호되어야 합니다. 잘못된 메시지가 있는 디스크 오버플로 사례가 알려져 있습니다.

syslog 프로토콜 및 UDP는 보장된 전달을 제공하지 않습니다(네트워크 정체로 인해 메시지가 손실되거나 차단될 수 있으며 손상된 메시지는 경고 없이 삭제됨), 올바른 전달 순서(프로세스 시작 메시지 전에 프로세스 종료 메시지가 도착할 수 있음), 우선 순위 전달 .

메시지는 일반 텍스트로 전송되므로 기밀성이 보장되지 않습니다.

메시지 생성기를 설정할 때 잘못된 수집기 또는 릴레이 주소를 지정하면 오류 메시지가 표시되지 않습니다. 메시지가 삭제되거나 다른 사람의 로그에 기록됩니다.

syslog 프로토콜을 개선하기 위해 여러 프로젝트가 제안되었습니다. 예를 들어 RFC 3195는 메시지가 올바른 순서로 전달되도록 보장하는 TCP 기반 로깅 시스템(syslog-conn)을 제안합니다. syslog-sign 프로젝트는 표준 syslog 프로토콜 및 형식을 유지하고 UDP를 사용하면서 이전 메시지 블록의 디지털 서명이 포함된 특수 메시지를 생성하여 인증, 메시지 순서 지정, 메시지 무결성 및 누락된 메시지 감지를 제공할 것을 제안합니다.

조금 요약하자면 다음과 같습니다.

Linux에는 로컬 시스템과 원격 시스템의 이벤트 기록을 담당하는 단일 데몬이 있습니다. 모든 이벤트는 소켓 /dev/log, UDP 포트 - 514 및 커널에서 메시지를 보내는 "도우미" klogd 데몬에서 수집됩니다. 수집된 모든 메시지는 /etc/syslog.conf 파일의 규칙을 통해 syslogd 데몬에 의해 필터링되고 규칙에 따라 적절한 대상으로 배포됩니다. 로그 파일은 주기적으로 "절단"됩니다. 빈도는 시스템 스케줄러 - cron에 의해 실행되는 logrotate.conf 파일 및 logrotate 명령에 의해 결정됩니다.

오늘은 그게 다야. 가능한 한 명확하게 모든 것을 설명했으면합니다. 시간이 지남에 따라 기사를 보완하겠습니다!

진심으로, Mc.Sim!


Linux에서 로그 파일(로그 파일)을 볼 때 로그의 새 항목을 실시간으로 모니터링해야 하는 경우가 있습니다. 즉, 실시간으로 이 파일의 새 항목을 보고 모니터링할 로그 파일을 지정합니다.

tail 명령으로 로그 파일 모니터링

명령을 실행하면 꼬리 파일 이름추가 인수가 없으면 파일의 마지막 10줄이 인쇄되고 명령이 종료됩니다.

tail 명령이 파일의 최신 항목을 계속 표시하려면, 즉 파일에 새 항목이 나타난 경우 화면의 정보가 업데이트된 경우 -f 옵션을 사용하십시오.
꼬리 -f LogFileName

tail -f 명령을 실행하여 /var/log/syslog 로그 파일을 표시합니다.

꼬리 -f /var/log/syslog

옵션을 사용하기 때문에 -f , tail 명령은 종료되지 않지만 로그 파일에 새 항목이 나타날 때까지 기다립니다. 새 항목이 로그 파일에 추가되는 즉시 터미널에 즉시 표시됩니다.

명령을 중단하려면 Ctrl+C를 누릅니다.

tailf 명령

Tail -f 명령은 tailf 명령과 유사합니다.

용법:

테일프 /var/log/mylogfile.log

tailf와 tail -f의 중요한 차이점은 tailf는 파일이 수정되지 않을 때 파일에 액세스하지 않는다는 것입니다. 결과적으로 파일 액세스 시간이 업데이트되지 않고 파일이 업데이트되지 않을 때 시스템에서 파일을 디스크에 영구적으로 플러시하지 않습니다.

tailf 명령에 대한 설명은 랩톱에서 로그 파일을 모니터링하는 데 유용함을 나타냅니다. 불필요하게 디스크에 대한 액세스가 없기 때문에 배터리 수명이 보존됩니다.

꼬리 F. 파일 이름이 변경되었거나 삭제된 경우

일반적으로 Linux에서는 로그 파일이 무기한으로 작성되지 않습니다. 그렇지 않으면 이러한 파일이 향후 사용하기에 매우 불편할 것입니다. 대신 소위 파일 회전이 적용됩니다. 로그 파일이 커지면 삭제되거나 이름이 바뀌고(파일의 백업 복사본이 생성됨) 추가 메시지가 비어 있는 새 파일에 기록됩니다.

tail 명령에는 -f 및 -F의 두 가지 옵션이 있습니다.

  • 사용하는 경우 -f 옵션추적된 파일의 이름이 바뀌면 tail 명령은 이미 이름이 바뀐 파일을 계속 추적합니다. 팀 꼬리이 경우 파일의 식별자(inode)에 바인딩됩니다.
  • 사용하는 경우 옵션 -F추적된 파일의 이름이 바뀌면 tail 명령이 이를 결정하고 새 로그 파일이 생성되자마자(tail 명령에 지정한 이름 사용) 꼬리), 팀 꼬리이 새 파일을 추적하기 시작합니다.

예를 들어 보겠습니다.

로그 파일 /var/log/apache2/error.log 를 모니터링합니다. -F 옵션과 함께 tail 명령 실행

테일 -F /var/log/apache2/error.log

시스템이 error.log 파일을 error.log.1 파일로 이동(이름 변경)하고 새 error.log 파일을 생성하면 tail 명령은 이미 새로운 error.log 파일을 계속 모니터링합니다.

이 예에서 옵션을 사용한다면 -f ,그런 다음 tail 명령은 실시간으로 로그를 볼 때 더 이상 관련이 없는 error.log.1 파일을 계속 모니터링합니다.

동시에 여러 로그 파일 추적

tail 명령은 동시에 여러 파일 추적을 지원합니다. 이렇게 하려면 파일 이름을 공백으로 구분하여 지정해야 합니다.

테일 -f /var/log/apache2/error.log /var/log/apache2/access.log

파일이 변경되는 즉시 이 파일의 이름과 새 항목이 화면에 표시됩니다.

동시에 여러 로그 파일을 추적하기 위해 매우 편리한 multitail 유틸리티가 있습니다.

단순히 데이터를 표시하는 것이 아니라 파일별로 자체 창(영역)을 만들어 이 창에 데이터를 표시합니다. 도움을 받으면 한 번에 많은 로그 파일을 추적하고 하나의 터미널 창에서 볼 수 있어 매우 편리합니다.

multitail 유틸리티는 배포판의 일반 리포지토리에서 설치할 수 있습니다. 설치하려면 다음 명령을 실행합니다(배포에 적합한 명령 선택).

sudo apt 설치 multitail sudo yum 설치 multitail sudo dnf 설치 multitail

용법:

Multitail /var/log/apache2/access.log /var/log/apache2/error.log

q 키를 눌러 유틸리티를 종료합니다.

로그 파일을 읽지 않은 서버의 사용자 및 관리자 또는 Linux 기반 워크스테이션을 상상하는 것은 불가능합니다. 운영 체제와 실행 중인 응용 프로그램은 다양한 로그 파일에 기록되는 다양한 유형의 메시지를 지속적으로 생성합니다. 올바른 로그 파일과 그 파일에서 무엇을 찾아야 하는지 알면 많은 시간을 절약하고 오류를 더 빨리 해결할 수 있습니다.

로깅은 시스템 작동 및 해당 오류에 대한 주요 정보 소스입니다. 이 간략한 가이드에서는 운영 체제 로깅, 디렉토리 구조, 로그 읽기 및 검토 프로그램의 주요 측면을 다룹니다.

기본 로그 파일

모든 로그 파일은 다음 범주 중 하나로 분류할 수 있습니다.

  • 응용 프로그램;
  • 이벤트;
  • 서비스;
  • 전신.

대부분의 로그 파일은 /var/log 디렉토리에 포함되어 있습니다.

  • /var/log/syslog또는 /var/log/메시지 Linux 커널, 다양한 서비스, 검색된 장치, 네트워크 인터페이스 등에서 시스템이 시작된 순간부터 메시지를 작성하는 글로벌 시스템 로그를 포함합니다.
  • /var/log/auth.log또는 /var/로그/보안- 성공적인 로그인 시도와 실패한 로그인 시도 및 관련된 인증 메커니즘을 포함한 사용자 권한 부여 정보.
  • /var/log/dmesg- 장치 드라이버. 같은 이름의 명령을 사용하면 파일 내용의 출력을 볼 수 있습니다. 로그 크기는 제한되어 있으며 파일이 한계에 도달하면 이전 메시지를 최신 메시지로 덮어씁니다. --level= 키를 설정하면 중요도별로 출력을 필터링할 수 있습니다.
지원되는 로깅 수준(우선순위): emerg - 시스템 미사용 경고 - 즉시 수행할 조치 crit - 위험 조건 err - 오류 조건 경고 - 경고 조건 알림 - 일반적이지만 중요한 조건 정보 - 정보 디버그 - 디버그 메시지(5:520)$ dmesg -l err usb 1-1.1: 2:1: ep 0x1에서 freq를 얻을 수 없음 usb 1-1.1: 1:1: ep 0x81에서 freq를 얻을 수 없음 usb 1-1.1: 1:1: ep 0x81에서 freq를 얻을 수 없음
  • /var/log/alternatives.log- 기본적으로 명령 또는 라이브러리에 대한 심볼릭 링크를 포함하는 update-alternatives 프로그램의 출력입니다.
  • /var/log/anaconda.log- 시스템 설치 시 등록된 항목입니다.
  • /var/로그/감사- 감사 감사 서비스에 의해 생성된 항목.
  • /var/log/boot.log- 운영 체제가 로드될 때 기록되는 정보입니다.
  • /var/로그/크론- 명령 자체에서 실행 가능한 명령 및 메시지에 대한 crond 서비스 보고서.
  • /var/로그/컵- 인쇄 및 프린터와 관련된 모든 것.
  • /var/log/faillog- 실패한 로그인 시도. 보안 위협, 해커 공격, 무차별 대입 공격을 확인할 때 매우 유용합니다. faillog 명령을 사용하여 내용을 읽을 수 있습니다.
  • 변수/로그/kern.log- 로그에는 커널의 메시지와 커널에 내장된 사용자 정의 모듈의 문제를 해결할 때 유용할 수 있는 경고가 포함되어 있습니다.
  • /var/로그/메일로그/또는 /var/log/mail.log- OS에서 사용되는 메일 서버의 로그입니다.
  • /var/log/pm-powersave.log- 배터리 절약 서비스 메시지.
  • /var/로그/삼바/- Windows 공유에 액세스하고 Windows 사용자에게 Linux 공유에 대한 액세스를 제공하는 데 사용되는 Samba 파일 서버 로그.
  • /var/로그/스풀러- 구식의 경우 USENET 메시지를 포함합니다. 대부분 비어 있고 버려집니다.
  • /var/log/Xorg.0.log- X 서버 로그. 대부분 쓸모가 없지만 EE로 시작하는 줄이 포함되어 있으면 주의를 기울여야 합니다.

각 배포에 대해 별도의 패키지 관리자 로그가 있습니다.

  • /var/log/yum.log- RedHat Linux에서 Yum과 함께 설치된 프로그램의 경우.
  • /var/log/emerge.log- Gentoo Linux에서 emerge를 사용하여 Portage에서 설치한 ebuild용.
  • /var/log/dpkg.log- Debian Linux 및 모든 관련 배포판에 dpkg와 함께 설치된 프로그램의 경우.

그리고 일부 바이너리 사용자 세션 로그.

  • /var/log/lastlog- 마지막 사용자 세션. 마지막 명령으로 읽을 수 있습니다.
  • /var/log/탈리로그- 실패한 로그인 시도를 감사합니다. pam_tally2 유틸리티를 사용한 화면 출력.
  • /var/로그/btmp- 실패한 로그인 시도의 모든 단일 로그. 해커 활동의 흔적을 찾을 위치를 아직 추측하지 못한 경우를 대비하여 이와 같습니다.
  • /var/로그/utmp- 현재 사용자 로그인 목록입니다.
  • /var/log/wtmp- 사용자 로그인에 대한 또 다른 로그 항목. utmpdump 명령으로 화면에 출력합니다.
(5:535)$ sudo utmpdump /var/log/wtmp [2015년 8월 11일 화요일 16:50:07] [~~ ] [2015년 8월 11일 화요일 16:50:08] [~~ ] [8월 11일 화요일 16: 50:57 2015] [2015년 8월 11일 화요일 16:50:57] [~~ ] [2015년 8월 11일 화요일 16:50:57]

그리고 다른 잡지들

운영 체제는 Linux만큼 훌륭하더라도 그 자체로 실질적인 이점을 제공하지 않기 때문에 데이터베이스, 웹 서버 및 다양한 응용 프로그램이 서버 또는 워크스테이션에서 실행될 가능성이 큽니다. 각 응용 프로그램 또는 서비스에는 고유한 이벤트 및 오류 로그 파일 또는 디렉터리가 있을 수 있습니다. 물론 모두 열거할 수는 없고 일부만 나열할 수 있다.

  • /var/로그/mysql/- MySQL 데이터베이스 로그.
  • /var/log/httpd/또는 /var/log/아파치2/- Apache 웹 서버 로그, 액세스 로그는 access_log에, 오류는 error_log에 있습니다.
  • /var/log/lighthttpd/- Lighttpd 웹 서버 로그.

사용자의 홈 디렉토리에는 그래픽 애플리케이션 로그인 DE가 포함될 수 있습니다.

  • ~/.xsession-오류- X11 그래픽 응용 프로그램의 stderr 출력.
"kcm_input" 초기화 중: "kcminit_mouse" 초기화 중 "kcm_access": "kcminit_access" 초기화 중 "kcm_kgamma": "kcminit_kgamma" QXcbConnection: XCB 오류: 3(BadWindow), 시퀀스: 181, 리소스 ID: 10486050, 주요 코드: 20(GetProperty) , 부 코드: 0 kf5.kcoreaddons.kaboutdata: Q*Application의 동등한 속성을 초기화할 수 없습니다. 인스턴스가 (아직) 존재하지 않습니다. QXcbConnection: XCB 오류: 3(BadWindow), 시퀀스: 181, 리소스 ID: 10486050, 주 코드: 20(GetProperty), 부 코드: 0 Qt: 세션 관리 오류: networkIdsList 인수가 NULL입니다.
  • ~/.xfce4-session.verbose-log- XFCE4 데스크톱 메시지.

무엇을 볼 것인가 - lnav

거의 모든 사람이 less 유틸리티와 tail -f 명령에 대해 알고 있습니다. 또한 이러한 목적을 위해 vim 편집기와 Midnight Commander 파일 관리자가 적합합니다. 모두 단점이 있습니다. less는 긴 줄이 있는 로그를 바이너리로 착각하여 잘 처리하지 못합니다. Midnight Commander는 복잡한 패턴을 검색할 필요가 없고 경기 사이에 앞뒤로 많이 이동할 필요가 없을 때 훑어보기에 적합합니다. vim 편집기는 다양한 형식의 구문을 이해하고 강조 표시하지만 로그가 자주 업데이트되는 경우 파일 변경 사항에 대한 방해 메시지가 나타납니다. 그러나 이것은 쉽게 무시할 수 있습니다.<:view /path/to/file> .


최근에 저는 또 다른 유용하고 유망하지만 여전히 조잡한 유용성을 발견했습니다. lnav, 로그 파일 탐색기의 암호 해독에서.




하나의 명령으로 평소와 같이 패키지를 설치합니다.


$ aptitude install lnav #Debian/Ubuntu/LinuxMint $ yum install lnav #RedHat/CentOS $ dnf install lnav #Fedora $ emerge -av lnav #Gentoo, package.accept_keywords에 추가 $ yaourt -S lnav #Arch

저널 네비게이터 lnav여러 파일 형식을 이해합니다.

  • 웹 서버의 Access_log입니다.
  • CUPS page_log
  • 시스템 로그
  • dpkg.log
  • strace
  • 타임스탬프가 있는 임의 레코드
  • gzip, bzip
  • VMWare ESXi/vCenter 로그

이 경우 파일 형식을 이해한다는 것은 무엇을 의미합니까? 초점은 lnav텍스트 파일을 보기 위한 유틸리티 그 이상입니다. 프로그램은 다른 작업을 수행할 수 있습니다. 한 번에 여러 파일을 열고 파일 간에 전환할 수 있습니다.


(5:471)$ sudo lnav /var/log/pm-powersave.log /var/log/pm-suspend.log

프로그램은 아카이브 파일을 직접 열 수 있습니다.


(5:471)$ lnav -r /var/log/Xorg.0.log.old.gz

키를 누를 때 정보 메시지, 경고 및 오류의 막대 그래프 표시 . 이것은 내 syslog에서 가져온 것입니다.


5월 2일 월요일 20:25:00 123 정상 3 오류 0 경고 0 마크 5월 2일 월요일 22:40:00 2 정상 0 오류 0 경고 0 마크 5월 2일 월요일 23:25:00 10 정상 0 오류 0 경고 0 마크 5월 화요일 03 07:25:00 96 정상 3 오류 0 경고 0 마크 5월 3일 화요일 23:50:00 10 정상 0 오류 0 경고 0 마크 5월 4일 수요일 07:40:00 96 정상 3 오류 0 경고 0 마크 5월 4일 수요일 08 :30:00 정상 2개 오류 0개 경고 0개 0점 5월 4일(수) 10:40:00 정상 10개 오류 0개 경고 0개 0점 5월 4일(수) 11:50:00 126 정상 오류 2개 경고 1개 0점

또한 구문 강조 표시, 금기 사항 추가 및 상태 표시줄의 다양한 유용성을 지원합니다. 단점은 행동의 불안정성과 정지를 포함합니다. 희망 lnav제 생각에는 매우 유용한 프로그램으로 활발히 개발될 것입니다.

시스템 관리자와 일반 Linux 사용자도 문제 해결을 위해 로그 파일을 확인해야 하는 경우가 많습니다. 사실 이것은 시스템에 오류가 발생했을 때 시스템 관리자라면 가장 먼저 해야 할 일입니다.

Linux 운영 체제 자체와 실행 중인 애플리케이션은 다양한 로그 파일에 기록되는 다양한 유형의 메시지를 생성합니다. Linux는 특수 소프트웨어, 파일 및 디렉토리를 사용하여 로그 파일을 저장합니다. 어떤 프로그램의 로그가 어떤 파일에 있는지 알면 시간을 절약하고 문제를 더 빨리 해결하는 데 도움이 됩니다.

이 기사에서는 Linux 로그를 보는 데 사용할 수 있는 Linux 로깅 시스템, 로그 파일 및 유틸리티의 주요 부분을 살펴보겠습니다.

대부분의 Linux 로그 파일은 /var/log/ 폴더에 있습니다. ls 명령을 사용하여 시스템의 로그 파일을 나열할 수 있습니다.

Rw-r--r-- 1 루트 루트 52198 5월 10일 11:03 대안.로그
drwxr-x--- 2 루트 루트 4096 11월 14일 15:07 apache2
drwxr-xr-x 2 루트 루트 4096 4월 25일 오후 12시 31분 의류
drwx------ 2 루트 루트 4096 5월 5일 10:15 감사
-rw-r--r-- 1 루트 루트 33100 5월 10일 10:33 boot.log

아래에서는 /var/log/ 디렉토리에 있는 20개의 서로 다른 Linux 로그 파일을 살펴보겠습니다. 이러한 로그 중 일부는 특정 배포판에서만 찾을 수 있습니다. 예를 들어 dpkg.log는 Debian 기반 시스템에서만 찾을 수 있습니다.

/var/log/메시지- 시스템 시작 시 기록된 로그를 포함하여 전역 Linux 시스템 로그를 포함합니다. 메일, cron, 다양한 서비스, 커널, 인증 등 여러 유형의 메시지가 이 로그에 기록됩니다.

/var/log/dmesg- 커널에서 받은 메시지를 포함합니다. 부팅 단계에서 많은 메시지를 등록하며 부팅 프로세스 중에 초기화되는 하드웨어 장치에 대한 정보를 표시합니다. 이것이 Linux 시스템의 또 다른 로그라고 말할 수 있습니다. 로그의 메시지 수는 제한되어 있으며 파일이 가득 차면 각각의 새 메시지로 이전 메시지를 덮어씁니다. dmseg 명령을 사용하여 이 로그의 메시지를 볼 수도 있습니다.

/var/log/auth.log- 사용된 사용자 로그인 및 인증 메커니즘을 포함하여 시스템의 사용자 권한 부여에 대한 정보를 포함합니다.

/var/log/boot.log- 시스템 부팅 시 기록되는 정보를 포함합니다.

/var/log/daemon.log- 다양한 백그라운드 데몬의 메시지 포함

/var/log/kern.log- 또한 커널에 내장된 사용자 정의 모듈의 문제를 해결하는 데 유용한 커널의 메시지를 포함합니다.

/var/log/lastlog- 모든 사용자의 마지막 세션에 대한 정보를 표시합니다. 이것은 비텍스트 파일이며 lastlog 명령을 사용하여 확인해야 합니다.

/var/log/maillog /var/log/mail.log- 시스템에서 실행 중인 이메일 서버의 로그.

/var/log/user.log- 사용자 수준의 모든 로그 정보.

/var/log/Xorg.x.log- X 서버 메시지 로그.

/var/log/alternatives.log- update-alternatives 프로그램의 작동에 대한 정보. 기본적으로 명령 또는 라이브러리에 대한 심볼릭 링크입니다.

/var/로그/btmp- Linux 로그 파일에는 실패한 로그인 시도에 대한 정보가 포함되어 있습니다. 파일을 보려면 last -f /var/log/btmp 명령을 사용하는 것이 편리합니다.

/var/로그/컵- 인쇄 및 프린터와 관련된 모든 메시지.

/var/log/anaconda.log- 설치 시 등록된 모든 메시지가 이 파일에 저장됩니다.

/var/log/yum.log- Yum으로 패키지 설치에 대한 모든 정보를 기록합니다.

/var/로그/크론- Cron 데몬이 프로그램 실행을 시작할 때마다 프로그램 자체의 보고서와 메시지를 이 파일에 기록합니다.

/var/로그/보안- 인증 및 권한 부여와 관련된 정보를 포함합니다. 예를 들어 SSHd는 실패한 로그인 시도를 포함하여 여기에 모든 것을 기록합니다.

/var/log/wtmp 또는 /var/log/utmp -리눅스 시스템 로그 , 사용자 로그인 로그를 포함합니다. wtmp 명령을 사용하면 누가 언제 로그인했는지 확인할 수 있습니다.

/var/log/faillog- Linux 시스템 로그에는 실패한 로그인 시도가 포함되어 있습니다. 이 파일의 내용을 표시하려면 faillog 명령을 사용하십시오.

/var/log/mysqld.log- MySQL 데이터베이스 서버의 Linux 로그 파일.

/var/log/httpd/ 또는 /var/log/apache2- Apache 웹서버 linux11 로그 파일. 액세스 로그는 access_log 파일에 있고 오류는 error_log에 있습니다.

/var/log/lighthttpd/- lighttpd 웹서버 리눅스 로그

/var/log/conman/- ConMan 클라이언트 로그 파일,

/var/로그/메일/- 이 디렉토리에는 추가 메일 서버 로그가 포함되어 있습니다.

/var/log/prelink/- Prelink 프로그램은 다운로드 프로세스 속도를 높이기 위해 라이브러리와 실행 파일을 연결합니다. /var/log/prelink/prelink.log는 프로그램에 의해 수정된 .so 파일에 대한 정보를 포함합니다.

/var/로그/감사/- auditd 감사 데몬에서 생성된 정보를 포함합니다.

/var/log/setroubleshoot/ - SE Linux는 setroubleshootd 데몬(SE Trouble Shoot Daemon)을 사용하여 보안 문제를 보고합니다. 이 로그에는 이 프로그램의 메시지가 포함되어 있습니다.

/var/로그/삼바/- Windows 공유에 연결하는 데 사용되는 Samba 파일 서버의 정보 및 로그를 포함합니다.

/var/log/sa/- Sysstat 패키지에서 수집한 .cap 파일을 포함합니다.

/var/log/sssd/- 원격 디렉토리 액세스 및 인증 메커니즘을 관리하는 시스템 보안 데몬에서 사용됩니다.

Linux에서 로그 보기

Linux에서 로그를 보려면 여러 Linux 명령줄 유틸리티를 사용하는 것이 편리합니다. 텍스트 편집기 또는 특수 유틸리티가 될 수 있습니다. 대부분의 경우 Linux에서 로그를 보려면 수퍼유저 권한이 필요합니다. 이 목적으로 가장 자주 사용되는 명령은 다음과 같습니다.

  • zgrep
  • 즈모어

대부분의 명령은 웹 사이트에서 이미 자세히 다루었기 때문에 각 명령에 대해 자세히 설명하지 않겠습니다. 하지만 몇 가지 예를 들겠습니다. Linux 로그 보기는 매우 쉽습니다.

스크롤할 수 있는 기능과 함께 /var/log/messages 로그를 살펴봅니다.

덜 /var/log/messages

실시간으로 Linux 로그 보기:

꼬리 -f /var/log/messages

dmesg 로그 파일을 엽니다.

고양이 /var/log/dmesg

dmesg의 첫 줄:

헤드 /var/log/dmesg

/var/log/messages에서 오류만 출력:

grep -i 오류 /var/log/messages

또한 그래픽 유틸리티를 사용하여 Linux에서 로그를 볼 수 있습니다. 시스템 로그 뷰어를 사용하여 Linux 랩톱 또는 PC에서 시스템 로그를 쉽게 보고 모니터링할 수 있습니다.

X 서버가 설치된 모든 시스템에 프로그램을 설치할 수 있습니다. 또한 모든 그래픽 테스트 편집기를 사용하여 로그를 볼 수 있습니다.

결론

/var/log 디렉토리에서 Linux 작동에 필요한 모든 정보를 찾을 수 있습니다. 오늘의 기사에서는 어디를 보고 무엇을 찾아야 하는지 충분히 배웠습니다. 이제 Linux에서 로그를 보는 것은 문제를 일으키지 않습니다. 질문이 있으시면 댓글로 질문해주세요!

질문이 있으신가요?

오타 신고

편집자에게 보낼 텍스트: