mirror of
https://github.com/troglobit/finit.git
synced 2026-10-01 21:42:40 +07:00
This patch drops the default signal handlers for SIGPWR and SIGINT with optional tasks in /etc/finit.conf, triggered by two new conditions: sys/pwr/fail and sys/key/ctrlaltdel, respectively. Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
86 lines
3.2 KiB
Plaintext
86 lines
3.2 KiB
Plaintext
# Sample finit.conf to demonstrate the syntax
|
|
#
|
|
host testbed
|
|
|
|
# Linux kernel modules to load
|
|
module button
|
|
module evdev
|
|
module loop
|
|
module psmouse
|
|
|
|
# Top-level cgroups and their default settings. All groups mandatory
|
|
# but more can be added, max 8 groups in total currently. The cgroup
|
|
# 'root' is also available, reserved for RT processes. Settings are
|
|
# as-is, only one shorthand 'mem.' exists, other than that it's the
|
|
# cgroup v2 controller default names.
|
|
cgroup init cpu.weight:100
|
|
cgroup user cpu.weight:100
|
|
cgroup system cpu.weight:9700 cpu.max:50000
|
|
|
|
# Example extra cgroup
|
|
cgroup maint cpu.weight:100
|
|
|
|
# Runlevel to start after bootstrap, runlevel 'S'
|
|
runlevel 2
|
|
|
|
# Network bringup script
|
|
network service networking start
|
|
|
|
# Max file size for each log file: 100 kiB, rotate max 4 copies:
|
|
# log => log.1 => log.2.gz => log.3.gz => log.4.gz
|
|
log size:100k count:4
|
|
|
|
# Virtual consoles to start getty on
|
|
tty /dev/tty1
|
|
tty /dev/tty2
|
|
tty /dev/tty3
|
|
|
|
# Task to run if ctrl-alt-del is pressed. This condition is asserted by
|
|
# Finit upon receiving SIGINT (from the kernel).
|
|
task <sys/key/ctrlaltdel> [12345789] initctl reboot -- Rebooting system
|
|
|
|
# Task to run if the kernel gets a power fail condition is pressed.
|
|
# Asserted by Finit upon receiving SIGPWR (from the kernel).
|
|
task <sys/pwr/fail> [12345789] initctl poweroff -- Shutting down system
|
|
|
|
# Alternative method instead of runparts
|
|
#task [S] /etc/init.d/keyboard-setup start -- Setting up preliminary keymap
|
|
#task [S] /etc/init.d/acpid start -- Starting ACPI Daemon
|
|
#task [S] /etc/init.d/kbd start -- Preparing console
|
|
#run [2] /etc/init.d/networking start -- Start networking
|
|
|
|
# Services to be monitored and respawned as needed
|
|
|
|
# klgod and syslogd are placed in the maint cgroup
|
|
cgroup.maint
|
|
service [2345] <pid/syslogd> klogd -n -- Kernel logging server
|
|
service [2345] syslogd -n -- Syslog server
|
|
|
|
# gdm in the system cgroup (default when read from it's own .conf file)
|
|
cgroup.system
|
|
service [3] cgroup:cpu.weight:250,mem.max:10M gdm -- GNOME Display Manager
|
|
|
|
# Start SSH daemon with opts from /etc/default/ssh (if available), move
|
|
# to user cgroup with cpu.weight:250. Default for services is system
|
|
# group. Default weight in user group is 100 (above). Max length of
|
|
# cgroup argument is (currently) 63 chars.
|
|
#
|
|
# Notice alternative syntax where current cgroup is only set for this
|
|
# particular service.
|
|
service [2345] cgroup.user:cpu.weight:250,mem.max:10M env:-/etc/default/ssh /usr/sbin/sshd -D $SSHD_OPTS -- OpenSSH daemon
|
|
|
|
# The BusyBox ntpd does not use syslog when running in the foreground
|
|
# So we use this trick to redirect stdout/stderr to a log file. The
|
|
# log file is rotated with the above settings. The condition declares
|
|
# a dependency on a system default route (gateway) to be set. A single
|
|
# <!> at the beginning means ntpd does not respect SIGHUP for restart.
|
|
service [2345] <!net/route/default> log:/var/log/ntpd.log ntpd -n -l -I eth0 -- NTP daemon
|
|
|
|
# Run start scripts from this directory
|
|
# runparts /etc/start.d
|
|
|
|
# For multiple instances of the same service, add :ID somewhere between
|
|
# the service/run/task keyword and the command.
|
|
service :80 [2345] /sbin/httpd -f -h /http -p 80 -- Web server
|
|
service :8080 [2345] /sbin/httpd -f -h /http -p 8080 -- Old web server
|