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 # Latest change: Mit Jul 25 19:59:07 CEST 2007 [mika]
8 ################################################################################
10 # http://wiki.debian.org/LSBInitScripts =>
12 # Provides: grml-autoconfig
16 # Default-Start: S 2 3 4 5
20 # {{{ placeholder functions for restart/reload/stop
21 if [[ $1 == "restart" ]] ; then
22 echo "$0 restart - empty placeholder. Doing nothing but running."
25 if [[ $1 == "force-reload" ]] ; then
26 echo "$0 force-reload - empty placeholder. Doing nothing but running."
29 if [[ $1 == "stop" ]] ; then
30 echo "$0 stop - empty placeholder. Doing nothing but exiting."
35 # {{{ path, signals, umask, zsh, colors
36 export PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin"
38 # Ignore these signals: INT, TERM, SEGV
42 setopt no_nomatch # avoid 'no matches found: ...'
45 # {{{ source main files
46 source /etc/grml/autoconfig # configuration file
47 source /etc/grml/autoconfig.functions # functions
48 source /etc/grml/lsb-functions # helper functions for smart display
51 # {{{ mount important directories
57 # {{{ Read in boot parameters
58 CMDLINE="$(cat /proc/cmdline)"
59 [ -d /cdrom/bootparams/ ] && CMDLINE="$CMDLINE $(cat /cdrom/bootparams/* | tr '\n' ' ')"
62 # {{{ main grml-autoconfig
63 checkvalue $CONFIG_DEBUG && config_debug
66 if checkbootparam "textsplash" || checkbootparam "tsplash"; then
70 if [ -z "$SPLASH" ] ; then
75 if [ -z "$BOOTDEBUG" ] ; then
76 einfo "Setting kernel ring buffer to level 2."
77 echo "2" > /proc/sys/kernel/printk ; eend $?
79 einfo "Setting kernel ring buffer to level 6. Adjust manually via running dmesg -n \$VALUE."
80 echo "6" > /proc/sys/kernel/printk ; eend $?
83 if checkbootparam "forensic" ; then
84 eerror "Bootopion forensic found. Important notice!"
85 eerror " Do *not* boot with something like 'grml forensic ...' but with 'forensic ...' instead!"
86 eerror " To avoid damage to your system a debugshell will be started after a delay of 10 seconds." ; eend 1
87 eerror " If you want to continue booting just exit the shell, but think about what you are doing!" ; eend 1
92 if [ -n "$SPLASH" ] ; then
93 /usr/bin/grml-bootsplash "|">/dev/tty14
97 checkvalue $CONFIG_LANGUAGE && config_language
99 checkvalue $CONFIG_LOG && config_log
101 checkvalue $CONFIG_SWSPEAK && config_swspeak
103 checkvalue $CONFIG_FWTIMEOUT && config_fwtimeout
105 checkvalue $CONFIG_FIX_PASSWD && config_fix_passwd
107 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "||">/dev/tty14
109 checkvalue $CONFIG_HOSTNAME && config_hostname
111 checkvalue $CONFIG_USERFSTAB && config_userfstab
113 checkvalue $CONFIG_TIME && config_time
115 checkvalue $CONFIG_KERNEL && config_kernel
117 checkvalue $CONFIG_VMWARE && config_vmware
119 checkvalue $CONFIG_QEMU && config_qemu
121 checkvalue $CONFIG_SMALL && config_small
123 checkvalue $CONFIG_LD_MOD && config_ld_mod
125 checkvalue $CONFIG_TIMEZONE && config_timezone
127 checkvalue $CONFIG_FAST && config_fast
129 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "|||">/dev/tty14
131 checkvalue $CONFIG_ENVIRONMENT && config_environment
133 checkvalue $CONFIG_SWRAID && config_swraid
135 checkvalue $CONFIG_LVM && config_lvm
137 # No kernel messages while probing modules
138 echo "0" > /proc/sys/kernel/printk
140 checkvalue $CONFIG_CDROM_PERM && config_cdrom_perm
142 checkvalue $CONFIG_LOCAL_NET && config_local_net
144 checkvalue $CONFIG_FIREWIRE_DEV && config_firewire_dev
146 checkvalue $CONFIG_TESTCD && config_testcd
148 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "||||">/dev/tty14
150 checkvalue $CONFIG_DISCOVER && config_discover
152 checkvalue $CONFIG_HWINFO && config_hwinfo
154 checkvalue $CONFIG_HOTPLUG_AGENT && config_hotplug_agent
156 checkvalue $CONFIG_HOTPLUG_BLACKLIST && config_hotplug_blacklist
158 checkvalue $CONFIG_HOTPLUG_MAIN && config_hotplug
160 checkvalue $CONFIG_MODULES && config_modules
162 checkvalue $CONFIG_ACPI_APM && config_acpi_apm
164 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "|||||">/dev/tty14
166 checkvalue $CONFIG_PCMCIA && config_pcmcia
168 # {{{ Read in what hwsetup has found
169 [ -f /etc/sysconfig/grml ] && . /etc/sysconfig/grml
172 checkvalue $CONFIG_KEYBOARD && config_keyboard
174 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "||||||">/dev/tty14
176 checkvalue $CONFIG_BLIND && config_blind
178 checkvalue $CONFIG_INTERACTIVE && config_interactive
180 checkvalue $CONFIG_AGP && config_agp
182 [ -f /etc/sysconfig/grml ] && . /etc/sysconfig/grml
184 checkvalue $CONFIG_AUTOMOUNTER && config_automounter
186 checkvalue $CONFIG_DMA && config_dma
188 checkvalue $CONFIG_FSTAB && config_fstab
190 checkvalue $CONFIG_MOUSE && config_mouse
192 checkvalue $CONFIG_DHCP && config_dhcp
194 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "|||||||">/dev/tty14
196 checkvalue $CONFIG_SYSLOG && config_syslog
198 checkvalue $CONFIG_CPU && config_cpu
200 checkvalue $CONFIG_SSH && config_ssh
202 checkvalue $CONFIG_PASSWD && config_passwd
204 checkvalue $CONFIG_EXTRACT && config_extract
206 checkvalue $CONFIG_HOMEDIR && config_homedir
208 checkvalue $CONFIG_MYCONFIG && config_myconfig
210 checkvalue $CONFIG_DEBS && config_debs
212 checkvalue $CONFIG_SCRIPTS && config_scripts
214 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "||||||||">/dev/tty14
216 checkvalue $CONFIG_CDROM_SCRIPTS && config_cdrom_scripts
218 # device symlinks {{{
219 [ -r /mnt/floppy ] || mkdir /mnt/floppy
220 [ -r /mnt/cdrom ] || mkdir /mnt/cdrom
221 [ -r /mnt/test ] || mkdir /mnt/test
224 checkvalue $CONFIG_MIXER && config_mixer
226 checkvalue $CONFIG_MODEM && config_modem
228 checkvalue $CONFIG_WONDERSHAPER && config_wondershaper
230 checkvalue $CONFIG_GPM && config_gpm
232 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "|||||||||">/dev/tty14
234 checkvalue $CONFIG_SERVICES && config_services
236 checkvalue $CONFIG_NETCONFIG && config_netconfig
238 checkvalue $CONFIG_NETIPV6 && config_ipv6
240 checkvalue $CONFIG_DEBNET && config_debnet
242 [ -n "$SPLASH" ] && /usr/bin/grml-bootsplash "||||||||||">/dev/tty14
244 checkvalue $CONFIG_CONSOLE && config_console
246 checkvalue $CONFIG_SETKEYCODES && config_setkeycodes
248 checkvalue $CONFIG_BLINDSOUND && config_blindsound
250 checkvalue $CONFIG_WELCOME && config_welcome
252 checkvalue $CONFIG_FIX_UNIONFS && fix_unionfs
254 checkvalue $CONFIG_CREATE_MNT_DIRS && create_mnt_dirs
256 checkvalue $CONFIG_915RESOLUTION && config_915resolution
258 checkvalue $CONFIG_IPW3945 && config_ipw3945
260 checkvalue $CONFIG_AUTOMOUNT && config_automount
262 checkvalue $CONFIG_DISTCC && config_distcc
264 checkvalue $CONFIG_DISTRI && config_distri
266 checkvalue $CONFIG_BLANKING && config_blanking
268 if [ -n "$SPLASH" ] ; then
269 /usr/bin/grml-bootsplash "|||||||||||">/dev/tty14
273 checkvalue $CONFIG_GRML2HD && config_grml2hd
275 checkvalue $CONFIG_DEBOOTSTRAP && config_debootstrap
277 checkvalue $CONFIG_XSTARTUP && config_x_startup
281 if [ -z "$SPLASH" ] ; then
286 if [ -n "$BOOTDEBUG" ] ; then
287 CMDLINE="$(cat /proc/cmdline)"
288 [ -d /cdrom/bootparams/ ] && CMDLINE="$CMDLINE $(cat /cdrom/bootparams/*)"
289 einfo "Bootoption debug detected. Printing kernel command line:"
294 # {{{ Re-enable signals
300 ## END OF FILE #################################################################
301 # vim:foldmethod=marker