HUP doesn't send to processes when logout

Jerry Feldman gaf at blu.org
Mon Dec 29 17:42:39 UTC 2008


On 12/29/2008 10:05 AM, 平天韩 wrote:
> hi,
>
> It seems that when I logout from the console, the background process
> doesn't get HUP signal:
> { trap "echo Ignore HUP >>/tmp/trap.out" 1; while sleep 3;do echo
> hello >>/tmp/hello.txt;done; }&
> And it seems it will become a daemon and run forever until rebooting.
> Is this correct? Why it didn't get HUP signal?
>
> Thanks!
>
>   
Are you running this from a terminal window?
Are you possibly setting nohup in your environment.
Are you typing the above commands directly? What happens if you place 
these into a script and run the script in the background?

There are a number of things that can cause a shell script to ignore the 
HUP signal. I tested this as a script on an Ubuntu laptop, and it 
behaved the same as yours:

The process remained. So the issue is not that exiting the parent 
process (GNOME Term) or logging out of GNOME fails to issue a HUP, it is 
that the process itself ignores the HUP signal since I sent a "kill -HUP 
<pid>" to the process.

If you simply send the HUP signal, you will see that "Ignore HUP" will 
appear in /tmp/trap.out".

The signal(1) command is probably the culprit, though the man pages are 
vague.

-- 
Jerry Feldman <gaf at blu.org>
Boston Linux and Unix
PGP key id: 537C5846
PGP Key fingerprint: 3D1B 8377 A3C0 A5F2 ECBB  CA3B 4607 4319 537C 5846


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 251 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/fedora-list/attachments/20081229/7e2ff77f/attachment-0001.sig>


More information about the fedora-list mailing list