On Sat, 4 Dec 2010, Michael D. Berger wrote: > To: centos at centos.org > From: Michael D. Berger <m_d_berger_1900 at yahoo.com> > Subject: [CentOS] # chkconfig: kill at run level 3 > > In the control script of my daemon in /etc/init.d?, I have > # chkconfig: 35 97 3 > > The result of this is that I have links: > /etc/rc.d/rc1.d/K03... > /etc/rc.d/rc3.d/S97... > /etc/rc.d/rc5.d/S97... > > As mentioned in a previous thread, my complex daemon throws > an exception when I shutdown. Perhaps things might be better > if I had: > /etc/rc.d/rc3.d/K03... > > Might this be a good idea? If so, how can I make it happen > automatically? What I would suggest is using mc file/directory browser: cd to /etc/init.d/ create a directory called tmp-backups make a copy of all the init scripts in above directory Working in /etc/init.d/ find the start/stop script that's giving you problems. Copy it to another filename, eg (your-initials)-scriptname (That way any init scripts you add will all be in one place, starting with your initials) and easy to find. Gut the new script, and use it as a skeleton to create your own init start/stop script. Decide what you want the script to do at start time, and at stop time. Alter the parameters for when the script starts and stops, at the top of the file. Make this script run at shutdown before the main script you copied it from. You might need to add a shell conditional to prevent the script from shutting down your app straight away at boot time. Use chkconfig to automatically create the necessary start/stop files for each run level. See 'pinfo chkconfig' NAME chkconfig - updates and queries runlevel information for system services SYNOPSIS chkconfig --list [name] chkconfig --add name chkconfig --del name chkconfig [--level levels] name <on|off|reset|resetpriorities> chkconfig [--level levels] name DESCRIPTION chkconfig provides a simple command-line tool for maintaining the /etc/rc[0-6].d directory hierarchy by relieving system administra-tors of the task of directly manipulating the numerous symbolic links in those directories. You might even be able to create a stop script without the associated start script. Each start/stop script in /etc/rc0.d - rc6.d is a symlink to the actual script in /etc/init.d/ The rc*.d start scripts have the format: @S00scriptname and the stop scripts @K00scriptname These scripts are run in ascending numeric order, so you will need to create a kill script (K00myscript) that is numbered befroe the script you want to affect. Please see this old SuSE documentation for a good description of the Linux boot process: http://linuxmafia.com/linux/suse-linux-internals/part2.html HTH Kind Regards, Keith Roberts -- In theory, theory and practice are the same; in practice they are not. This email was sent from my laptop with Centos 5.5