Initscripts/Writing rc.d scripts
|Summary help replacing me|
|Writing rc.d daemon scripts.|
|Arch Boot Process|
As part of Arch's 'BSD-style' init, rc.d scripts are used to control the starting, stopping and restarting of daemons.
- Source Template:Filename, Template:Filename, and optionally Template:Filename.
- Arguments and other daemon options should be placed in Template:Filename. This is done to separate configuration from logic and to keep a consistent style among daemon scripts.
- Use functions in Template:Filename instead of duplicating their functionality.
- Include at least start, stop and restart as arguments to the script.
- There are some functions provided by Template:Filename:
- stat_busy "<message>": set status busy for printed message (e.g. Starting daemon [BUSY])
- stat_done: set status done (e.g. Starting daemon [DONE])
- stat_fail: set status failed (e.g. Starting daemon [FAILED])
- get_pid <program>: get PID of the program
- ck_pidfile <PID-file> <program>: check whether PID-file is still valid for the program (e.g. ck_pidfile /var/run/daemon.pid daemon || rm -f /var/run/daemon.pid)
- [add|rm]_daemon <program>: add/remove program to running daemons (stored in Template:Filename)
The following is an example for crond. Look in Template:Filename for greater variety.
The configuration file: Template:File
The actual script: Template:File