Jawaban:
Pada sistem pemula yang baru, proses init sesi dimulai ketika Anda masuk menggunakan GUI. Karena Ubuntu menggunakan pemula, ada init
proses untuk sesi Anda. Cobalah menggunakan pstree -ps $$
terminal:
$ pstree -ps $$
init(1)───lightdm(1741)───lightdm(9511)───init(9526)───/usr/bin/termin(9570)─┬─gnome-pty-helpe(9734)
└──zsh(7944)
Jadi ketika Anda menjalankan killall init
, Anda tidak membunuh init
PID 1 (karena Anda tidak memiliki hak istimewa), tetapi sesi Anda init
, yang akan menjadi PID 9526 dalam contoh ini.
Karena ini init
adalah proses yang mengatur untuk sesi GUI Anda, mematikannya membunuh sesi Anda dan karena itu Anda keluar.
pkill
daripada killall
karena killall
bekerja sama sekali berbeda pada sistem lain seperti Solaris ...
killall
membunuh semua. Maka nama.
killall init
sebagai root
tidak tampak seperti ide yang baik - terutama pada berguna sistem - saya pikir init
menyebabkan kernel panik jika mati karena tidak dimaksudkan untuk pernah mencapai return
pada akhir itu main
kode lingkaran.