Pertanyaan Di mana file log dari rc.local?


Saya punya beberapa perintah di rc.local saya. Saya tahu mereka gagal. Bagaimana saya bisa mendapatkan file log dengan pesan yang dihasilkan dengan mengeksekusi rc.local? Di mana letaknya?

Saya telah memeriksa /var/log/boot.log. Saya tahu pesan saya tidak ada karena saya sudah tahu apa alasan kegagalannya. Tapi saya masih ingin memastikan dari file log.

Catatan, saya tidak ingin menjalankan skrip lagi, saya bisa tetapi saya tidak mau. Saya lebih suka menganalisis apa yang terjadi saat startup.

Terima kasih atas bantuannya.

Ubuntu 12.04 Desktop (jika itu penting)


41
2018-03-14 15:19


asal




Jawaban:


Kecuali perintah memiliki keluaran atau pencatatan sudah dikonfigurasi, rc.local perintah tidak akan dicatat di mana saja.

Jika Anda ingin melihat log untuk perintah tertentu, coba mengarahkan stdout dan stderr untuk rc.local ke suatu tempat yang bisa Anda periksa. Coba tambahkan ini ke bagian atas Anda /etc/rc.local mengajukan:

exec 1>/tmp/rc.local.log 2>&1  # send stdout and stderr from rc.local to a log file
set -x                         # tell sh to display commands before execution

Meskipun ini perlu untuk mengulangi rc.local mengajukan.


51
2018-03-14 17:14



exec &> /tmp/rc.local.log cukup bukannya dua panggilan exec :-) - AjayKumarBasuthkar
@ abu-bua: Harap berhati-hati ketika Anda meninjau saran edit yang memperkenalkan perubahan fungsional! &> redirection adalah Bash-ism dan gagal secara diam-diam di Dash dan implementasi "polos" lainnya /bin/sh interpreter seperti yang digunakan untuk rc.local. - David Foerster


Cobalah untuk memeriksa kegagalan di /var/log/syslog file sebagai gantinya.


7
2018-03-14 15:29





Lihat kedalam

  1. /var/log/messages 
  2. /var/log/daemon 

Atau gunakan perintah dmesg

less /var/log/boot.log
less /var/log/dmesg
grep error /var/log/dmesg
grep <your expected error string> /var/log/boot.log

Atau gunakan script atau alat lain untuk mengambil log masuk rc.local


2
2018-03-14 18:37