Sponsored Content
Operating Systems Linux Red Hat Killing child daemon started by parent process Post 302414207 by jim mcnamara on Monday 19th of April 2010 12:26:06 PM
Old 04-19-2010
True daemons are independent of the parent.

I don't know why the parent is still running along with the "daemon", unless the daemon is not written correctly.

Anyway
Code:
kill -9 [pid of]daemon
kill -9 [pid of]wrapper

For more on a daemon:
Unix Programming Frequently Asked Questions - 1. Process Control
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

killing a child process within a shell

Hi All, I have a written a script in korn shell for importing data into a oracle database. The shell invokes the import within the script. I want to kill this import (child process) . I tries using trap, but this does not kill the import even if i press cnt c. i have to login into other terminal... (2 Replies)
Discussion started by: yerics
2 Replies

2. Programming

Child process is not getting started

Hi, When i m trying to run below code,its entering into wait stage. output: In parent pid=2134 // some random value assigned to child process parent waiting..... and then it keeps on waiting for child to get terminate Y this child is not getting... (5 Replies)
Discussion started by: Crab
5 Replies

3. Shell Programming and Scripting

killing a child process

I am calling another script from my main script and making it run in the background,based upon the value of the input provided by the user I want to kill the child process ,I have written this code timer.ksh & PID=$$ print "\n Do you wish to continue .. (Y/N) : \c " read kill_proc if ]... (4 Replies)
Discussion started by: mervin2006
4 Replies

4. Shell Programming and Scripting

Killing child process in ksh

I have a script that (ideally) starts tcpdump, sleeps a given number of seconds, then kills it. When I do this for 10 seconds or and hour, it works fine. When I try it for 10 hours (the length I actually want) it just doesn't die, and will actually stick around for days. Relevant part of my... (1 Reply)
Discussion started by: upnix
1 Replies

5. UNIX for Advanced & Expert Users

Child Killing Parent

Hi all, I am writing a script which calls other third party scripts that perform numerous actions. I have no control over these scripts. My problem is, one of these scripts seems to execute and do what it is meant to do, but my calling / parent script always exits at that point. I need to... (4 Replies)
Discussion started by: mark007
4 Replies

6. Shell Programming and Scripting

How to make the parent process to wait for the child process

Hi All, I have two ksh script. 1st script calls the 2nd script and the second script calls an 'C' program. I want 1st script to wait until the 'C' program completes. I cant able to get the process id for the 'C' program (child process) to make the 1st script to wait for the second... (7 Replies)
Discussion started by: sennidurai
7 Replies

7. Shell Programming and Scripting

[KSH/Bash] Starting a parent process from a child process?

Hey all, I need to launch a script from within 2 other scripts that can run independently of the two parent scripts... Im having a hard time doing this, if anyone knows how please let me know. More detail. ScriptA (bash), ScriptB (ksh), ScriptC (bash) ScriptA, launches ScriptB ScirptB,... (7 Replies)
Discussion started by: trey85stang
7 Replies

8. Emergency UNIX and Linux Support

signal between parent process and child process

Hello, everyone. Here's a program: pid_t pid = fork(); if (0 == pid) // child process { execvp ...; } I send a signal (such as SIGINT) to the parent process, the child process receive the signal as well as the parent process. However I don't want to child process to receive the... (7 Replies)
Discussion started by: jackliang
7 Replies

9. Shell Programming and Scripting

forking a child process and kill its parent to show that child process has init() as its parent

Hi everyone i am very new to linux , working on bash shell. I am trying to solve the given problem 1. Create a process and then create children using fork 2. Check the Status of the application for successful running. 3. Kill all the process(threads) except parent and first child... (2 Replies)
Discussion started by: vizz_k
2 Replies

10. Solaris

Child killing parent process and how to set up SMF

Hello, A little background on what we are doing first. We are running several applications from a CLI, and not all of them are fully functional. They do on occasion core dump, not a problem. We are running a service that takes a screen scrape of those apps and displays them in a more user... (5 Replies)
Discussion started by: Bryan.Eidson
5 Replies
WATCHQUAGGA(8)						      System Manager's Manual						    WATCHQUAGGA(8)

