2 # Filename: /etc/init.d/grml-autoconfig
3 # Purpose: basic system configuration and hardware setup for grml system
4 # Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
5 # Bug-Reports: see http://grml.org/bugs/
6 # License: This file is licensed under the GPL v2.
7 ################################################################################
9 # http://wiki.debian.org/LSBInitScripts =>
11 # Provides: grml-autoconfig
12 # Required-Start: $remote_fs
13 # Required-Stop: $remote_fs
15 # Default-Start: S 2 3 4 5
19 # {{{ placeholder functions for restart/reload/stop
20 if [[ $1 == "restart" ]] ; then
21 echo "$0 restart - empty placeholder. Doing nothing but running."
24 if [[ $1 == "force-reload" ]] ; then
25 echo "$0 force-reload - empty placeholder. Doing nothing but running."
28 if [[ $1 == "stop" ]] ; then
29 echo "$0 stop - empty placeholder. Doing nothing but exiting."
34 # {{{ path, signals, umask, zsh, colors
35 export PATH="/bin:/sbin:/usr/bin:/usr/sbin"
37 # Ignore these signals: INT, TERM, SEGV
41 setopt no_nomatch # avoid 'no matches found: ...'
44 # {{{ source main files
45 source /etc/grml/autoconfig # configuration file
46 source /etc/grml/autoconfig.functions # functions
47 source /etc/grml/lsb-functions # helper functions for smart display
50 # {{{ mount important directories
56 # {{{ main grml-autoconfig
57 checkvalue $CONFIG_DEBUG && config_debug
59 # update /etc/mtab if running in live-initramfs mode:
60 if [ -z "$INSTALLED" -a -e /live/cow ] ; then
61 if ! grep -q rootfs /etc/mtab ; then
62 for i in rootfs "none /sys sysfs" proc /live/image /live/cow /lib/init/rw /dev/shm /dev/pts ; do
63 grep $i /proc/mounts | grep -v /dev/.static >> /etc/mtab
71 if [ -z "$BOOTDEBUG" ] ; then
72 einfo "Setting kernel ring buffer to level 2."
73 echo "2" > /proc/sys/kernel/printk ; eend $?
75 einfo "Setting kernel ring buffer to level 6. Adjust manually via running dmesg -n \$VALUE."
76 echo "6" > /proc/sys/kernel/printk ; eend $?
79 checkvalue $CONFIG_SYSLOG && config_syslog
81 if checkbootparam 'forensic' ; then
82 ewarn "Bootopion forensic found. Important notice:" ; eend 0
83 ewarn " Do *NOT* boot with something like 'grml forensic ...' but always use 'forensic ...' instead!" ; eend 0
86 checkvalue $CONFIG_LANGUAGE && config_language
88 checkvalue $CONFIG_LOG && config_log
90 checkvalue $CONFIG_FWTIMEOUT && config_fwtimeout
92 checkvalue $CONFIG_FIX_PASSWD && config_fix_passwd
94 checkvalue $CONFIG_HOSTNAME && config_hostname
96 checkvalue $CONFIG_CONFIGFS && config_configfs
98 checkvalue $CONFIG_TIME && config_time
100 checkvalue $CONFIG_KERNEL && config_kernel
102 checkvalue $CONFIG_SMALL && config_small
104 checkvalue $CONFIG_LD_MOD && config_ld_mod
106 checkvalue $CONFIG_TIMEZONE && config_timezone
108 checkvalue $CONFIG_FAST && config_fast
110 checkvalue $CONFIG_SWRAID && config_swraid
112 checkvalue $CONFIG_DMRAID && config_dmraid
114 checkvalue $CONFIG_LVM && config_lvm
116 # No kernel messages while probing modules
117 echo "0" > /proc/sys/kernel/printk
119 checkvalue $CONFIG_TESTCD && config_testcd
121 checkvalue $CONFIG_MODULES && config_modules
123 checkvalue $CONFIG_BRLTTY && config_brltty
125 checkvalue $CONFIG_ACPI && config_acpi
127 checkvalue $CONFIG_DMA && config_dma
129 checkvalue $CONFIG_FSTAB && config_fstab
131 checkvalue $CONFIG_MOUSE && config_mouse
133 checkvalue $CONFIG_CPU && config_cpu
135 checkvalue $CONFIG_SSH && config_ssh
137 checkvalue $CONFIG_VNC && config_vnc
139 checkvalue $CONFIG_PASSWD && config_passwd
141 checkvalue $CONFIG_EXTRACT && config_extract
143 checkvalue $CONFIG_FINDDCSDIR && config_finddcsdir
145 checkvalue $CONFIG_DEBS && config_debs
147 checkvalue $CONFIG_CONFIG && config_config
149 checkvalue $CONFIG_SCRIPTS && config_scripts
151 checkvalue $CONFIG_FINDDCSDIR && config_umount_dcsdir
153 checkvalue $CONFIG_PARTCONF && config_partconf
155 checkvalue $CONFIG_MIXER && config_mixer
157 checkvalue $CONFIG_MODEM && config_modem
159 checkvalue $CONFIG_WONDERSHAPER && config_wondershaper
161 checkvalue $CONFIG_GPM && config_gpm
163 checkvalue $CONFIG_SERVICES && config_services
165 checkvalue $CONFIG_DEBNET && config_debnet
167 checkvalue $CONFIG_DISPLAY_SSH_FINGERPRINTS && config_display_ssh_fingerprints
169 checkvalue $CONFIG_NETCONFIG && config_netconfig
171 checkvalue $CONFIG_NETSCRIPT && config_netscript
173 checkvalue $CONFIG_NETIPV6 && config_ipv6
175 checkvalue $CONFIG_STATS && config_stats
177 checkvalue $CONFIG_CONSOLE && config_console
179 checkvalue $CONFIG_FIX_UNIONFS && fix_unionfs
181 checkvalue $CONFIG_VIRTUALBOX_SHARED_FOLDERS && config_virtualbox_shared_folders
183 checkvalue $CONFIG_MYPATH && config_mypath
185 checkvalue $CONFIG_DISTCC && config_distcc
187 checkvalue $CONFIG_DISTRI && config_distri
189 checkvalue $CONFIG_BLANKING && config_blanking
191 checkvalue $CONFIG_TOHD && config_tohd
193 checkvalue $CONFIG_DEBOOTSTRAP && config_debootstrap
195 checkvalue $CONFIG_XSTARTUP && config_x_startup
202 if [ -n "$BOOTDEBUG" ] ; then
203 # set only if not already set
204 if [ -z "$CMDLINE" ] ; then
205 CMDLINE="$(cat /proc/cmdline)"
206 [ -d /cdrom/bootparams/ ] && CMDLINE="$CMDLINE $(cat /cdrom/bootparams/*)"
207 [ -d /live/image/bootparams/ ] && CMDLINE="$CMDLINE $(cat /live/image/bootparams/*)"
209 einfo "Bootoption debug detected. Printing kernel command line:"
214 # {{{ Re-enable signals
220 ## END OF FILE #################################################################
221 # vim:foldmethod=marker