EnderUNIX Team.


EnderUNIX İpucu

Arkadaşıma gönder , Ana Sayfa

[ Konsol ]

"nohup nasıl çalışır" - ATILIM BOY - (2006-03-06 11:50:55)   [4649]

Yıllardan beri bağlanmış olduğum kabuk'lardan (shell) çıktığımda başlattığım süreçlerin çalışmaya devam etmesi için nohup(1)'ı kullanırım. Bir Kabuk sonlandığında bütün çocuk süreçler (child process) SIGHUP sinyalı alacaklardır ki bu durum eğer ilgili süreç SIGHUP sinyalini işlememiş ise onun sonlanmasına sebep olacacaktır. Ne zaman ki bir komut nohup(1) programı ile çalıştırılırsa, SIGHUP için sinyal işleme yapısı bu sinyali ihmal etmek anlamında düzenler ve süreç kabuktan çıkıldığı durumlarda çalışmasına devam eder. Bunu Solaris'de "psig" komutuyla görebiliriz.

$ ssh oscar &
[1] 958

$ psig 958 | grep HUP
HUP default

Burada "psig" komutu SIGHUP için sinyal işleme yapısının varsayılan olarak ayarlandığına işaret etmektedir ki bu durum kabuktan çıkıldığında sürecin sonlanmasına sebep olan durumdur. Aynı komut nohup yardımı ile çalıştırıldığında, SIGHUP için sinyal işleme yapısının ihmal etmek olarak düzenlendiğini görebiliriz.

$ nohup ssh oscar &
[2] 967

$ psig 967 | grep HUP
HUP ignored

Solaris şaşırtıcı bir işletim sistemidir; çalışan bir sürecin (ve süreç gurubunun) sinyal işleme yapısını yeniden düzenlemenize olanak sağlar. Bu nohup komutunun -p ve -g parametreleri ile yapılabilir:

$ ssh -p 443 oscar &
[1] 1081

$ psig 1081 | grep HUP
HUP default

$ nohup -p 1081
Sending output to nohup.out

$ psig 1081 | grep HUP
HUP ignored

http://daemons.net/~matty/blog/?p=49

Arkadaşıma gönder , Ana Sayfa