NAME
watchquagga - a program to monitor the status of quagga daemons SYNOPSIS
watchquagga [option...] daemon... watchquagga -h | -v DESCRIPTION
watchquagga is a watchdog program that monitors the status of supplied quagga daemons and tries to restart them in case they become unre- sponsive or shut down. To determine whether a daemon is running, it tries to connect to the daemon's VTY UNIX stream socket, and send echo commands to ensure the daemon responds. When the daemon crashes, EOF is received from the socket, so that watchquagga can react immediately. This program can run in one of the following 5 modes: Mode 0: monitor In this mode, the program serves as a monitor and reports status changes. Example usage: watchquagga -d zebra ospfd bgpd Mode 1: global restart In this mode, whenever a daemon hangs or crashes, the given command is used to restart all watched daemons. Example usage: watchquagga -dz -R '/sbin/service zebra restart; /sbin/service ospfd restart' zebra ospfd Mode 2: individual daemon restart In this mode, whenever a single daemon hangs or crashes, the given command is used to restart this daemon only. Example usage: watchquagga -dz -r '/sbin/service %s restart' zebra ospfd bgpd Mode 3: phased zebra restart In this mode, whenever a single daemon hangs or crashes, the given command is used to restart this daemon only. The only exception is the zebra daemon; in this case, the following steps are taken: (1) all other daemons are stopped, (2) zebra is restarted, and (3) other daemons are started again. Example usage: watchquagga -adz -r '/sbin/service %s restart' -s '/sbin/service %s start' -k '/sbin/service %s stop' zebra ospfd bgpd Mode 4: phased global restart for any failure In this mode, whenever a single daemon hangs or crashes, the following steps are taken: (1) all other daemons are stopped, (2) zebra is restarted, and (3) other daemons are started again. Example usage: watchquagga -Adz -r '/sbin/service %s restart' -s '/sbin/service %s start' -k '/sbin/service %s stop' zebra ospfd bgpd Important: It is believed that mode 2 (individual daemon restart) is not safe, and mode 3 (phased zebra restart) may not be safe with cer- tain routing daemons. In order to avoid restarting the daemons in quick succession, you can supply the -m and -M options to set the minimum and maximum delay between the restart commands. The minimum restart delay is recalculated each time a restart is attempted. If the time since the last restart attempt exceeds twice the value of -M, the restart delay is set to the value of -m, otherwise the interval is doubled (but capped at the value of -M). OPTIONS
-d, --daemon Run in daemon mode. When supplied, error messages are sent to Syslog instead of standard output (stdout). -S directory, --statedir directory Set the VTY socket directory (the default value is "/var/run/quagga"). -e, --no-echo Do not ping the daemons to test whether they respond. This option is necessary if one or more daemons do not support the echo com- mand. -l level, --loglevel level Set the logging level (the default value is "6"). The value should range from 0 (LOG_EMERG) to 7 (LOG_DEBUG), but higher number can be supplied if extra debugging messages are required. -m number, --min-restart-interval number Set the minimum number of seconds to wait between invocations of the daemon restart commands (the default value is "60"). -M number, --max-restart-interval number Set the maximum number of seconds to wait between invocations of the daemon restart commands (the default value is "600"). -i number, --interval number Set the status polling interval in seconds (the default value is "5"). -t number, --timeout number Set the unresponsiveness timeout in seconds (the default value is "10"). -T number, --restart-timeout number Set the restart (kill) timeout in seconds (the default value is "20"). If any background jobs are still running after this period has elapsed, they will be killed. -r command, --restart command Supply a Bourne shell command to restart a single daemon. The command string should contain the '%s' placeholder to be substituted with the daemon name. Note that -r and -R options are not compatible. -s command, --start-command command Supply a Bourne shell command to start a single daemon. The command string should contain the '%s' placeholder to be substituted with the daemon name. -k command, --kill-command command Supply a Bourne shell command to stop a single daemon. The command string should contain the '%s' placeholder to be substituted with the daemon name. -R, --restart-all When one or more daemons are shut down, try to restart them using the Bourne shell command supplied on the command line. Note that -r and -R options are not compatible. -z, --unresponsive-restart When a daemon is in an unresponsive state, treat it as being shut down for the restart purposes. -a, --all-restart When zebra hangs or crashes, restart all daemons taking the following steps: (1) stop all other daemons, (2) restart zebra, and (3) start other daemons again. Note that this option also requires -r, -s, and -k options to be specified. -A, --always-all-restart When any daemon (i.e., not just zebra) hangs or crashes, restart all daemons taking the following steps: (1) stop all other daemons, (2) restart zebra, and (3) start other daemons again. Note that this option also requires -r, -s, and -k options to be specified. -p filename, --pid-file filename Set the process identifier filename (the default value is "/var/run/quagga/watchquagga.pid"). -b string, --blank-string string When the supplied string is found in any of the command line option arguments (i.e., -r, -s, -k, or -R), replace it with a space. This is an ugly hack to circumvent problems with passing the command line arguments containing embedded spaces. -v, --version Display the version information and exit. -h, --help Display the usage information and exit. SEE ALSO
zebra(8), bgpd(8), isisd(8), ospfd(8), ospf6d(8), ripd(8), ripngd(8) See the project homepage at <http://www.quagga.net/>. AUTHORS
Copyright 2004 Andrew J. Schorr July 2010 WATCHQUAGGA(8)
All times are GMT -4. The time now is 11:29 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy