Saya menggunakan CentOS 6, mencoba mengaktifkan core dump untuk aplikasi yang saya kembangkan. Saya telah menempatkan:
ulimit -H -c unlimited >/dev/null
ulimit -S -c unlimited >/dev/null
ke profil bash saya, tetapi dump inti masih tidak menghasilkan (di terminal baru).
Saya juga telah mengubah /etc/security/limits.conf saya sehingga batas lunaknya nol untuk semua pengguna.
Bagaimana cara mengatur lokasi file inti menjadi output? Saya ingin menentukan lokasi dan menambahkan waktu dump dihasilkan, sebagai bagian dari nama file?
Jawaban:
Untuk mengatur lokasi dump inti di CentOS 6 Anda dapat mengedit
/etc/sysctl.conf
. Misalnya jika Anda ingin dump inti di/var/crash
:Di mana variabelnya adalah:
Anda juga harus menambahkan
/etc/sysconfig/init
Sekarang terapkan perubahan baru:
Tapi ada peringatan sedikit pun dengan cara ini. Jika parameter kernel, kernel.core_pattern selalu diatur ulang dan ditimpa saat reboot ke konfigurasi berikut bahkan ketika nilai ditentukan secara manual di
/etc/sysctl.conf
:Singkatnya ketika
abrtd.service
mulaikernel.core_pattern
ditimpa secara otomatis oleh sistem yang diinstalabrt-addon-ccpp
. Ada dua cara untuk menyelesaikan ini:DumpLocation
Opsi pengaturan dalam/etc/abrt/abrt.conf
file konfigurasi. Direktori tujuan dapat ditentukan dengan menetapkan DumpLocation =/var/crash
dalam/etc/abrt/abrt.conf
file konfigurasi, dansysctl kernel.core_pattern
nilai yang ditampilkan adalah sama tetapi sebenarnya file inti akan dibuat ke direktori di bawah/var/crash
.Jika SELinux diaktifkan, Anda harus menjalankan:
Dan akhirnya restart
abrtd.service
:Hentikan layanan abrtd.
kernel.core_pattern
tidak akan ditimpa. - (Saya belum pernah menguji).sumber
Untuk menghasilkan dump inti pada Busybox kita dapat menambahkan parameter di bawah ini di inisialisasi skrip yang menjalankan executable kami. Jadi setiap kali kita menginisialisasi perangkat lunak dan variabel lingkungan ekspor kita dapat menyalin baris di bawah ini ke skrip juga untuk membuang inti jika kita melihat ada kerusakan.
Untuk mengatur lokasi dump inti di Busybox Anda dapat mengatur path file inti menggunakan sistem file proc. Misalnya, jika Anda ingin dump inti di
/tmp/crash/corefiles
:Di mana variabelnya adalah:
Anda juga harus mengatur ukuran file inti, di bawah ini perintah menetapkan ukuran file inti menjadi tidak terbatas
Sekarang untuk memeriksa ukuran file inti yang ditetapkan untuk setiap utas dalam suatu proses yang dapat kita periksa menggunakan
Output dari perintah di atas:
Seperti yang dapat kita lihat dari output di atas ukuran file max core diatur ke tidak terbatas.
Untuk info lebih lanjut silakan kunjungi tautan ini. Aplikasi Linux Teknik Debugging / file Inti
sumber