Terkadang ketika saya menjalankan killall
perintah dari Terminal, rekan kerja menyarankan atau mengedit skrip saya untuk ditampilkan killall -HUP
.
Apa yang dilakukan -HUP
bagian itu?
Terkadang ketika saya menjalankan killall
perintah dari Terminal, rekan kerja menyarankan atau mengedit skrip saya untuk ditampilkan killall -HUP
.
Apa yang dilakukan -HUP
bagian itu?
Jawaban:
The -HUP
pilihan adalah sinyal yang dikirim ke proses oleh killall
perintah. Agak sulit dikatakan, tetapi entri yang relevan dalam killall
manual adalah:
-SIGNAL Send a different signal instead of the default TERM. The signal may be specified
either as a name (with or without a leading SIG), or numerically.
Perbedaan antara TERM
sinyal default yang killall
mengirim dan HUP
sinyal sangat tergantung pada program Anda mengirim sinyal. Pada akhir program, mereka menerima nilai sinyal interupsi yang berbeda. Jadi program dapat menangkap interupsi dan memutuskan, berdasarkan nilainya, apakah mereka harus melakukan satu atau lain hal.
The TERM
sinyal (historis "menghentikan sinyal") biasanya dikirim ke sebuah program untuk meminta penghentian (yang merupakan versi politer dari memaksa penghentian dengan KILL
sinyal). Program ini bebas untuk menangkap dan mengabaikan TERM
sinyal. Itu tidak harus berakhir jika tidak mau dan dapat sepenuhnya mengabaikan sinyal ini.
The HUP
sinyal (historis "sinyal hangup") biasanya dikirim ke sebuah program untuk permintaan yang restart dan re-membaca semua konfigurasi dalam proses. Perilaku aktual program tergantung pada implementasi spesifik program. Tidak semua program menangkap HUP
dan mereka tidak diharuskan oleh konvensi atau dogma. Misalnya, server web Apache akan menangkap HUP
sinyal dan membaca kembali semua file konfigurasinya tetapi tidak akan memulai kembali proses apa pun.
Jika Anda ingin benar-benar menghentikan proses dan tidak khawatir tentang apakah mereka akan menangkap dan mematuhi sinyal menggunakan KILL
sinyal. Itu tidak bisa ditangkap atau diabaikan dan mengakibatkan penghentian proses.
Untuk ulasan yang baik tentang sinyal POSIX yang tersedia, lihat artikel Wikipedia ini .
#FAIL
orang - orang yang tidak pernah membaca melewati sakelar. Terima kasih!
The -HUP
adalah "menggantung" sinyal yang dapat memicu sebuah aplikasi untuk berhenti, membaca itu file konfigurasi, dan kemudian mulai lagi. Ini belum tentu lebih baik daripada menggunakannya tanpa.
killall Finder
dan
killall -HUP Finder
Sama hormatnya. Di OS X Finder akan diluncurkan kembali, tetapi akan membaca kembali file konfiguasinya. Ini mungkin tidak benar-benar terjadi jika aplikasi yang sedang berjalan tidak memiliki -HUP
fungsi yang dibangun di dalamnya. Seperti poster sebelumnya disebutkan Apache. Bunyinya file konfigurasi, tetapi tidak bisa diluncurkan lagi.