Pertanyaan ini sudah lama, dan saya masih belum jelas mengapa.
Pertanyaan asli pada tahun 2014:
Di tab Terminal Gnome, saya berlari
$ nohup chromium-browser &
Tetapi ketika saya menutup tab terminal, chromium-browser
juga keluar. Bukankah nohup
seharusnya mencegah itu? Gilles berkata:
nohup dan ditolak keduanya dapat dikatakan untuk menekan SIGHUP, tetapi dengan cara yang berbeda. nohup membuat program mengabaikan sinyal pada awalnya (program dapat mengubah ini). nohup juga mencoba mengatur agar program tidak memiliki terminal pengendali, sehingga tidak akan dikirim SIGHUP oleh kernel ketika terminal ditutup. penolakan adalah murni internal ke shell; itu menyebabkan shell tidak mengirim SIGHUP ketika itu berakhir.
Jadi bukankah tidak membuat kromium-browser mengabaikan SIGHUP?
Saya melihat ini di executable lain juga, seperti dan Emacs (mode GUI). Tapi tidak pada xeyes.
Ini terjadi pada Ubuntu 12.04, 32-bit ketika pertanyaan diposting.
Pembaruan pada tahun 2015,
Sekarang saya menjalankan Ubuntu 14.04, dengan google-chrome
bukannya chromium-browser
diinstal. Hal yang sama yang terjadi pada chromium-browser sebelumnya juga terjadi pada google-chrome sekarang. nohup google-chrome 2>/dev/null &
tidak menyimpannya agar tidak ditutup ketika tab terminal ditutup. /usr/bin/google-chrome
adalah tautan ke skrip bash /opt/google/chrome/google-chrome
. Mengapa nohup
diterapkan pada skrip bash tidak berfungsi? Bagaimana kami bisa membuatnya bekerja pada skrip bash? Bagaimana dengan skrip Python?
xeyes
.