Jawaban:
Pada sistem pemula yang baru, proses init sesi dimulai ketika Anda masuk menggunakan GUI. Karena Ubuntu menggunakan pemula, ada initproses 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 initPID 1 (karena Anda tidak memiliki hak istimewa), tetapi sesi Anda init, yang akan menjadi PID 9526 dalam contoh ini.
Karena ini initadalah proses yang mengatur untuk sesi GUI Anda, mematikannya membunuh sesi Anda dan karena itu Anda keluar.
pkilldaripada killallkarena killallbekerja sama sekali berbeda pada sistem lain seperti Solaris ...
killallmembunuh semua. Maka nama.
killall initsebagai roottidak tampak seperti ide yang baik - terutama pada berguna sistem - saya pikir initmenyebabkan kernel panik jika mati karena tidak dimaksudkan untuk pernah mencapai returnpada akhir itu mainkode lingkaran.