서버 리소스가 부족하기 때문에 시스템이 때때로 프로세스를 종료할 것이라고 생각됩니다. 조사를 위해 이러한 사건을 별도의 파일에 기록하고 싶습니다.
syslog.conf에서 이를 어떻게 설정합니까? 또한 kill cmd를 사용하여 프로세스를 종료한 사용자를 기록하고 싶습니다.
시스템은 rsyslogd를 실행하는 CentOS 버전 6.4입니다.
답변1
시스템은 때때로 프로세스를 종료합니다.
예, Linux 커널은 메모리가 매우 부족할 때(및 스왑!) 프로세스를 종료할 수 있습니다. 이를 수행하는 함수를 "oomkiller"(메모리 부족 킬러)라고 하며 종료되는 프로세스에 대한 세부 정보를 커널 로그에 기록합니다. 이 로그를 볼 수 있으며, dmesg
syslog 서버는 일반적으로 이를 작성하도록 구성되어 있습니다 /var/log/kern.log
.
그러나 시스템이 메모리 부족으로 실행되어 이런 일이 자주 발생하는 경우 이는 일반적으로 해결해야 할 중요한 문제로 간주됩니다. oomkiller가 어떤 프로세스를 종료할지 제어할 수 없으며 때때로 중요한 시스템 프로세스를 종료할 가능성이 높으므로 이러한 일이 발생한 후에 시스템이 완전히 안정적일 것이라고 기대할 수는 없습니다.
또한 kill cmd를 사용하여 사용자를 기록하고 싶습니다.
이 정보는 어떠한 수단으로도 수집되거나 기록되지 않으며 이용할 수 없습니다. 여러분이 바랄 수 있는 최선의 것은 누군가가 실행하는 것입니다. sudo kill <something>
이 경우 명령이 기록됩니다 sudo
(대신 ). kill
하지만 일반 사용자는 사용할 수 없습니다 sudo
.