Ketika Linux kehabisan memori (OOM), pembunuh OOM memilih proses untuk membunuh berdasarkan beberapa heuristik (ini bacaan yang menarik: http://lwn.net/Articles/317814/ ).
Bagaimana seseorang dapat secara program menentukan proses mana yang baru-baru ini dibunuh oleh pembunuh OOM?
linux
linux-kernel
Yang
sumber
sumber
/var/log/syslog
beberapa distro, dan/var/log/messages
pada yang lain. Saya pikir itu Debian untuk yang pertama dan Red Hat untuk yang terakhir, BICBW.egrep
tidak masuk akal di sini. Tua polosgrep
, atau jika kita sedang spesifik,fgrep
jauh lebih masuk akal. (Mengedit jawaban yang sesuai.)Coba ini sehingga Anda tidak perlu khawatir di mana log Anda berada
sumber
/var/log/messages
yang tidak muncul didmesg
//var/log/dmesg
. Ini bisa jadi semacam kesalahan konfigurasi, tetapi perlu dicatat bahwa menggunakan kedua pendekatan itu bisa menjadi ide yang bagus.dmesg -T
untuk mendapatkan cap waktu yang dapat dibacaSekarang dstat menyediakan fitur untuk mencari tahu di sistem Anda yang sedang berjalan, proses mana yang merupakan kandidat untuk terbunuh oleh mekanisme oom
dan sesuai halaman manual
sumber
Coba ini:
sumber