Saya menjalankan CentOS 5.5 dan telah membuat skrip init. Awal skrip berisi:
# Source function library.
if [ -f /etc/init.d/functions ]; then
. /etc/init.d/functions
fi
Bit awal berfungsi dengan baik, tapi saya mengalami masalah dengan status dan menghentikan bagian:
status)
echo -n "Status of script: "
status "/bin/sh /path/to/script.sh"
RETVAL=$?
echo
;;
Di PS AUX perintah muncul sebagai "/ bin / sh /path/to/script.sh" dan saya bisa melihat PID. Tapi ketika saya lari:
./my_init_script status
Dikatakan skrip tidak berjalan. Haruskah saya menggunakan bit / bin / sh, atau hanya path script lengkap, atau hanya nama file script?
Bagian penghenti dari skrip init menggunakan "killproc". Sekali lagi perintah apa yang harus saya gunakan untuk berhasil membunuh semua kemunculan skrip?
sh
? Apa yang terjadi jika Anda memulainya tanpa itu (gunakan#!/bin/sh
di bagian atas skrip,chmod +x
dan mulai dengan/path/to/scriptname
)? Apakahstatus
berhasil dalam kasus itu? Sudahkah Anda membandingkan skrip init Anda dengan yang ada?PIDFILE
variabel yanginit
akan melakukan hal yang benar untuk Anda. Anda juga mungkin memerlukan blok komentar di awal file dalam format tertentu. Sekali lagi, skrip yang ada akan menunjukkan jalannya.