Saya sedang mencari /etc/init.d/ssh
untuk mendapatkan ide tentang bagaimana daemon sys "benar" dijalankan saat boot (saya mencoba untuk menambah svnserve
daftar itu). Saya melihat ini log_daemon_msg
digunakan sebagai perintah, tetapi saya tidak tahu apa itu.
which log_daemon_msg
dan man log_daemon_msg
muncul kosong.
Contoh:
log_daemon_msg "Starting OpenBSD Secure Shell server" "sshd" || true
if start-stop-daemon --start --quiet --oknodo --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd -- $SSHD_OPTS; then
log_end_msg 0 || true
else
log_end_msg 1 || true
fi
Bagaimana cara kerjanya? Saya mencoba Googling, tetapi satu-satunya hal yang dapat saya temukan adalah pertanyaan tentang di mana ia mencatat pesannya, yang tidak berguna karena saya tidak tahu bagaimana menggunakannya atau apa itu - perintah, builtin, atau yang lainnya?
/etc/init.d/ssh
Jawaban:
Itu adalah fungsi terkait LSB . Silakan lihat
/lib/lsb/init-functions
dan / atau/etc/redhat-lsb/lsb_log_message
. Path tergantung pada distro Anda.sumber
. /lib/lsb/init-functions
di bagian atas skrip init yang saya analisis ... Sepertinya lebih baik menulissource <...>
daripada. <...>
saat Anda ingin skrip dianalisis dengan mudah.Saya tidak memiliki BSD dan tidak pernah menggunakannya ... tetapi yang pasti log_daemon_message harus berupa fungsi shell. Lihat di atas itu untuk pernyataan seperti:
. ./fungsi
Itu sumber semua fungsi di file fungsi. Hal lain yang dapat Anda lakukan adalah mencari fungsi spesifik dengan find:
find / etc -type f -exec grep -li log_daemon_msg {} \;
Dan lihat apa yang ada di file. Seperti yang saya katakan saya tidak memiliki BSD, tetapi penelitian itu menyenangkan!
Ceria dan semoga sukses
sumber