From 0677328054a51160b79af3fb982b852294c5e175 Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Wed, 20 Aug 2008 12:20:07 +0000 Subject: * merged branch 'initramfs-ng' back intro trunk - requires careful testing ... git-svn-id: http://svn.openslx.org/svn/openslx/openslx/trunk@2055 95ad53e4-c205-0410-b2fa-d234c58c8868 --- initramfs/distro-specs/debian/config-3.1 | 32 -- initramfs/distro-specs/debian/config-4.0 | 32 -- initramfs/distro-specs/debian/config-default | 57 --- initramfs/distro-specs/debian/functions-3.1 | 34 -- initramfs/distro-specs/debian/functions-default | 92 +++-- initramfs/distro-specs/debian/servconf | 19 - initramfs/distro-specs/gentoo/config-2005.1 | 34 -- initramfs/distro-specs/gentoo/config-2006.1 | 0 initramfs/distro-specs/gentoo/config-default | 51 --- initramfs/distro-specs/gentoo/functions-2005.1 | 61 --- initramfs/distro-specs/gentoo/functions-2006.1 | 17 - initramfs/distro-specs/gentoo/functions-default | 321 ---------------- initramfs/distro-specs/suse/config-10.0 | 9 - initramfs/distro-specs/suse/config-10.1 | 37 -- initramfs/distro-specs/suse/config-10.2 | 39 -- initramfs/distro-specs/suse/config-10.3 | 40 -- initramfs/distro-specs/suse/config-9.3 | 30 -- initramfs/distro-specs/suse/config-default | 63 ---- .../suse/files-default/etc/init.d/boot | 285 -------------- initramfs/distro-specs/suse/functions-10.0 | 36 -- initramfs/distro-specs/suse/functions-10.1 | 131 ------- initramfs/distro-specs/suse/functions-10.2 | 170 --------- initramfs/distro-specs/suse/functions-10.3 | 61 --- initramfs/distro-specs/suse/functions-9.3 | 82 ---- initramfs/distro-specs/suse/functions-default | 419 ++++++++++++++++----- initramfs/distro-specs/ubuntu/README-ubuntu | 16 - initramfs/distro-specs/ubuntu/config-5.10 | 37 -- initramfs/distro-specs/ubuntu/config-6.06 | 37 -- initramfs/distro-specs/ubuntu/config-6.10 | 42 --- initramfs/distro-specs/ubuntu/config-7.04 | 46 --- initramfs/distro-specs/ubuntu/config-7.10 | 45 --- initramfs/distro-specs/ubuntu/config-8.04 | 45 --- initramfs/distro-specs/ubuntu/config-default | 65 ---- initramfs/distro-specs/ubuntu/functions-5.10 | 72 ---- initramfs/distro-specs/ubuntu/functions-6.06 | 40 -- initramfs/distro-specs/ubuntu/functions-6.10 | 52 --- initramfs/distro-specs/ubuntu/functions-7.04 | 16 - initramfs/distro-specs/ubuntu/functions-7.10 | 35 -- initramfs/distro-specs/ubuntu/functions-8.04 | 26 +- initramfs/distro-specs/ubuntu/functions-default | 152 ++++---- 40 files changed, 460 insertions(+), 2418 deletions(-) delete mode 100644 initramfs/distro-specs/debian/config-3.1 delete mode 100644 initramfs/distro-specs/debian/config-4.0 delete mode 100644 initramfs/distro-specs/debian/config-default delete mode 100644 initramfs/distro-specs/debian/functions-3.1 delete mode 100644 initramfs/distro-specs/debian/servconf delete mode 100644 initramfs/distro-specs/gentoo/config-2005.1 delete mode 100644 initramfs/distro-specs/gentoo/config-2006.1 delete mode 100644 initramfs/distro-specs/gentoo/config-default delete mode 100644 initramfs/distro-specs/gentoo/functions-2005.1 delete mode 100644 initramfs/distro-specs/gentoo/functions-2006.1 delete mode 100644 initramfs/distro-specs/gentoo/functions-default delete mode 100644 initramfs/distro-specs/suse/config-10.0 delete mode 100644 initramfs/distro-specs/suse/config-10.1 delete mode 100644 initramfs/distro-specs/suse/config-10.2 delete mode 100644 initramfs/distro-specs/suse/config-10.3 delete mode 100644 initramfs/distro-specs/suse/config-9.3 delete mode 100644 initramfs/distro-specs/suse/config-default delete mode 100755 initramfs/distro-specs/suse/files-default/etc/init.d/boot delete mode 100644 initramfs/distro-specs/suse/functions-10.0 delete mode 100644 initramfs/distro-specs/suse/functions-10.1 delete mode 100644 initramfs/distro-specs/suse/functions-10.2 delete mode 100644 initramfs/distro-specs/suse/functions-10.3 delete mode 100644 initramfs/distro-specs/suse/functions-9.3 delete mode 100644 initramfs/distro-specs/ubuntu/README-ubuntu delete mode 100644 initramfs/distro-specs/ubuntu/config-5.10 delete mode 100644 initramfs/distro-specs/ubuntu/config-6.06 delete mode 100644 initramfs/distro-specs/ubuntu/config-6.10 delete mode 100644 initramfs/distro-specs/ubuntu/config-7.04 delete mode 100644 initramfs/distro-specs/ubuntu/config-7.10 delete mode 100644 initramfs/distro-specs/ubuntu/config-8.04 delete mode 100644 initramfs/distro-specs/ubuntu/config-default delete mode 100644 initramfs/distro-specs/ubuntu/functions-5.10 delete mode 100644 initramfs/distro-specs/ubuntu/functions-6.06 delete mode 100644 initramfs/distro-specs/ubuntu/functions-6.10 delete mode 100644 initramfs/distro-specs/ubuntu/functions-7.04 delete mode 100644 initramfs/distro-specs/ubuntu/functions-7.10 (limited to 'initramfs/distro-specs') diff --git a/initramfs/distro-specs/debian/config-3.1 b/initramfs/distro-specs/debian/config-3.1 deleted file mode 100644 index 99e34fd1..00000000 --- a/initramfs/distro-specs/debian/config-3.1 +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Version specific general settings for Debian Sarge (3.1) - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) - -# nothing changed (yet) compared to the config-default file diff --git a/initramfs/distro-specs/debian/config-4.0 b/initramfs/distro-specs/debian/config-4.0 deleted file mode 100644 index 69011342..00000000 --- a/initramfs/distro-specs/debian/config-4.0 +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright (c) 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Version specific general settings for Debian Edge (4.1) - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) - -D_RODIRSINRW="etc/gconf etc/X11/xkb /var/cache/fontconfig /var/lib/texmf \ -/var/lib/dpkg" diff --git a/initramfs/distro-specs/debian/config-default b/initramfs/distro-specs/debian/config-default deleted file mode 100644 index 0eb8d668..00000000 --- a/initramfs/distro-specs/debian/config-default +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific general settings for general Debian - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) - -D_SYSCONFDIR=/default -D_ETCEXCL="etc/gconf/*\n*.old\n*-\n\ -etc/autoinstall\nlogrotate*\nbootloader\n*~\n\ -pptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ -X11/xdm/pixmaps\ndhclient.script" -D_BINDMPTS="tmp root home" -D_DIRINBINDMNT="/var/run /var/log /var/tmp /var/lib/gdm /etc/X11" -D_RODIRSINRW="etc/gconf etc/X11/xkb /var/lib/texmf /var/lib/dpkg" -D_DIRINDXS="/var/X11R6/compose-cache \ -/var/run/sysconfig/tmp /var/adm /var/lib/rpm /var/lib/nobody \ -/var/lib/pam_devperm /var/lib/bluetooth \ -/var/lib/texmf /var/lib/nfs/sm \ -/var/lib/misc /var/lib/acpi /var/spool/cron \ -/var/lock/subsys/sysconfig" -D_INITDIR="/init.d" -D_INITBOOTD="/rcS.d" -D_RCDIRS="/rc0.d /rc1.d /rc2.d /rc3.d /rc4.d /rc5.d /rc6.d" -D_INITDEFAULT="3" -# fixme: is keymap.sh really needed? Should be handled in a simpler fashion -# via boot.slx (see hwautocfg) -D_INITSCRIPTS="mountkernfs.sh mountvirtfs udev procps.sh bootlogd $D_SPLASHY keymap.sh hwclock.sh sudo dbus-1" -D_XF86CONFFILE="/etc/X11/xorg.conf" -D_XORGBIN=/usr/X11R6/bin/X -D_XFONTPATH="/usr/X11R6/lib/X11/fonts/*" -D_DEFAULTCOUNTRY="de" diff --git a/initramfs/distro-specs/debian/functions-3.1 b/initramfs/distro-specs/debian/functions-3.1 deleted file mode 100644 index f7e2b2ee..00000000 --- a/initramfs/distro-specs/debian/functions-3.1 +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found at http://openslx.org -# -# Configuration script for Debian Sarge (3.1) to setup linux stateless clients -# (executed within initial ramfs) - -# make a runlevel script -d_mkrlscript () { -local switch=$1 -local name=$2 -local info=$3 -case "$1" in - init) - echo -e "#!/bin/sh\n# skeleton of /etc/${D_INITDIR}/$name created \ -by $0\n# after you applied changes to the creation scripts you have to \ -rerun\n# the mkdxsinitrd script to get them applied\n\ -case \"\$1\" in\n start)\n\ -\techo -n \"$info\"" >>/mnt/etc/${D_INITDIR}/$name - chmod u+x /mnt/etc/${D_INITDIR}/$name - ;; - close) - echo -e "\techo \".\"\n\t;;\n stop)\n\techo \".\"\n\t;;\nesac\nexit\ - 0" >>/mnt/etc/${D_INITDIR}/$name - ;; -esac - diff --git a/initramfs/distro-specs/debian/functions-default b/initramfs/distro-specs/debian/functions-default index 52d4fea9..5edd231f 100644 --- a/initramfs/distro-specs/debian/functions-default +++ b/initramfs/distro-specs/debian/functions-default @@ -1,5 +1,5 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2007 - OpenSLX GmbH +# Copyright (c) 2003..2006 - RZ Uni Freiburg +# Copyright (c) 2007..2008 - OpenSLX GmbH # # This program is free software distributed under the GPL version 2. # See http://openslx.org/COPYING @@ -11,18 +11,44 @@ # # Configuration script for general Debian distributions to setup linux # stateless clients (included within initial ramfs) - + +# distro specific configuration variables used in the setup functions +# (formerly done via config-*, these variables are disputable ...) +# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using +# bind mounts +# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw part +# of the client filesystem +# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on +# TempFS usage +# D_DIRINDXS - directories in client filesystem which should be present anyhow +D_ETCEXCL="etc/gconf/*\n*.old\n*-\n\ +etc/autoinstall\nlogrotate*\nbootloader\n*~\n\ +pptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ +X11/xdm/pixmaps\ndhclient.script" +D_BINDMPTS="tmp root home" +D_DIRINBINDMNT="/var/run /var/log /var/tmp /var/lib/gdm /etc/X11" +D_RODIRSINRW="etc/gconf etc/X11/xkb /var/lib/texmf /var/cache/fontconfig \ +/var/lib/dpkg" +D_DIRINDXS="/var/X11R6/compose-cache \ +/var/run/sysconfig/tmp /var/adm /var/lib/rpm /var/lib/nobody \ +/var/lib/pam_devperm /var/lib/bluetooth \ +/var/lib/texmf /var/lib/nfs/sm \ +/var/lib/misc /var/lib/acpi /var/spool/cron \ +/var/lock/subsys/sysconfig" + # empty functions are defined at the beginning of /etc/functions # distro specific stuff to initialize preinit () { - echo "Creating dhcp user" - echo "dhcp:x:101:" >>/etc/group - echo "dhcp:x:101:101::/nonexistent:/bin/false" >>/etc/passwd +: } # distro specific function called from servconfig script config_distro () { + # clean the runlevel directories which will be populated by the stage3 setup + for dir in rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d rcS.d ; do + rm -rf /mnt/etc/${dir}/* + done # add the halt link to the 0 and 6 runlevel directories ln -sf ../init.d/halt /mnt/etc/rc0.d/S90halt ln -sf ../init.d/reboot /mnt/etc/rc6.d/S90reboot @@ -35,6 +61,20 @@ config_distro () { sed -e "s/.*initdefault/id:${D_INITDEFAULT}:initdefault/" -i /mnt/etc/inittab } +# initial (boot time) runlevel scripts +initial_boot () { +local count=10 +# boot.slx is a special runlevel script generated within initialramfs which +# should be executed before the normal runlevel scripts. Proper shutdown is +# not needed!? +for i in boot.slx mountkernfs.sh mountvirtfs udev procps.sh bootlogd \ + $D_SPLASHY keymap.sh hwclock.sh sudo dbus-1; do + count=$(($count + 1)) + [ $DEBUGLEVEL -ge 2 ] && echo "boot-runlevelscript $i" + ln -sf /etc/init.d/$i /mnt/etc/rcS.d/S${count}$i +done +} + # linking runlevel scripts rllinker () { local script="$1" @@ -61,16 +101,16 @@ local name=$2 local info=$3 case "$1" in init) - echo -e "#!/bin/sh\n# skeleton of /etc/${D_INITDIR}/$name created \ + echo -e "#!/bin/sh\n# skeleton of /etc/init.d/$name created \ by $0\n# after you applied changes to the creation scripts you have to \ rerun\n# the mkdxsinitrd script to get them applied\n\ . /lib/lsb/init-functions\ncase \"\$1\" in\n start)\n\ -\tlog_begin_msg \"$info\"" >>/mnt/etc/${D_INITDIR}/$name - chmod u+x /mnt/etc/${D_INITDIR}/$name +\tlog_begin_msg \"$info\"" >>/mnt/etc/init.d/$name + chmod u+x /mnt/etc/init.d/$name ;; close) echo -e "\tlog_end_msg \$?\n\t;;\n stop)\n\tlog_end_msg \$?\n\t;;\ - \nesac\nexit 0" >>/mnt/etc/${D_INITDIR}/$name + \nesac\nexit 0" >>/mnt/etc/init.d/$name ;; esac } @@ -150,17 +190,17 @@ if [ "x$start_snmp" = "xyes" ] ; then #PATH=\"\$PATH:/var/X11R6/bin\"" >>/mnt/etc/profile } -# consolefont and language -consolefont () { +# localization like consolefont and language +dlocale () { # console font setting program not available in Debian 4!? echo -e "\t#setfont ${CONSOLE_FONT} >${LOGFILE} 2>&1" \ - >>/mnt/etc/${D_INITDIR}/boot.slx -chmod 744 /mnt/etc/${D_INITDIR}/boot.slx + >>/mnt/etc/init.d/boot.slx +chmod 744 /mnt/etc/init.d/boot.slx # fixme!! check for proper operation # sed -e "s,LANGUAGE=.*,LANGUAGE=\"${LANG}\" # set within initramfs," \ # -e "s,LANG=.*,LANG=\"${LANG}\" # set within initramfs," \ # -i /mnt/etc/environment -sed -e "s,LANG=.*,LANG=\"${LANG}\" # set within initramfs," \ +sed -e "s,LANG=.*,LANG=\"${LANG}\," # set within initramfs," \ -i /mnt/etc/default/locale } @@ -171,25 +211,3 @@ if [ "x$start_dreshal" = "xyes" ]; then fi } -# overwrite settings set by hwautocfg, pathes will change for newer -# Xorg version 7.X -displayvars (){ -Files=' \t FontPath\t\t "/usr/share/X11/fonts/misc"\n -\t FontPath\t\t "/usr/share/X11/fonts/100dpi/:unscaled"\n -\t FontPath\t\t "/usr/share/X11/fonts/75dpi/:unscaled"\n -\t FontPath\t\t "/usr/share/X11/fonts/Type1"\n -\t FontPath\t\t "/usr/share/X11/fonts/100dpi"\n -\t FontPath\t\t "/usr/share/X11/fonts/75dpi"\n -' -Module=' \t Load\t "i2c"\n -\t Load\t "bitmap"\n -\t Load\t "ddc"\n -\t Load\t "dri"\n -\t Load\t "extmod"\n -\t Load\t "freetype"\n -\t Load\t "glx"\n -\t Load\t "int10"\n -\t Load\t "type1"\n -\t Load\t "vbe"\n' -synapticsdrv="" -} diff --git a/initramfs/distro-specs/debian/servconf b/initramfs/distro-specs/debian/servconf deleted file mode 100644 index 9e711042..00000000 --- a/initramfs/distro-specs/debian/servconf +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh -# -# Description: configuration script for Debian/Sarge to configure -# linux diskless clients (executed within initial -# ramdisk after genconfig) -# -# Author(s): Dirk von Suchodoletz , 13-12-2005 -# Blabla -# Blub -# -# Copyright: (c) 2003, 2005 - RZ Universitaet Freiburg -# -# Version: 0.3.5k - -# check for configuration files to source - -# ldap, dhcp, file - - diff --git a/initramfs/distro-specs/gentoo/config-2005.1 b/initramfs/distro-specs/gentoo/config-2005.1 deleted file mode 100644 index 3ff2d180..00000000 --- a/initramfs/distro-specs/gentoo/config-2005.1 +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright (c) 2006 - RZ Uni Freiburg -# Copyright (c) 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# distro specific settings for Gentoo 2005.1 - -# D_SYSCONFDIR - system wide configuration settings in /etc - sysconfig in -# SuSE and RedHat, default in Debian and Ubuntu, conf.d in Gentoo -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_RCDIRS - runlevel directories relative to /etc -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -D_DIRINDXS="/var/run/xauth /var/lib/init.d/started /var/lib/nobody \ -/var/lib/texmf /var/lib/nfs/sm \ -/var/lib/misc /var/lib/acpi /var/spool/cron /var/lock/subsys" -D_INITSCRIPTS="localmount keymaps clock urandom serial alsasound $D_SPLASHY" - diff --git a/initramfs/distro-specs/gentoo/config-2006.1 b/initramfs/distro-specs/gentoo/config-2006.1 deleted file mode 100644 index e69de29b..00000000 diff --git a/initramfs/distro-specs/gentoo/config-default b/initramfs/distro-specs/gentoo/config-default deleted file mode 100644 index 38928300..00000000 --- a/initramfs/distro-specs/gentoo/config-default +++ /dev/null @@ -1,51 +0,0 @@ -# Copyright (c) 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# general distro specific settings for Gentoo - -# D_SYSCONFDIR - system wide configuration settings in /etc - sysconfig in -# SuSE and RedHat, default in Debian and Ubuntu, conf.d in Gentoo -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_RCDIRS - runlevel directories relative to /etc -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -D_SYSCONFDIR=/conf.d -D_ETCEXCL="opt/gnome/gconf/*\n*.old\n*-\nbootloader\n*~\n\ -pptp.d\nisdn\nX11/xdm/pixmaps\ndhclient*script\nxorg.conf.*" -D_BINDMPTS="tmp root home" -D_DIRINBINDMNT="/var/run /var/log /var/tmp" -D_RODIRSINRW="/etc/gconf /etc/splash" -D_DIRINDXS="/var/run/xauth /var/lib/init.d/started /var/lib/init.d/starting \ -/var/lib/init.d/daemons /var/lib/nobody \ -/var/lib/texmf /var/lib/nfs/sm \ -/var/lib/misc /var/lib/acpi /var/spool/cron /var/lock/subsys" -D_INITDIR="/init.d" -D_INITBOOTD="/runlevels/boot" -D_INITDEFAULT="3" -D_RCDIRS="/runlevels/default /runlevels/single /runlevels/nonetwork" -D_INITSCRIPTS="localmount keymaps clock urandom resmgrd ivman local portmap $D_SPLASHY" -D_XF86CONFFILE="/etc/X11/xorg.conf" -D_XORGBIN=/usr/bin/Xorg -D_XFONTPATH="/usr/share/fonts/*" -D_DEFAULTCOUNTRY="de" -D_HWMODTOIGNORE="i8xx-tco ichxrom snd-atiixp-modem intel-rng" -D_BOOTLOCAL="conf.d/local.start" diff --git a/initramfs/distro-specs/gentoo/functions-2005.1 b/initramfs/distro-specs/gentoo/functions-2005.1 deleted file mode 100644 index ab33f558..00000000 --- a/initramfs/distro-specs/gentoo/functions-2005.1 +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# configuration script for Gentoo linux distribution version 2005.1 to -# configure OpenSLX linux diskless clients (executed within initialramfs -# after genconfig). These settings/functions will overwrite settings within -# the gentoo/functions-default script - -# empty functions are defined at the beginning of /etc/functions - -# distro specific general function called from servconfig script -config_distro () { -echo -e "OpenSLX version 4.0.6\ninitramfs generation date $date" \ - >> /mnt/etc/gentoo-release -echo -e "# changes made to this file by $0 (initrd from $date)" \ - > /etc/rc.conf -# keytable is set by hwautocfg script (added just for convenience here) -config_rc_entry "KEYMAP" "${KEYTABLE}" -} - -# set consolefont -consolefont () { -echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1\n" \ - >>/mnt/etc/${D_INITDIR}/boot.slx -config_rc_entry "CONSOLEFONT" "${CONSOLE_FONT}" -} - -# acpi and powersave -config_acpi () { -rllinker acpid -} - -# configure automounter -config_automount () { -if [ -f /mnt/etc/${D_INITDIR}/autofs ] ; then - rllinker autofs - if [ -n "${automnt_src}" ] ; then - # local directory and home directory server from machine-setup - [ -z "${automnt_dir}" ] && automnt_dir="/home" - strinstr "/" "${automnt_dir}" && error "$df_erratpld" nonfatal - automnt_dir=${automnt_dir#/} - echo -e "/home\t/etc/auto.${automnt_dir}\n" >> /mnt/etc/auto.master - echo -e "# /etc/auto.${automnt_dir} created by $0:\n" \ - > /mnt/etc/auto.${automnt_dir} - echo -e "*\t-rsize=32768,wsize=32768,rw\t${automnt_src}/&" \ - >> /mnt/etc/auto.${automnt_dir} - config_portmap - fi -else - error "$df_erramnt" nonfatal -fi -} - diff --git a/initramfs/distro-specs/gentoo/functions-2006.1 b/initramfs/distro-specs/gentoo/functions-2006.1 deleted file mode 100644 index 4cdd337b..00000000 --- a/initramfs/distro-specs/gentoo/functions-2006.1 +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright (c) 2005 - 2006 - RZ Uni Freiburg -# Copyright (c) 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# configuration script for Gentoo linux distribution version 2006.1 to -# configure OpenSLX linux diskless clients (executed within initialramfs -# after genconfig). These settings/functions will overwrite settings within -# the gentoo/functions-default script - -# no differences from default yet diff --git a/initramfs/distro-specs/gentoo/functions-default b/initramfs/distro-specs/gentoo/functions-default deleted file mode 100644 index 988e7412..00000000 --- a/initramfs/distro-specs/gentoo/functions-default +++ /dev/null @@ -1,321 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration script for Gentoo linux distribution to configure OpenSLX -# linux diskless clients (executed within initialramfs after genconfig) - -# empty functions are defined at the beginning of /etc/functions - -# distro specific general function called from servconfig script -config_distro () { - echo -e "OpenSLX version ${SLXVERSION}\ninitramfs generation date $date" \ - >> /mnt/etc/gentoo-release - echo -e "# changes made to this file by $0 (initramfs from $date)" \ - > /etc/rc.conf - # keytable is set by hwautocfg script (added just for convenience here) - config_rc_entry "KEYMAP" "${KEYTABLE}" "conf.d/keymaps" - # fixme: check for strange udev rules which want to rename eth* names! -} - -# linking runlevel scripts and defining execution order -rllinker () { -local script="$1" -local after="$2" -# empty runlevel links - decision on running certain services is -# passed via configuration -if strinstr "$script" "boot boot.slx ${D_INITSCRIPTS}" ; then - ln -s /etc/${D_INITDIR}/$script /mnt/etc/runlevels/boot/$script - echo $script >> /mnt/etc/runlevels/boot/.critical -else - ln -s /etc/${D_INITDIR}/$script /mnt/etc/runlevels/default/$script - echo $script >> /mnt/etc/runlevels/default/.critical -fi -if [ -n "$after" ] ; then - sedscript "$after" - sed -f /tmp/sedscript -i /mnt/etc/${D_INITDIR}/$script -else - sed "/depend/,/}/d" -i /mnt/etc/${D_INITDIR}/$script -fi -} - -# sed script writer -sedscript () { -echo -e "/depend/,/}/{\n/^[[:space:]]/d\n/depend/i\\" >/tmp/sedscript -echo -e "# modified within initial ramfs/stage3\n/depend/a\\" >>/tmp/sedscript -echo -e "\tafter $1\n}" >> /tmp/sedscript -} - -# setup initial boot scripts (rather strange concept I did not get -# completely) -initial_boot () { -local scripts=$* -local after="" -local script -d_mkrlscript init boot "Starting Gentoo base initialization" -cat >>/mnt/etc/${D_INITDIR}/boot </dev/null - if [ -d /sys ] ; then - while read a b c ; do - case "\$b" in - sysfs) - #echo -n "Mounting /sys filesystem" - echo -e "sysfs\t\t/sys\t\tsysfs\t\trw\t\t 0 0\n" >>/etc/fstab - mount -t sysfs sysfs /sys - ret=0 - break - ;; - esac - done < /proc/filesystems - fi - # Function try() needed by udev, since it's a critical task... - # Originally from /sbin/rc gentoo-sysinit-script - try() { - local errstr - local retval=0 - - if [ -c /dev/null ]; then - errstr="\$((eval \$*) 2>&1 >/dev/null)" - else - errstr="\$((eval \$*) 2>&1)" - fi - retval=\$? - if [ "\${retval}" -ne 0 ] - then - splash "critical" & - - echo -e "\${ENDCOL}\${NORMAL}[\${BAD} oops \${NORMAL}]" - echo - eerror "The \"\${1}\" command failed with error:" - echo - echo "\${errstr#*: }" - echo - eerror "Since this is a critical task, startup cannot continue." - echo - /sbin/sulogin \${CONSOLE} - einfo "Unmounting filesystems" - if [ -c /dev/null ]; then - /bin/mount -a -o remount,ro &>/dev/null - else - /bin/mount -a -o remount,ro - fi - einfo "Rebooting" - /sbin/reboot -f - fi - - return \${retval} - } - # Starting udev (normally handled by /sbin/rc sysinit) - source "\${svclib}/addons/udev-start.sh" - mount -t devpts -o mode=0620,gid=5 devpts /dev/pts - rm -rf /dev/.rcsysinit - #/bin/bash - eend \${ret} "\${errstr}" -EOF -d_mkrlscript close boot -for script in boot boot.slx $scripts ; do - # to get a certain order of scripts the after token of depends () might be - # used - rllinker "$script" "$after" - after=$script -done -# avoid the bullshit of "system initialization" -sed -e "s/# System init.*//;s/si::.*//" -i /mnt/etc/inittab -# initial script which is executed last -lastinit="$after" -} - -# initialize boot.slx - skript to be executed during early system startup -# (before most of the normal boot init scripts) -# this script should operate like a normal runlevel script -# initialize boot.slx - skript to be executed during early system startup -# (before most of the normal boot init scripts) -# this script should operate like a normal runlevel script (fixme!!) -d_mkrlscript () { -local switch="$1" -local name="$2" -local info="$3" -case "$switch" in - init) - echo -e "#!/sbin/runscript\n# skeleton of /etc/${D_INITDIR}/$name \ -generated by $0\ndepend() {\n\t:\n}" >/mnt/etc/${D_INITDIR}/$name - echo -e "\n\nstart() {\n\tebegin \"$info\"" \ - >>/mnt/etc/${D_INITDIR}/$name - chmod u+x /mnt/etc/${D_INITDIR}/$name - ;; - close) - echo -e "\n}\n\nstop() {\n\t:\n}\n# vim:ts=4" \ - >>/mnt/etc/${D_INITDIR}/$name - ;; -esac -} - -# group of functions for the normal runlevels -# function for ntp configuration (unchecked) -config_ntp () { -if [ -e /mnt/etc/${D_INITDIR}/ntp ] ; then - if ! strinfile "ntp:" /mnt/etc/passwd ; then - echo -e "ntp:x:74:65534:NTP daemon:/var/lib/ntp:/bin/false" \ - >>/mnt/etc/passwd - echo -e "ntp:!:13099:0:99999:7:::" >>/mnt/etc/shadow - fi - testmkd /mnt/var/lib/ntp/var/run/ntp &>/dev/null - if [ "x$start_ntp" = "xyes" ] ; then - rllinker "ntp" - fi -fi -} - -# function for atd (unchecked) -config_atd () { -if [ "x$start_atd" = "xyes" ]; then - rllinker "atd" -fi -} - -# cron service -config_cron () { -if [ "x$start_cron" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/vixie-cron ] ; then - : - else - error "$df_errcron" nonfatal - fi -fi -} - -# syslog service -config_syslog () { -if [ "x$start_syslog" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/syslog-ng ] ; then - rllinker syslog-ng - else - error "$df_errsysl" nonfatal - fi -fi -} - -# secure shell service -config_sshd () { -if [ "x$start_sshd" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/sshd ] ; then - rllinker "sshd" - else - error "$df_errsshd" nonfatal - fi -fi -} - -# snmp agent for remote monitoring (unchecked) -config_snmp () { -if [ "x$start_snmp" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/snmpd ] ; then - rllinker "snmpd" - testmkd /mnt/var/lib/net-snmp >/dev/null 2>&1 - fi - # fixme!! - # write service monitor depending on services started -fi -} - -# change entries in rc.conf (mostly for convenience only) -config_rc_entry () { -local var=$1 -local value=$2 -local file=$3 -[ -z $file ] && file=rc.conf -sed -e "s,$var=.*,$var=\"$value\"," -i /mnt/etc/${file} -} - -# configure bluetooth services -config_bt () { -if [ -f /mnt/etc/init.d/bluetooth ] ; then - rllinker "bluetooth" -else - error "" nonfatal -fi -} - -# set consolefont -consolefont () { -echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1\n" \ - >>/mnt/etc/${D_INITDIR}/boot.slx -config_rc_entry "CONSOLEFONT" "${CONSOLE_FONT}" "conf.d/consolefont" -} - -# acpi and powersave -config_acpi () { -rllinker acpid -} - -# configure automounter -config_automount () { -if [ -f /mnt/etc/${D_INITDIR}/autofs ] ; then - rllinker autofs - if [ -n "${automnt_src}" ] ; then - # local directory and home directory server from machine-setup - [ -z "${automnt_dir}" ] && automnt_dir="/home" - strinstr "/" "${automnt_dir}" && error "$df_erratpld" nonfatal - automnt_dir=${automnt_dir#/} - echo -e "/home\t/etc/auto.${automnt_dir}\n" >> /mnt/etc/auto.master - echo -e "# /etc/auto.${automnt_dir} created by $0:\n" \ - > /mnt/etc/auto.${automnt_dir} - echo -e "*\t-rsize=32768,wsize=32768,rw\t${automnt_src}/&" \ - >> /mnt/etc/auto.${automnt_dir} - config_portmap - fi -else - error "$df_erramnt" nonfatal -fi -} - -# start name service caching daemon (recommended in combination with -# ldap source as user admin base) -config_nscd () { -if [ -f /mnt/etc/${D_INITDIR}/nscd ] ; then - #testmkd /mnt/var/run/nscd - rllinker "nscd" -fi -} - -# start portmapper (needed at least for nfs and nis services - unchecked) -# gentoo: netmount??? -config_portmap () { -rllinker "portmap" -} - -# start NIS (fixmee: does the start script is really named ypbind?) -config_nis () { -rllinker "ypbind" -} - -# Xorg variable settings. Lots of stuff changed for newer Xorg servers -displayvars () { -Files='\tModulePath\t"/etc/X11/modules"\n -\tModulePath\t"/usr/lib/xorg/modules"\n -\tRgbPath\t\t"/usr/share/X11/rgb"\n -\tFontPath\t"/usr/share/fonts/TTF/"\n -\tFontPath\t"/usr/share/fonts/OTF/"\n -\tFontPath\t"/usr/share/fonts/Type1/"\n -\tFontPath\t"/usr/share/fonts/CID/"\n -\tFontPath\t"/usr/share/fonts/misc/"\n -\tFontPath\t"/usr/share/fonts/75dpi/"\n -\tFontPath\t"/usr/share/fonts/100dpi/"' -InputDevice='\tIdentifier\t"Keyboard1"\n -\tDriver\t\t"kbd"\n -\tOption\t\t"XkbRules"\t\t"xorg"\n -\tOption\t\t"XkbLayout"\t\t"XKEYBOARD"\n -\tOption\t\t"XkbModel"\t\t"pc105"\n -\tOption\t\t"XkbOptions"\t\t"lv3:ralt_switch"\n -\tOption\t\t"XkbVariant"\t\t"nodeadkeys"' -synapticsdrv="/usr/lib/xorg/modules/input/synaptics_drv.o" -} diff --git a/initramfs/distro-specs/suse/config-10.0 b/initramfs/distro-specs/suse/config-10.0 deleted file mode 100644 index 4cdba28e..00000000 --- a/initramfs/distro-specs/suse/config-10.0 +++ /dev/null @@ -1,9 +0,0 @@ -# Description: distro specific settings for SuSE 10.0. This file merily -# contains changes from the SuSE base configuration file -# (suse/config-default) -# -# Author(s): Dirk von Suchodoletz , 26-01-2006 -# -# Copyright: (c) 2003, 2006 - RZ Universitaet Freiburg - -# nothing changed yet diff --git a/initramfs/distro-specs/suse/config-10.1 b/initramfs/distro-specs/suse/config-10.1 deleted file mode 100644 index 82e25045..00000000 --- a/initramfs/distro-specs/suse/config-10.1 +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for SuSE 10.1. This configuration might change -# settings from SuSE default configuration file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -D_INITSCRIPTS="kbd boot.udev boot.proc boot.klog boot.loadmodules boot.clock \ -boot.sysctl boot.ipconfig boot.swap $D_SPLASHY" -D_RODIRSINRW="/etc/opt/gnome/gconf /etc/X11/xkb /var/adm /var/lib/texmf \ -/var/lib/rpm /var/cache/fontconfig" diff --git a/initramfs/distro-specs/suse/config-10.2 b/initramfs/distro-specs/suse/config-10.2 deleted file mode 100644 index c3d44800..00000000 --- a/initramfs/distro-specs/suse/config-10.2 +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for OpenSuSE 10.2. This configuration might change -# settings from SuSE default configuration file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# D_XORGBIN - name of XFree/Xorg server with absolute path -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -D_INITSCRIPTS="boot.udev boot.proc boot.klog boot.loadmodules boot.clock \ -boot.sysctl boot.ipconfig boot.swap $D_SPLASHY" -D_RODIRSINRW="/etc/opt/gnome/gconf /var/adm /var/lib/texmf /var/lib/rpm \ -/var/cache/fontconfig" -#D_HWMODTOIGNORE="i8xx-tco ichxrom snd-atiixp-modem intel-rng pata_atiixp" -D_XORGBIN=/usr/bin/Xorg diff --git a/initramfs/distro-specs/suse/config-10.3 b/initramfs/distro-specs/suse/config-10.3 deleted file mode 100644 index 97bb9b43..00000000 --- a/initramfs/distro-specs/suse/config-10.3 +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for OpenSuSE 10.3. This configuration might change -# settings from SuSE default configuration file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# D_XORGBIN - name of XFree/Xorg server with absolute path -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -D_INITSCRIPTS="boot.udev boot.proc boot.klog boot.loadmodules boot.clock \ -boot.sysctl boot.ipconfig boot.swap $D_SPLASHY" -D_RODIRSINRW="/etc/gconf /etc/opt/kde3/share/icons /var/adm /var/lib/texmf \ -/var/lib/rpm /var/cache/fontconfig" -#D_HWMODTOIGNORE="i8xx-tco ichxrom snd-atiixp-modem intel-rng pata_atiixp" -D_HWMODTOIGNORE="i8xx-tco ichxrom snd-atiixp-modem intel-rng" -D_XORGBIN=/usr/bin/Xorg diff --git a/initramfs/distro-specs/suse/config-9.3 b/initramfs/distro-specs/suse/config-9.3 deleted file mode 100644 index 5fb82825..00000000 --- a/initramfs/distro-specs/suse/config-9.3 +++ /dev/null @@ -1,30 +0,0 @@ -# Description: distro specific settings for SuSE 9.3. This configuration -# is the base for following SuSE versions until the changes -# within them require a major change -# -# Author(s): Dirk von Suchodoletz , 23-06-2006 -# -# Copyright: (c) 2003, 2005 - RZ Universitaet Freiburg - - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -# just the default \ No newline at end of file diff --git a/initramfs/distro-specs/suse/config-default b/initramfs/distro-specs/suse/config-default deleted file mode 100644 index ccd45ac6..00000000 --- a/initramfs/distro-specs/suse/config-default +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for general SuSE. This configuration is the base -# for following (Open)SuSE versions: 9.3 - 10.2 - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -D_SYSCONFDIR=/sysconfig -D_ETCEXCL="*.old\n*-\n*.rpmorig\n*.rpmnew\n\ -*.YaST2save\netc/autoinstall\nlogrotate*\nbootloader\n*~\n\ -*.SuSEconfig.saved\npptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ -X11/xdm/pixmaps\n*.rpmsave\ndhclient*script\nxorg.conf.*" -D_BINDMPTS="tmp root media home" -D_DIRINBINDMNT="/var/run /var/log /var/tmp" -D_RODIRSINRW="/etc/opt/gnome/gconf /etc/X11/xkb /var/adm /var/lib/texmf \ -/var/lib/rpm" -D_DIRINDXS="/var/X11R6/compose-cache \ -/var/run/sysconfig/tmp /var/adm /var/lib/rpm /var/lib/nobody \ -/var/lib/pam_devperm /var/lib/bluetooth \ -/var/lib/texmf /var/lib/nfs/sm \ -/var/lib/misc /var/lib/acpi /var/spool/cron \ -/var/lock/subsys/sysconfig" -D_INITDIR="/init.d" -D_INITBOOTD="${D_INITDIR}/boot.d" -D_INITDEFAULT="5" -D_RCDIRS="/init.d/rc0.d /init.d/rc1.d /init.d/rc2.d /init.d/rc3.d \ -/init.d/rc4.d /init.d/rc5.d /init.d/rc6.d /init.d/rcS.d" -D_INITSCRIPTS="boot.udev boot.proc boot.shm boot.klog boot.loadmodules \ -boot.clock boot.sysctl boot.ipconfig boot.swap $D_SPLASHY" -D_XF86CONFFILE="/etc/X11/xorg.conf" -D_XORGBIN=/usr/X11R6/bin/Xorg -D_XFONTPATH="/usr/X11R6/lib/X11/fonts/*" -D_DEFAULTCOUNTRY="de" -D_HWMODTOIGNORE="i8xx-tco ichxrom snd-atiixp-modem intel-rng" -D_BOOTLOCAL="init.d/boot.local" diff --git a/initramfs/distro-specs/suse/files-default/etc/init.d/boot b/initramfs/distro-specs/suse/files-default/etc/init.d/boot deleted file mode 100755 index ff0374dd..00000000 --- a/initramfs/distro-specs/suse/files-default/etc/init.d/boot +++ /dev/null @@ -1,285 +0,0 @@ -#!/bin/sh -# -# Description: Modificated /etc/init.d/boot for use with Diskless -# X Stations (v4.0) -> replaces /etc/init.d/boot -# simply copied over the original file in initrd -# -# Author(s): Dirk von Suchodoletz , 08-04-2006 -# Copyright: (c) 2003, 2006 - RZ Universitaet Freiburg -# -# Version: 0.0.2b -# -# Some parts taken from /etc/init.d/boot by -# -# Copyright (c) 1996-2004 SuSE Linux AG, Nuernberg, Germany. -# All rights reserved. -# -# Author: Ruediger Oertel , 1996-2002 -# Werner Fink , 1996-2003 -# Burchard Steinbild, 1996-2000 -# Florian La Roche, 1996 -# -# first script to be executed from init on system startup -# -# Most of preparation is done within the initial ramdisk -# -################################################################ - -# Before we do anything else, try at first to activate SELinux support -test -d /selinux && mount -n -t selinuxfs none /selinux &>/dev/null - -# Configuration and coloring of the boot messages -. /etc/rc.status -. /etc/sysconfig/boot -. /etc/sysconfig/logfile - -# Avoid be interrupted by child or keyboard -trap "echo" SIGINT SIGSEGV SIGQUIT -set +e - -# reasonable start values for bootsplash progress -export progress=0 -export sscripts=45 -export kscripts=45 - -echo -n "System Boot Control: " -echo "Running $0" - -################################################################ -# - -# some important (un)mounts -rc_reset -echo -n "Mounting /proc, /sys and /dev/pts filesystems" -# file /etc/fstab in some scenarios not available -mount -t proc proc /proc &>/dev/null -rc_status -v -r - -echo -n "Mounting /dev/pts" -mount -t devpts -o mode=0620,gid=5 devpts /dev/pts -rc_status -v -r -if [ -d /sys ] ; then - while read a b c ; do - case "$b" in - sysfs) - echo -n "Mounting /sys filesystem" - echo -e "sysfs\t\t/sys\t\tsysfs\t\trw\t\t 0 0\n" \ - >>/etc/fstab - mount -t sysfs sysfs /sys - rc_status -v -r - break - ;; - esac - done < /proc/filesystems -fi - -# Start blogd, requires /proc and /dev/pts. -# Export the real device in variable REDIRECT. -test -x /sbin/blogd -a -n "$REDIRECT" && /sbin/blogd $REDIRECT -if test -z "$REDIRECT" ; then - if (echo -n > /dev/tty) 2>/dev/null ; then - REDIRECT=/dev/tty - else - REDIRECT=/dev/console - fi -fi - -################################################################ -# -# Save old terminal settings and set -nl to avoid staircase -# effect, do not lock scrolling, and avoid break characters. -otty=$(stty -g) -if test "$FLOW_CONTROL" = "yes" ; then - stty -nl ixon ignbrk -brkint -else - stty -nl -ixon ignbrk -brkint -fi - -################################################################ -# -# Should we ask for interactive boot mode -DO_CONFIRM="" -read -t 2 check < /proc/cmdline 2> /dev/null -case "$check" in - *confirm*) DO_CONFIRM=yes ;; -esac -test -z "$CONFIRM_PROMPT_TIMEOUT" && CONFIRM_PROMPT_TIMEOUT=5 -if test "$PROMPT_FOR_CONFIRM" = "yes" -a "$DO_CONFIRM" != "yes" ; then - echo -en "${extd}Enter Interactive startup mode?${norm}" - rc_timer_on "$CONFIRM_PROMPT_TIMEOUT" 37 - read -t "$CONFIRM_PROMPT_TIMEOUT" -n 1 \ - -p " ${extd}y${norm}/[${extd}n${norm}]\ -("${CONFIRM_PROMPT_TIMEOUT}s") " answer - rc_timer_off - case "$answer" in - [yYiI]) DO_CONFIRM=yes ;; - *) DO_CONFIRM= ;; - esac - unset answer - echo -fi -export DO_CONFIRM - -################################################################ -# -# Common used variables -bootrc=/etc/init.d/boot.d -rex="[0-9][0-9]" -failed="" -skipped="" -callord="" - -# -# Initialize boosplash progressbar variables -# -. /etc/rc.splash B -splashtrigger "rlchange B" - -################################################################ -# -# Do we stop/start script in parallel? -startpar=$(type -p startpar) -test "$RUN_PARALLEL" = "yes" || startpar="" -test "$DO_CONFIRM" = "yes" && startpar="" - -# Start bootup client scripts. -if test -d ${bootrc}/ ; then - for i in ${bootrc}/S*; do - test -f $i || continue - - B=${i##*/} - script=${B#*S$rex} - B=${B%$script} - - rc_splash "$script start" - - if test "$DO_CONFIRM" = "yes" ; then - rc_confirm -t 5 "Start bootup script ${script}" \ - < $REDIRECT > $REDIRECT 2>&1 - case "$?" in - 0) true ;; - 1) continue ;; - 2) DO_CONFIRM="" - esac - fi - - if test -z "$startpar" ; then - blogger "$script start" - - if test -x "$i" ; then - $i start - else - echo Running $i - /bin/sh $i b - rc_status -v1 -r - fi - status=$? - echo -en "$rc_reset" - - case $status in - [1-4]) failed="${failed:+$failed }$script" ;; - [56]) skipped="${skipped:+$skipped }$script" ;; - [07]|*) ;; - esac - - blogger "'$script start' exits with status $status" - else - # Parallel boot only for valid scripts - test -x $i || continue - - # Current vector - eval cur=\${$B} - test -n "$cur" || callord="${callord:+$callord }$B" - - # Remember scripts - eval $B="\${cur:+$i }\${cur:-$i}" - fi - done -fi - -################################################################ -# -# Call the scripts in correct order -if test -n "$startpar" ; then - declare -i s - for p in $callord ; do - vect=$p - eval p=(\${$p}) - - blogger "run boot scripts (${p[@]##*S$rex})" - if test ${#p[@]} -eq 1 ; then - ${p} start - status=($?) - else - status=($($startpar -t 30 -T 3 -a start ${p[@]})) - fi - echo -en "$rc_reset" - blogger "exit status of (${p[@]##*S$rex}) is (${status[@]})" - - s=0 - for script in ${p[@]##*S$rex} ; do - case "${status[$s]}" in - [1-4]) failed="${failed:+$failed }$script" ;; - [56]) skipped="${skipped:+$skipped }$script" ;; - 0|*) ;; - esac - : $((s++)) - done - done -fi - -################################################################ -# -# Be verbose and print stats -echo -n "System Boot Control: " -echo -e "The system has been ${stat}${extd}set up${norm}" -if test -n "$failed" ; then - n=$((${#failed} + 7)) - echo -n "Failed features: " - test $n -lt 47 && echo -en "\033[${COLUMNS}C\033[${n}D" - echo -e "${warn}${failed}${norm}" -fi -if test -n "$skipped" ; then - n=$((${#skipped} + 7)) - echo -n "Skipped features: " - test $n -lt 47 && echo -en "\033[${COLUMNS}C\033[${n}D" - echo -e "${attn}${skipped}${norm}" -fi - - -################################################################ -# -# Check for boot cycle detection -test -s /lib/bootcycle/stats && . /lib/bootcycle/stats - - -# Remember for master resource script -if test "$DO_CONFIRM" = "yes" ; then - touch /var/run/do_confirm -fi - -# Restore old terminal settings -stty $otty - -################################################################ -# -# Let zic set timezone - if present (from boot.ldconfig). -if test -n "$TIMEZONE" -a -x /usr/sbin/zic ; then - echo -n Setting up timezone data - /usr/sbin/zic -l $TIMEZONE - rc_status -v -r -fi - -################################################################ -# -# start user defined bootup script. -if test -f /etc/init.d/boot.local ; then - ECHO_RETURN=$rc_done_up - echo "Running /etc/init.d/boot.local" - /bin/sh /etc/init.d/boot.local || rc_failed - rc_status -v1; rc_reset - rc_splash "boot.local start" -fi - -rc_reset -exit 0 diff --git a/initramfs/distro-specs/suse/functions-10.0 b/initramfs/distro-specs/suse/functions-10.0 deleted file mode 100644 index 5f7916d1..00000000 --- a/initramfs/distro-specs/suse/functions-10.0 +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration functions for SuSE 10.0 which differ from functions defined -# in general SuSE base definitions ... General changes should be done there, -# version specific changes for the version 10.0 go here. - -# secure shell service -config_sshd () { -if [ "x$start_sshd" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/sshd ] ; then - testmkd /mnt/var/lib/sshd - testmkd /mnt/var/lib/empty - if ! strinfile "sshd:" /mnt/etc/passwd ; then - echo -e "sshd:x:71:65::/var/run/sshd:/bin/false" \ - >>/mnt/etc/passwd - echo -e "sshd:!:13099:0:99999:7:::" >>/mnt/etc/shadow - fi - rllinker "sshd" 25 10 - else - error "$df_errsshd" nonfatal - fi -fi -} -# Xorg variable settings. Lots of stuff changes for newer Xorg servers -displayvars () { -synapticsdrv="/usr/X11R6/lib/modules/input/synaptics_drv.o" -} diff --git a/initramfs/distro-specs/suse/functions-10.1 b/initramfs/distro-specs/suse/functions-10.1 deleted file mode 100644 index 31ca9328..00000000 --- a/initramfs/distro-specs/suse/functions-10.1 +++ /dev/null @@ -1,131 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration functions for SuSE 10.1 which differ from functions defined -# in general SuSE base definitions ... General changes should be done there, -# version specific changes for the 10.1 go here. - -# afs client -# configure afs client -config_afs () { -if [ "x$start_afs" = "xyes" ] ; then - if [ -f /mnt/etc/init.d/openafs-client ] ; then - test -d /mnt/afs || error "${df_errafsd}" - testmkd /mnt/var/cache/openafs - rllinker "openafs-client" 15 6 - # echo -e "# /etc/sysconfig/afs-client - file generated by \ - #$0:\n#\t$date\n" >/etc/sysconfig/afs-client.new; - # sed -e "s,THIS_CELL_SERVER.*,THIS_CELL_SERVER=\"$cell_serv\"," \ - # -e "s,PREFERREDSERVERS.*,PREFERREDSERVERS=\"$cell_serv\"," \ - # -e "s,THIS_CELL.*,THIS_CELL=\"$this_cell\"," \ - # -e "s,MEMCACHE.*,MEMCACHE=\"yes\"," \ - # /etc/sysconfig/afs-client >> \ - # /etc/sysconfig/afs-client.new - # mv /etc/sysconfig/afs-client.new /etc/sysconfig/afs-client - else - error "${df_errafsn}" nonfatal - fi -fi -} - -# set up keytable (function run in hwautocfg) -# kbd runlevel link is in the list of initial runlevel scripts (see -# config-10.1 file) -keytable () { -# remove unneeded components from the startscript -sed -e "/wanted keytable/,/^fi$/d;/load usb drivers/,/^esac$/d" \ - -i /mnt/etc/${D_INITDIR}/kbd -sed -e "s,KEYTABLE=.*,KEYTABLE=\"${KEYTABLE}\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/keyboard -} - -# consolefont and language (function run in hwautocfg) -consolefont () { -sed -e "s,RC_LANG=.*,RC_LANG=\"${LANG}\" # added in initrd," \ - -i /mnt/etc/${D_SYSCONFDIR}/language -} - -# check the glx and tvout stuff and configure it -checkgraphix () { -# test if unionfs -case "${XMODULE}" in - radeon) - # IGP is not supported with fglrx driver (at least not in some versions) - # comment if it works properly ... - strinfile " IGP" /tmp/hwsetup.info && exit - # check ${XDESC}/ hwsetup.info device string in Cards file and then - # for needed components - # not all radeon cards are properly supported by fglrx, so the decision on - # module might be done via hwsetup!? - test -e /mnt/lib/modules/${KERNEL}/kernel/drivers/char/drm/fglrx.ko \ - && test -e /mnt/usr/X11R6/lib/modules/drivers/fglrx_drv.* && { - XMODULE=fglrx - # it only works for UnionFS enabled systems - ln -sf /usr/X11R6/lib/libGL.so.1.2 \ - /mnt/usr/X11R6/lib/libGL.so.1 2>/dev/null - } - # check whether to enable tvout. option could be set in machine-setup - if [ -n "$tvout" ] && [ "$tvout" != "no" -a "$tvout" != "NO" ] ; then - [ "$tvout" = "yes" ] && tvout="PAL-B" - TVOUT='\tOption\t\t"TVFormat" "'$tvout - TVOUT=$TVOUT'"\n\tOption\t\t"DesktopSetup" "horizontal"' - fi - ;; - nv) - # check for needed components (kernel and libraries) - test -e /mnt/lib/modules/${KERNEL}/kernel/drivers/char/drm/nvidia.ko \ - && test -e /mnt/usr/X11R6/lib/modules/drivers/nvidia_drv.* && { - gllib=$(ls /mnt/usr/X11R6/lib/libGL.so.1.0.* 2>/dev/null|sed -n "1p") - if [ -n "$gllib" ] ; then - ln -sf ${gllib#/mnt} /mnt/usr/X11R6/lib/libGL.so.1 2>/dev/null - # same for GLcore lib - gllib=$(ls /mnt/usr/X11R6/lib/libGLcore.so.1.0.* 2>/dev/null|\ - sed -n "1p") - ln -sf ${gllib#/mnt} /mnt/usr/X11R6/lib/libGLcore.so.1 2>/dev/null \ - || fail=1 - # load server modules (trick put the path before the official one) - testmkd /mnt/etc/X11/modules - ln -sf /usr/X11R6/lib/modules/updates/extensions/libglx.so \ - /mnt/etc/X11/modules/libglx.so || fail=1 - ln -sf /usr/X11R6/lib/modules/updates/drivers/nvidia_drv.so \ - /mnt/etc/X11/modules/nvidia_drv.so || fail=1 - [ -z $fail ] && XMODULE=nvidia - # ensure proper permissions for nvidia devices - does not work for some reason - #echo -e "# nvidia stuff added by $0 in InitRamFS\nKERNEL==\"nvidia*|nvidiactl*\",\ -#GROUP=\"video\",MODE=\"0666\"" > /mnt/etc/udev/rules.d/10-nvidia-devperms.rules - fi - } - ;; -esac -} - -# secure shell service -config_sshd () { -if [ "x$start_sshd" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/sshd ] ; then - testmkd /mnt/var/lib/sshd - testmkd /mnt/var/lib/empty - if ! strinfile "sshd:" /mnt/etc/passwd ; then - echo -e "sshd:x:71:65::/var/run/sshd:/bin/false" \ - >>/mnt/etc/passwd - echo -e "sshd:!:13099:0:99999:7:::" >>/mnt/etc/shadow - fi - rllinker "sshd" 25 10 - else - error "$df_errsshd" nonfatal - fi -fi -} - -# Xorg variable settings. Lots of stuff changes for newer Xorg servers -displayvars () { -synapticsdrv="/usr/X11R6/lib/modules/input/synaptics_drv.o" -} diff --git a/initramfs/distro-specs/suse/functions-10.2 b/initramfs/distro-specs/suse/functions-10.2 deleted file mode 100644 index 983e7ad8..00000000 --- a/initramfs/distro-specs/suse/functions-10.2 +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration functions for SuSE 10.2 which differ from functions defined -# in general SuSE base definitions ... General changes should be done there, -# version specific changes for the 10.2 go here. - -# configure dbus (inter application communication for kde and gnome), hal -# (hardware abstraction layer - used e.g. by powersaved), resmgr and -# policykitd (resource manager/policykitd - the user gets permissions to -# devices when loggin on) -config_dreshal () { -if [ "x$start_dreshal" = "xyes" ]; then - local start=5 - local stop=18 - if [ -f /mnt/etc/${D_INITDIR}/dbus ] ; then - strinfile "messagebus:" /mnt/etc/passwd || \ - echo "messagebus:x:100:101:User for D-BUS:/var/run/dbus:/bin/false" \ - >> /mnt/etc/passwd - strinfile "messagebus:" /mnt/etc/group || \ - echo "messagebus:!:101:" >> /mnt/etc/group - testmkd /mnt/var/run/dbus - # set permissions with userid - echo -e "\tchown messagebus:messagebus /var/run/dbus 2>/dev/null" \ - >>/mnt/etc/${D_INITDIR}/boot.slx - rllinker "dbus" $start $stop - fi - if [ -f /mnt/etc/${D_INITDIR}/resmgr ] ; then - testmkd /mnt/var/run/resmgr/classes - start=$(($start + 1)) - stop=$(($stop - 1)) - rllinker "resmgr" $start $stop - fi - if [ -f /mnt/etc/${D_INITDIR}/policykitd ] ; then - testmkd /mnt/var/run/polkit - start=$(($start + 1)) - stop=$(($stop - 1)) - rllinker "policykitd" $start $stop - fi - if [ -f /mnt/etc/${D_INITDIR}/haldaemon ] ; then - strinfile "haldaemon:" /mnt/etc/passwd || \ - echo "haldaemon:x:105:103:User for haldaemon:/var/run/hal:/bin/false" \ - >> /mnt/etc/passwd - strinfile "haldaemon:" /mnt/etc/group || \ - echo "haldaemon:!:103:" >> /mnt/etc/group - testmkd /mnt/var/run/hal - # set permissions with userid - echo -e "\tchown haldaemon:haldaemon /var/run/hal 2>/dev/null" \ - >>/mnt/etc/${D_INITDIR}/boot.slx - start=$(($start + 1)) - stop=$(($stop - 1)) - rllinker "haldaemon" $start $stop - fi -fi -} -# config nfsv4 -config_nfsv4 () { -if [ "x$start_nfsv4" = "xyes" ]; then - testmkd /mnt/var/lib/nfs/rpc_pipefs - sed -e "s,NFS_SECURITY_GSS=.*,NFS_SECURITY_GSS=\"yes\"," \ - -e "s,NFS4_SUPPORT=.*,NFS4_SUPPORT=\"yes\"," \ - -i /mnt/etc/sysconfig/nfs - echo -e "rpc_pipefs\t/var/lib/nfs/rpc_pipefs rpc_pipefs defaults\t 0 0\n\ -nfsd\t\t/proc/fs/nfsd\tnfsd\t\tdefaults\t 0 0" >>/tmp/fstab -echo -e "\t# stuff needed for nfsv4\n\tmount -t rpc_pipefs rpc_pipefs \ -/var/lib/nfs/rpc_pipefs\n\tmount -t nfsd nfsd /proc/fs/nfsd" \ ->>/mnt/etc/${D_INITDIR}/boot.slx - # portmap is required for any NFS - config_portmap - rllinker "idmapd" 14 8 - rllinker "gssd" 15 7 -fi -} - -# set up keytable (function run in hwautocfg) -keytable () { -if [ -f /mnt/etc/${D_INITDIR}/kbd ] ; then - # remove unneeded components from the startscript - sed -e "/wanted keytable/,/^fi$/d;/load usb drivers/,/^esac$/d" \ - -i /mnt/etc/${D_INITDIR}/kbd - sed -e "s,KEYTABLE=.*,KEYTABLE=\"${KEYTABLE}\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/keyboard - ln -sf /etc/${D_INITDIR}/kbd /mnt/etc/${D_INITBOOTD}/S01boot.kbd -else - error "$df_errkbd" nonfatal -fi -} - -# consolefont and language (function run in hwautocfg) -consolefont () { -sed -e "s,RC_LANG=.*,RC_LANG=\"${LANG}\" # added in initrd," \ - -i /mnt/etc/${D_SYSCONFDIR}/language -#echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1\n" \ -# >>/mnt/etc/${D_INITDIR}/boot.slx -} - -# check the glx and tvout stuff and configure it -checkgraphix () { -# test if unionfs -case "${XMODULE}" in - radeon) - # IGP is not supported with fglrx driver (at least not in some versions) - # comment if it works properly ... - if ! strinfile " IGP" /tmp/hwsetup.info ; then - # check ${XDESC}/ hwsetup.info device string in Cards file and then - # for needed components - test -e /mnt/lib/modules/${KERNEL}/kernel/drivers/char/drm/fglrx.ko \ - && test -e /mnt/usr/lib/xorg/modules/drivers/fglrx_drv.* && { - XMODULE=fglrx - # it only works for UnionFS enabled systems or put it in preload - # but that might be not to clever :-) - ln -sf /usr/lib/xorg/libGL.so.1.2 \ - /mnt/usr/lib/libGL.so.1.2 2>/dev/null || \ - echo -e "/usr/lib/xorg/libGL.so.1.2\n/usr/lib/xorg/libGL.so.1\n\ -/usr/lib/xorg/libGL.so" >/mnt/etc/ld.so.preload - } - # check whether to enable tvout - if [ -n "$tvout" ] && [ "$tvout" != "no" -a "$tvout" != "NO" ] ; then - [ "$tvout" = "yes" ] && tvout="PAL-B" - TVOUT='\tOption\t\t"TVFormat" "'$tvout - TVOUT=$TVOUT'"\n\tOption\t\t"DesktopSetup" "horizontal"' - fi - fi - ;; - nv) - # check for needed components - test -e /mnt/lib/modules/${KERNEL}/kernel/drivers/char/drm/nvidia.ko \ - && test -e /mnt/usr/X11R6/lib/modules/drivers/nvidia_drv.* && { - gllib=$(ls /mnt/usr/X11R6/lib/libGL.so.1.0.* 2>/dev/null|sed -n "1p") - if [ -n "$gllib" ] ; then - ln -sf ${gllib#/mnt} /mnt/usr/lib/libGL.so.1 2>/dev/null - # same for GLcore lib - gllib=$(ls /mnt/usr/X11R6/lib/libGLcore.so.1.0.* 2>/dev/null|\ - sed -n "1p") - ln -sf ${gllib#/mnt} /mnt/usr/lib/libGLcore.so.1.0 2>/dev/null \ - || fail=1 - # load server modules (trick put the path before the official one) - testmkd /mnt/etc/X11/modules - ln -sf /usr/lib/xorg/modules/updates/extensions/libglx.so \ - /mnt/etc/X11/modules/libglx.so || fail=1 - ln -sf /usr/lib/xorg/modules/updates/drivers/nvidia_drv.so \ - /mnt/etc/X11/modules/nvidia_drv.so || fail=1 - [ -z $fail ] && XMODULE=nvidia - # ensure proper permissions for nvidia devices - echo -e "# nvidia stuff added by $0 in InitRamFS\nKERNEL==\"nvidia*|nvidiactl*\",\ -GROUP=\"video\",MODE=\"0666\"" > /mnt/etc/udev/rules.d/10-nvidia-devperms.rules - fi - } - ;; -esac -} - -# deprecated this way ... -# Xorg variable settings. Lots of stuff changed from 10.1 to 10.2 -displayvars () { -Files='\tModulePath\t"/etc/X11/modules"\n -\tModulePath\t"/usr/lib/xorg/modules"\n -\tFontPath\t"/usr/share/fonts/misc/:unscaled"\n -\tFontPath\t"/usr/share/fonts/75dpi/:unscaled"\n -\tFontPath\t"/usr/share/fonts/100dpi/:unscaled"' -synapticsdrv="/usr/lib/xorg/modules/input/synaptics_drv.so" -} diff --git a/initramfs/distro-specs/suse/functions-10.3 b/initramfs/distro-specs/suse/functions-10.3 deleted file mode 100644 index f18f7845..00000000 --- a/initramfs/distro-specs/suse/functions-10.3 +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration functions for (Open)SuSE 10.3 which differ from functions -# defined in general SuSE base definitions ... General changes should be done -# there, version specific changes for the 10.3 go here. - -# config nfsv4 -config_nfsv4 () { -if [ "x$start_nfsv4" = "xyes" ]; then - testmkd /mnt/var/lib/nfs/rpc_pipefs - testmkd /mnt/var/lib/nfs/sm - sed -e "s,NFS_SECURITY_GSS=.*,NFS_SECURITY_GSS=\"yes\"," \ - -e "s,NFS4_SUPPORT=.*,NFS4_SUPPORT=\"yes\"," \ - -i /mnt/etc/sysconfig/nfs - echo -e "rpc_pipefs\t/var/lib/nfs/rpc_pipefs rpc_pipefs defaults\t 0 0\n\ -nfsd\t\t/proc/fs/nfsd\tnfsd\t\tdefaults\t 0 0" >>/tmp/fstab -echo -e "\t# stuff needed for nfsv4\n\tmount -t rpc_pipefs rpc_pipefs \ -/var/lib/nfs/rpc_pipefs\n\tmount -t nfsd nfsd /proc/fs/nfsd" \ ->>/mnt/etc/${D_INITDIR}/boot.slx - # portmap is required for any NFS - config_portmap - rllinker "nfs" 14 8 -fi -} - -# set up keytable (function run in hwautocfg) -# kbd runlevel link is in the list of initial runlevel scripts (see -# suse/config-10.2 file) -keytable () { -# remove unneeded components from the startscript -sed -e "/wanted keytable/,/^fi$/d;/load usb drivers/,/^esac$/d" \ - -i /mnt/etc/${D_INITDIR}/kbd -sed -e "s,KEYTABLE=.*,KEYTABLE=\"${KEYTABLE}\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/keyboard -rllinker kbd 1 20 -} - -# consolefont and language (function run in hwautocfg) -consolefont () { -sed -e "s,RC_LANG=.*,RC_LANG=\"${LANG}\" # added in initrd," \ - -i /mnt/etc/${D_SYSCONFDIR}/language -} - -# Xorg variable settings. Lots of stuff changed since 10.2 -displayvars () { -Files='\tModulePath\t"/etc/X11/modules"\n -\tModulePath\t"/usr/lib/xorg/modules"\n -\tFontPath\t"/usr/share/fonts/misc/:unscaled"\n -\tFontPath\t"/usr/share/fonts/75dpi/:unscaled"\n -\tFontPath\t"/usr/share/fonts/100dpi/:unscaled"' -synapticsdrv="/usr/lib/xorg/modules/input/synaptics_drv.so" -} diff --git a/initramfs/distro-specs/suse/functions-9.3 b/initramfs/distro-specs/suse/functions-9.3 deleted file mode 100644 index d4c40422..00000000 --- a/initramfs/distro-specs/suse/functions-9.3 +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration functions for SuSE 9.3 which differ from functions defined -# in general SuSE base definitions ... General changes should be done there, -# version specific changes for the 9.3 go here. - -# acpi and powersave -config_acpi () { -rllinker powersaved 10 12 -} - -# configure dbus (inter application communication for kde and gnome), hal -# (hardware abstraction layer - used e.g. by powersaved) and resmgr -# (resource manager - the user gets permissions to devices when loggin on) -config_dreshal () { -local start=5 -local stop=18 -if [ "x$start_dreshal" = "xyes" ]; then - if [ -e /mnt/etc/${D_INITDIR}/dbus ] ; then - strinfile "messagebus:" /mnt/etc/passwd || \ - echo "messagebus:x:100:101:User for D-BUS:/var/run/dbus:/bin/false" \ - >> /mnt/etc/passwd - strinfile "messagebus:" /mnt/etc/group || \ - echo "messagebus:!:101:" >> /mnt/etc/group - testmkd /mnt/var/run/dbus - # set permissions with userid - echo -e "\tchown messagebus:messagebus /var/run/dbus 2>/dev/null" \ - >>/mnt/etc/${D_INITDIR}/boot.slx - rllinker "dbus" $start $stop - fi - if [ -e /mnt/etc/${D_INITDIR}/resmgr ] ; then - testmkd /mnt/var/run/resmgr/classes - start=$(($start + 1)) - stop=$(($start - 1)) - rllinker "resmgr" $start $stop - fi - if [ -e /mnt/etc/${D_INITDIR}/hal ] ; then - strinfile "haldaemon:" /mnt/etc/passwd || \ - echo "haldaemon:x:105:103:User for haldaemon:/var/run/hal:/bin/false" \ - >> /mnt/etc/passwd - strinfile "haldaemon:" /mnt/etc/group || \ - echo "haldaemon:!:103:" >> /mnt/etc/group - testmkd /mnt/var/run/hal - # set permissions with userid - echo -e "\tchown haldaemon:haldaemon /var/run/hal 2>/dev/null" \ - >>/mnt/etc/${D_INITDIR}/boot.slx - start=$(($start + 1)) - stop=$(($start - 1)) - rllinker "hal" $start $stop - fi -fi -} -# secure shell service -config_sshd () { -if [ "x$start_sshd" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/sshd ] ; then - testmkd /mnt/var/lib/sshd - testmkd /mnt/var/lib/empty - if ! strinfile "sshd:" /mnt/etc/passwd ; then - echo -e "sshd:x:71:65::/var/run/sshd:/bin/false" \ - >>/mnt/etc/passwd - echo -e "sshd:!:13099:0:99999:7:::" >>/mnt/etc/shadow - fi - rllinker "sshd" 20 10 - else - error "$df_errsshd" nonfatal - fi -fi -} -# Xorg variable settings. Lots of stuff has changed for newer Xorg servers -displayvars () { -synapticsdrv="/usr/X11R6/lib/modules/input/synaptics_drv.o" -} diff --git a/initramfs/distro-specs/suse/functions-default b/initramfs/distro-specs/suse/functions-default index c34c4003..71b0495c 100644 --- a/initramfs/distro-specs/suse/functions-default +++ b/initramfs/distro-specs/suse/functions-default @@ -1,5 +1,5 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH +# Copyright (c) 2003..2006 - RZ Uni Freiburg +# Copyright (c) 2006..2008 - OpenSLX GmbH # # This program/file is free software distributed under the GPL version 2. # See http://openslx.org/COPYING @@ -14,23 +14,54 @@ # inclusion of the main functions file). This file is the main base for the # several SuSE distro versions +# settings of central variables (formerly done via config-*, these variables +# are disputable ...) +# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using +# bind mounts +# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw +# part of the client filesystem +# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on +# TempFS usage +# D_DIRINDXS - directories in client filesystem which should be present +# anyhow +D_ETCEXCL="*.old\n*-\n*.rpmorig\n*.rpmnew\n\ +*.YaST2save\netc/autoinstall\nlogrotate*\nbootloader\n*~\n\ +*.SuSEconfig.saved\npptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ +X11/xdm/pixmaps\n*.rpmsave\ndhclient*script" +D_BINDMPTS="tmp root media home" +D_DIRINBINDMNT="/var/run /var/log /var/tmp" +D_RODIRSINRW="/etc/opt/gnome/gconf /etc/X11/xkb /var/adm /var/lib/texmf \ +/var/lib/rpm" +D_DIRINDXS="/var/X11R6/compose-cache /var/run/sysconfig/tmp /var/adm \ +/var/lib/rpm /var/lib/nobody /var/lib/pam_devperm /var/lib/bluetooth \ +/var/lib/texmf /var/lib/nfs/sm /var/lib/misc /var/lib/acpi /var/spool/cron \ +/var/lock/subsys/sysconfig" + # empty functions are defined at the beginning of /etc/functions # distro specific function called from servconfig script config_distro () { -# no need to run start scripts in parallel -# enable magic sysrequest for the clients - sed -e "1i# /etc/${D_SYSCONFDIR}/sysctl - modified by $0 version $version" \ + # clean the runlevel directories which will be populated by the stage3 setup + for dir in rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d boot.d ; do + rm -rf /mnt/etc/init.d/${dir}/* + done + # link the additional key setup (notbook special keys) + [ grep -q -E "otebook" /etc/hwinfo.bios -a \ + -e /mnt/etc/init.d/hotkey-setup ] && rllinker "hotkey-setup" 25 25 + + # no need to run start scripts in parallel + # enable magic sysrequest for the clients + sed -e "1i# /etc/sysconfig/sysctl - modified by $0 version $version" \ -e "s,ENABLE_SYSRQ=.*,ENABLE_SYSRQ=\"yes\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/sysctl + -i /mnt/etc/sysconfig/sysctl # add specific path /var/X11R6/bin ... echo -e "# stuff generated by $0 (out of InitRamFS written $date)\n\ PATH=\"\$PATH:/var/X11R6/bin\"\n\ test \"\$UID\" -ge 100 && PATH=\"\$PATH:.\"\n\ QTDIR=/usr/lib/qt3\nexport QTDIR\nno_proxy='localhost'\n\ -export no_proxy" > /mnt/etc/SuSEconfig/profile +export no_proxy" >/mnt/etc/SuSEconfig/profile echo -e "SLX VERSION = $SLXVERSION\nINITRAMFS GENERATION DATE = $date" \ - >> /mnt/etc/SuSE-release + >>/mnt/etc/SuSE-release # remove annoying udev rule set for changing eth interface and rtc symlink rm /mnt/etc/udev/rules.d/*persistent-net.rules \ @@ -50,21 +81,261 @@ export no_proxy" > /mnt/etc/SuSEconfig/profile rc_reset\ntest -e /etc/init.d/halt.local && { \techo Running /etc/init.d/halt.local\n\t/bin/sh /etc/init.d/halt.local \trc_status -v1 -r\n} -echo $message\nexec $command -d -f' > /mnt/etc/${D_INITDIR}/halt +echo $message\nexec $command -d -f' >/mnt/etc/init.d/halt # add the halt link to the 0 and 6 runlevel directories - ln -sf ../halt /mnt/etc/${D_INITDIR}/rc0.d/S20halt - ln -sf ../halt /mnt/etc/${D_INITDIR}/rc6.d/S20reboot + ln -sf ../halt /mnt/etc/init.d/rc0.d/S20halt + ln -sf ../halt /mnt/etc/init.d/rc6.d/S20reboot + + echo "LOGFILE=${LOGFILE}" >/mnt/etc/sysconfig/logfile + # fixme: rather ugly to write that boot script this way + echo ' +#!/bin/sh +# SuSE specific initial boot file modified for the use with OpenSLX clients +# +########################################################################### + +# Before we do anything else, try at first to activate SELinux support +test -d /selinux && mount -n -t selinuxfs none /selinux &>/dev/null + +# Configuration and coloring of the boot messages +. /etc/rc.status +. /etc/sysconfig/boot +. /etc/sysconfig/logfile + +# Avoid be interrupted by child or keyboard +trap "echo" SIGINT SIGSEGV SIGQUIT +set +e + +# reasonable start values for bootsplash progress +export progress=0 +export sscripts=45 +export kscripts=45 + +echo -n "System Boot Control: " +echo "Running $0" + +########################################################################### +# + +# some important (un)mounts +rc_reset +echo -n "Mounting /proc, /sys and /dev/pts filesystems" +# file /etc/fstab in some scenarios not available +mount -t proc proc /proc &>/dev/null +rc_status -v -r + +echo -n "Mounting /dev/pts" +mount -t devpts -o mode=0620,gid=5 devpts /dev/pts +rc_status -v -r +if [ -d /sys ] ; then + while read a b c ; do + case "$b" in + sysfs) + echo -n "Mounting /sys filesystem" + echo -e "sysfs\t\t/sys\t\tsysfs\t\trw\t\t 0 0\n" \ + >>/etc/fstab + mount -t sysfs sysfs /sys + rc_status -v -r + break + ;; + esac + done < /proc/filesystems +fi + +# Start blogd, requires /proc and /dev/pts. +# Export the real device in variable REDIRECT. +test -x /sbin/blogd -a -n "$REDIRECT" && /sbin/blogd $REDIRECT +if test -z "$REDIRECT" ; then + if (echo -n > /dev/tty) 2>/dev/null ; then + REDIRECT=/dev/tty + else + REDIRECT=/dev/console + fi +fi + +########################################################################### +# +# Save old terminal settings and set -nl to avoid staircase +# effect, do not lock scrolling, and avoid break characters. +otty=$(stty -g) +if test "$FLOW_CONTROL" = "yes" ; then + stty -nl ixon ignbrk -brkint +else + stty -nl -ixon ignbrk -brkint +fi + +########################################################################### +# +# Common used variables +bootrc=/etc/init.d/boot.d +rex="[0-9][0-9]" +failed="" +skipped="" +callord="" + +# +# Initialize boosplash progressbar variables +# +. /etc/rc.splash B +splashtrigger "rlchange B" + +########################################################################### +# +# Do we stop/start script in parallel? +startpar=$(type -p startpar) +test "$RUN_PARALLEL" = "yes" || startpar="" + +# Start bootup client scripts. +if test -d ${bootrc}/ ; then + for i in ${bootrc}/S*; do + test -f $i || continue + + B=${i##*/} + script=${B#*S$rex} + B=${B%$script} + + rc_splash "$script start" + + if test -z "$startpar" ; then + blogger "$script start" + + if test -x "$i" ; then + $i start + else + echo Running $i + /bin/sh $i b + rc_status -v1 -r + fi + status=$? + echo -en "$rc_reset" + + case $status in + [1-4]) failed="${failed:+$failed }$script" ;; + [56]) skipped="${skipped:+$skipped }$script" ;; + [07]|*) ;; + esac + + blogger "$script start exits with status $status" + else + # Parallel boot only for valid scripts + test -x $i || continue + + # Current vector + eval cur=\${$B} + test -n "$cur" || callord="${callord:+$callord }$B" + + # Remember scripts + eval $B="\${cur:+$i }\${cur:-$i}" + fi + done +fi + +########################################################################### +# +# Call the scripts in correct order +if test -n "$startpar" ; then + declare -i s + for p in $callord ; do + vect=$p + eval p=(\${$p}) + + blogger "run boot scripts (${p[@]##*S$rex})" + if test ${#p[@]} -eq 1 ; then + ${p} start + status=($?) + else + status=($($startpar -t 30 -T 3 -a start ${p[@]})) + fi + echo -en "$rc_reset" + blogger "exit status of (${p[@]##*S$rex}) is (${status[@]})" + + s=0 + for script in ${p[@]##*S$rex} ; do + case "${status[$s]}" in + [1-4]) failed="${failed:+$failed }$script" ;; + [56]) skipped="${skipped:+$skipped }$script" ;; + 0|*) ;; + esac + : $((s++)) + done + done +fi + +########################################################################### +# +# Be verbose and print stats +echo -n "System Boot Control: " +echo -e "The system has been ${stat}${extd}set up${norm}" +if test -n "$failed" ; then + n=$((${#failed} + 7)) + echo -n "Failed features: " + test $n -lt 47 && echo -en "\033[${COLUMNS}C\033[${n}D" + echo -e "${warn}${failed}${norm}" +fi +if test -n "$skipped" ; then + n=$((${#skipped} + 7)) + echo -n "Skipped features: " + test $n -lt 47 && echo -en "\033[${COLUMNS}C\033[${n}D" + echo -e "${attn}${skipped}${norm}" +fi + +########################################################################### +# +# Check for boot cycle detection +test -s /lib/bootcycle/stats && . /lib/bootcycle/stats + +# Restore old terminal settings +stty $otty + +########################################################################### +# +# Let zic set timezone - if present (from boot.ldconfig). +if test -n "$TIMEZONE" -a -x /usr/sbin/zic ; then + echo -n Setting up timezone data + /usr/sbin/zic -l $TIMEZONE + rc_status -v -r +fi + +########################################################################### +# +# start user defined bootup script. +if test -f /etc/init.d/boot.local ; then + ECHO_RETURN=$rc_done_up + echo "Running /etc/init.d/boot.local" + /bin/sh /etc/init.d/boot.local || rc_failed + rc_status -v1; rc_reset + rc_splash "boot.local start" +fi + +rc_reset +exit 0' >/mnt/etc/init.d/boot + # enable execution of all important start scripts # running stuff in parallel seems to be rather useless and generates some # difficult to solve problems. If you want to try nevertheless enable the # following line and disable the latter one (switching off that feature) sed -e "s,RUN_PARALLEL=.*,RUN_PARALLEL=\"no\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/boot + -i /mnt/etc/sysconfig/boot # if YaST2 should be runnable (without much effect anyway) on the client testmkd /mnt/var/log/YaST2 echo "$host_name" > /mnt/etc/HOSTNAME } +# initial (boot time) runlevel scripts +initial_boot () { +local scripts=$* +local count=10 +# boot.slx is a special runlevel script generated within initialramfs which +# should be executed before the normal runlevel scripts. Proper shutdown is +# not needed!? +for i in boot.slx boot.udev boot.proc boot.klog boot.loadmodules boot.clock \ +boot.sysctl boot.ipconfig boot.swap $D_SPLASHY; do + count=$(($count + 1)) + [ $DEBUGLEVEL -ge 2 ] && echo "boot-runlevelscript $i" + ln -sf /etc/init.d/$i /mnt/etc/init.d/boot.d/S${count}$i +done +} + # linking runlevel scripts rllinker () { local script="$1" @@ -78,7 +349,7 @@ fi # passed via configuration for i in rc3.d/K$stop$script rc5.d/K$stop$script \ rc3.d/S$start$script rc5.d/S$start$script ; do - ln -sf ../$script /mnt/etc/${D_INITDIR}/$i + ln -sf ../$script /mnt/etc/init.d/$i done } @@ -86,7 +357,7 @@ done # second stop # function for ntp configuration config_ntp () { -if [ -e /mnt/etc/${D_INITDIR}/ntp ] ; then +if [ -e /mnt/etc/init.d/ntp ] ; then if ! strinfile "ntp:" /mnt/etc/passwd ; then echo -e "ntp:x:74:65534:NTP daemon:/var/lib/ntp:/bin/false" \ >>/mnt/etc/passwd @@ -107,7 +378,7 @@ fi # function for configuration of cron services config_cron () { if [ "x$start_cron" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/cron ] ; then + if [ -f /mnt/etc/init.d/cron ] ; then rllinker "cron" 18 2 testmkd /mnt/var/spool/cron/lastrun testmkd /mnt/var/spool/cron/tabs @@ -126,7 +397,7 @@ if [ "x$start_syslog" != "xno" ] ; then # enable basic logging to console tty10; file logging could be enabled via # setting of config_syslog="file" start_syslog="yes" - if [ -f /mnt/etc/${D_INITDIR}/syslog ] ; then + if [ -f /mnt/etc/init.d/syslog ] ; then sed -e "1i# modified in InitRamFS by $0" \ -e "s,SYSLOG_DAEMON=.*,SYSLOG_DAEMON=\"syslog-ng\"," \ -i /mnt/etc/sysconfig/syslog @@ -141,7 +412,7 @@ fi # secure shell service config_sshd () { if [ "x$start_sshd" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/sshd ] ; then + if [ -f /mnt/etc/init.d/sshd ] ; then testmkd /mnt/var/run/sshd testmkd /mnt/var/lib/empty if ! strinfile "sshd:" /mnt/etc/passwd ; then @@ -151,7 +422,7 @@ if [ "x$start_sshd" = "xyes" ] ; then fi # set permissions with userid #echo -e "\tchown sshd:nogroup /var/run/sshd /var/lib/empty 2>/dev/null" \ - # >>/mnt/etc/${D_INITDIR}/boot.slx + # >>/mnt/etc/init.d/boot.slx rllinker "sshd" 25 10 else error "$df_errsshd" nonfatal @@ -161,7 +432,7 @@ fi # snmp agent for remote monitoring config_snmp () { if [ "x$start_snmp" = "xyes" ] ; then - if [ -f /mnt/etc/${D_INITDIR}/snmpd ] ; then + if [ -f /mnt/etc/init.d/snmpd ] ; then rllinker "snmpd" 24 2 testmkd /mnt/var/lib/net-snmp >/dev/null 2>&1 fi @@ -194,70 +465,30 @@ fi # configuration file if [ "x$lpr_servers" != "x" ] && [ ! -e /rootfs/etc/cups/client.conf ] ; then echo -e "# /etc/cups/client.conf - file generated by\n#\t$0:\n\ -#\t$date\n#\nServerName\t$lpr_servers" > /mnt/etc/cups/client.conf -fi -} -# configure samba service -config_samba () { -if [ "$start_samba" != "no" ]; then - testmkd /mnt/var/run/samba - if [ "$start_samba" = "yes" ] && [ -f /mnt/etc/init.d/smb ] ; then - rllinker "smb" 27 2 - rllinker "nmb" 28 2 - fi - # set up samba configuration with NetBIOS name servers etc. - if [ "x$netbios_name_servers" != "x" ]; then - wins_server="\\twins server = $netbios_name_servers" - else - wins_server=";\\twins server = 127.0.0.1" - fi - if [ "x$netbios_workgroup" != "x" ]; then - workgroup="workgroup = $new_netbios_workgroup" - else - workgroup="workgroup = openslx" - fi - # avoid to overwrite admin provided samba configuration file - [ ! -f /rootfs/etc/samba/smb.conf ] && [ -f /mnt/etc/samba/smb.conf ] && \ - sed -e "1i# modified in InitRamFS by $0" \ - -e "s,\s*netbios name.*,netbios name = ${host_name},g" \ - -e "s,\s*interfaces.*,interfaces = ${clientip}/${subnet_mask},g" \ - -e "s,;.*wins server.*,$wins_server,g" \ - -e "s,\s*workgroup =.*,$workgroup,g" \ - -i /mnt/etc/samba/smb.conf; - # special kde network discovery service - [ -f /mnt/etc/lisarc ] && [ ! -f /rootfs/etc/lisarc ] && - sed -e "1i# modified in InitRamFS by $0" \ - -e "s,AllowedA.*,AllowedAddresses=${clientip}/${subnet_mask};,g" \ - -e "s,BroadcastN.*,BroadcastNetwork=${clientip}/${subnet_mask};,g" \ - -e "s,PingAdd.*,PingAddresses=${clientip}/${subnet_mask};,g" \ - -i /mnt/etc/lisarc +#\t$date\n#\nServerName\t$lpr_servers" >/mnt/etc/cups/client.conf fi } # configure bluetooth services config_bt () { -if [ -e /mnt/etc/${D_SYSCONFDIR}/bluetooth ] ; then - sed -e "1i# /etc/${D_SYSCONFDIR}/bluetooth - file modified by $0" \ +if [ -e /mnt/etc/sysconfig/bluetooth ] ; then + sed -e "1i# /etc/sysconfig/bluetooth - file modified by $0" \ -e "s,START_SERVICES.*,START_SERVICES=\"yes\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/bluetooth + -i /mnt/etc/sysconfig/bluetooth else : # no bluetooth components installed fi } -# set up keytable (function run in hwautocfg) -# kbd runlevel link is set via config_distro to avoid clashes between -# servconfig and hwautocfg settings -keytable () { +# set up localization like keytable and consolefont +dlocale () { +echo -e "\t# entries added by $0: $date" >> /mnt/etc/init.d/boot.slx sed -e "s,KEYTABLE=.*,KEYTABLE=\"${KEYTABLE}\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/keyboard + -i /mnt/etc/sysconfig/keyboard echo -e "\tloadkeys ${KEYTABLE} >${LOGFILE} 2>&1\n" \ - >>/mnt/etc/${D_INITDIR}/boot.slx -} -# consolefont and language (function run in hwautocfg) -consolefont () { + >>/mnt/etc/init.d/boot.slx echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1\n" \ - >>/mnt/etc/${D_INITDIR}/boot.slx + >>/mnt/etc/init.d/boot.slx sed -e "s,RC_LANG=.*,RC_LANG=\"${LANG}\" # added in initrd," \ - -i /mnt/etc/${D_SYSCONFDIR}/language + -i /mnt/etc/sysconfig/language } # acpi and powersave daemons, required e.g. to shutdown the machine via # power button, no need for early start @@ -279,7 +510,7 @@ if [ "x$start_dreshal" = "xyes" ]; then /var/cache/hald /var/lib/PolicyKit; do testmkd /mnt/$dir done - if [ -f /mnt/etc/${D_INITDIR}/dbus ] ; then + if [ -f /mnt/etc/init.d/dbus ] ; then strinfile "messagebus:" /mnt/etc/passwd || \ echo "messagebus:x:100:101:User for D-BUS:/var/run/dbus:/bin/false" \ >> /mnt/etc/passwd @@ -287,10 +518,10 @@ if [ "x$start_dreshal" = "xyes" ]; then echo "messagebus:!:101:" >> /mnt/etc/group # set permissions with userid echo -e "\tchown messagebus:messagebus /var/run/dbus 2>/dev/null" \ - >>/mnt/etc/${D_INITDIR}/boot.slx + >>/mnt/etc/init.d/boot.slx rllinker "dbus" $start $stop fi - if [ -f /mnt/etc/${D_INITDIR}/consolekit ] ; then + if [ -f /mnt/etc/init.d/consolekit ] ; then strinfile "polkituser:" /mnt/etc/passwd || \ echo "polkituser:x:104:106:PolicyKit:/var/run/PolicyKit:/bin/false" \ >> /mnt/etc/passwd @@ -300,12 +531,12 @@ if [ "x$start_dreshal" = "xyes" ]; then echo -n > /mnt/var/lib/misc/PolicyKit.reload chmod a+x /mnt/var/lib/misc/PolicyKit.reload fi - if [ -f /mnt/etc/${D_INITDIR}/resmgr ] ; then + if [ -f /mnt/etc/init.d/resmgr ] ; then start=$(($start + 1)) stop=$(($stop - 1)) rllinker "resmgr" $start $stop fi - if [ -f /mnt/etc/${D_INITDIR}/haldaemon ] ; then + if [ -f /mnt/etc/init.d/haldaemon ] ; then strinfile "haldaemon:" /mnt/etc/passwd || \ echo "haldaemon:x:105:103:User for haldaemon:/var/run/hal:/bin/false" \ >> /mnt/etc/passwd @@ -314,20 +545,20 @@ if [ "x$start_dreshal" = "xyes" ]; then echo -n "" > /mnt/var/lib/PolicyKit/reload # set permissions with userid echo -e "\tchown haldaemon:haldaemon /var/run/hal /var/cache/hald \ - 2>/dev/null" >>/mnt/etc/${D_INITDIR}/boot.slx + 2>/dev/null" >>/mnt/etc/init.d/boot.slx start=$(($start + 1)) stop=$(($stop - 1)) rllinker "haldaemon" $start $stop fi fi } -# configure automounter (fixme: config version for NFSv4 might be required) +# configure automounter (fixme: to be moved into plugin) config_automount () { -if [ -e /mnt/etc/${D_SYSCONFDIR}/autofs ] ; then +if [ -e /mnt/etc/sysconfig/autofs ] ; then testmkd /var/lock/subsys - sed -e "1i# /etc/${D_SYSCONFDIR}/autofs - file modified by\n#\t$0:\n#" \ + sed -e "1i# /etc/sysconfig/autofs - file modified by\n#\t$0:\n#" \ -e "s,AUTOFS_OPTIONS.*,AUTOFS_OPTIONS=\"--timeout 3\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/autofs + -i /mnt/etc/sysconfig/autofs rllinker "autofs" 18 4 else error "$df_erramt" nonfatal @@ -335,7 +566,7 @@ fi } # start name service caching daemon config_nscd () { -if [ -e /mnt/etc/${D_INITDIR}/nscd ] ; then +if [ -e /mnt/etc/init.d/nscd ] ; then testmkd /mnt/var/run/nscd rllinker "nscd" 16 16 else @@ -344,11 +575,11 @@ fi } # start portmapper (needed at least for nfs and nis services) config_portmap () { -rllinker "portmap" 2 20 + rllinker "portmap" 2 20 } -# start NIS +# start NIS (mostly deprecated) config_nis () { -if [ -f /mnt/etc/${D_INITDIR}/ypbind ] ; then +if [ -f /mnt/etc/init.d/ypbind -a ] ; then rllinker "ypbind" 6 16 config_portmap testmkd /mnt/var/yp/nicknames @@ -365,26 +596,18 @@ local name="$2" local info="$3" case "$1" in init) - echo -e "#!/bin/sh\n# skeleton of /etc/${D_INITDIR}/$name created \ + echo -e "#!/bin/sh\n# skeleton of /etc/init.d/${name} created \ by $0\n# after you applied changes to the creation scripts you have to \ rerun\n# the mkdxsinitrd script to get them applied\n\ -. /etc/rc.status\n. /etc/${D_SYSCONFDIR}/logfile\nrc_reset\ncase \ -\"\$1\" in\n start)\n\techo -n \"$info\"" >>/mnt/etc/${D_INITDIR}/$name - chmod u+x /mnt/etc/${D_INITDIR}/$name +. /etc/rc.status\n. /etc/sysconfig/logfile\nrc_reset\ncase \ +\"\$1\" in\n start)\n\techo -n \"$info\"" >>/mnt/etc/init.d/${name} + chmod u+x /mnt/etc/init.d/${name} ;; close) echo -e "\trc_status -v\n\t;;\n stop)\n\t;;\nesac\nrc_exit" \ - >>/mnt/etc/${D_INITDIR}/$name + >>/mnt/etc/init.d/${name} ;; esac } -# Xorg variable settings. Lots of stuff changed since 10.2 -displayvars () { -Files='\tModulePath\t"/etc/X11/modules"\n -\tModulePath\t"/usr/lib/xorg/modules"\n -\tFontPath\t"/usr/share/fonts/misc/:unscaled"\n -\tFontPath\t"/usr/share/fonts/75dpi/:unscaled"\n -\tFontPath\t"/usr/share/fonts/100dpi/:unscaled"' -synapticsdrv="/usr/lib/xorg/modules/input/synaptics_drv.so" -} + diff --git a/initramfs/distro-specs/ubuntu/README-ubuntu b/initramfs/distro-specs/ubuntu/README-ubuntu deleted file mode 100644 index 319c9e84..00000000 --- a/initramfs/distro-specs/ubuntu/README-ubuntu +++ /dev/null @@ -1,16 +0,0 @@ -fehler kubuntu 6.06: - -distro-functions: line 43: udevstert not found - -laut changelog von udev wird behaupted, dass man udevstart nicht mehr braucht.. -> Ja und da wir mdev von busybox machen, wird in Stage3 KEIN udev mehr -benötigt! (dsuchod) - - -module unix not found -> im kernel -anderer pfad in xorg.conf: -fonts in /urs/share/X11/fonts + module pfad löschen - -bei livecd: cannot create dir /media/loop0 readonly! -kioskmode deaktivieren + kdm start -inittab anpassen! + konsole1 macht immer timeout auch wenn sich keiner anmeldet -ACHTUNG: bei kdm root anmeldung ohne pw möglich! - diff --git a/initramfs/distro-specs/ubuntu/config-5.10 b/initramfs/distro-specs/ubuntu/config-5.10 deleted file mode 100644 index de94c79d..00000000 --- a/initramfs/distro-specs/ubuntu/config-5.10 +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for Ubuntu Hoary Hedgehog (5.10) defaults are -# taken from config-default file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -# no changes from default: diff --git a/initramfs/distro-specs/ubuntu/config-6.06 b/initramfs/distro-specs/ubuntu/config-6.06 deleted file mode 100644 index a875a319..00000000 --- a/initramfs/distro-specs/ubuntu/config-6.06 +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for Ubuntu Dapper Dake (6.06) defaults are -# taken from config-default file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -# no changes from default diff --git a/initramfs/distro-specs/ubuntu/config-6.10 b/initramfs/distro-specs/ubuntu/config-6.10 deleted file mode 100644 index c0fa2c0d..00000000 --- a/initramfs/distro-specs/ubuntu/config-6.10 +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for Ubuntu Dapper Dake (6.10) defaults are taken -# from config-default file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -# mountvirtfs does not exist anymore -> use mountkernfs.sh -D_INITSCRIPTS="mountkernfs.sh keyboard-setup mountdevsubfs.sh procps.sh bootlogd hwclock.sh sudo console-setup $D_SPLASHY" -D_ETCEXCL="*.old\n*-\n\ -etc/autoinstall\nlogrotate*\nbootloader\n*~\n\ -pptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ -X11/xdm/pixmaps\ndhclient.script" diff --git a/initramfs/distro-specs/ubuntu/config-7.04 b/initramfs/distro-specs/ubuntu/config-7.04 deleted file mode 100644 index abe88150..00000000 --- a/initramfs/distro-specs/ubuntu/config-7.04 +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright (c) 2003 - 2007 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for Ubuntu Feisty Fawn (7.04) defaults are taken -# from config-default file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -# Aus 6.10: -# mountvirtfs does not exist anymore -> use mountkernfs.sh -D_ETCEXCL="*.old\n*-\n etc/autoinstall\nlogrotate*\nbootloader\n*~\n\ -pptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ -X11/xdm/pixmaps\ndhclient.script" -D_RODIRSINRW="/etc/X11/xkb /var/lib/gconf /var/lib/dpkg /var/lib/aspell \ -/var/lib/pango /var/lib/defoma /var/cache/fontconfig" -D_INITSCRIPTS="mountkernfs.sh keyboard-setup mountdevsubfs.sh procps.sh \ -bootlogd hwclock.sh sudo console-setup $D_SPLASHY" - diff --git a/initramfs/distro-specs/ubuntu/config-7.10 b/initramfs/distro-specs/ubuntu/config-7.10 deleted file mode 100644 index 8a565ee6..00000000 --- a/initramfs/distro-specs/ubuntu/config-7.10 +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright (c) 2003 - 2007 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for Ubuntu Gutsy Gibbon (7.10) defaults are taken -# from config-default file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -# D_INITDEFAULT is obsolete with the change to upstart in 7.10 - -D_ETCEXCL="*.old\n*-\n etc/autoinstall\nlogrotate*\nbootloader\n*~\n\ -pptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ -X11/xdm/pixmaps\ndhclient.script" -D_RODIRSINRW="/etc/X11/xkb /var/lib/gconf /var/lib/dpkg /var/lib/aspell \ -/var/lib/pango /var/lib/defoma /var/cache/fontconfig" -D_INITSCRIPTS="mountkernfs.sh keyboard-setup mountdevsubfs.sh procps.sh \ -bootlogd hwclock.sh sudo console-setup $D_SPLASHY" diff --git a/initramfs/distro-specs/ubuntu/config-8.04 b/initramfs/distro-specs/ubuntu/config-8.04 deleted file mode 100644 index 8a565ee6..00000000 --- a/initramfs/distro-specs/ubuntu/config-8.04 +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright (c) 2003 - 2007 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific settings for Ubuntu Gutsy Gibbon (7.10) defaults are taken -# from config-default file - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -# D_INITDEFAULT is obsolete with the change to upstart in 7.10 - -D_ETCEXCL="*.old\n*-\n etc/autoinstall\nlogrotate*\nbootloader\n*~\n\ -pptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ -X11/xdm/pixmaps\ndhclient.script" -D_RODIRSINRW="/etc/X11/xkb /var/lib/gconf /var/lib/dpkg /var/lib/aspell \ -/var/lib/pango /var/lib/defoma /var/cache/fontconfig" -D_INITSCRIPTS="mountkernfs.sh keyboard-setup mountdevsubfs.sh procps.sh \ -bootlogd hwclock.sh sudo console-setup $D_SPLASHY" diff --git a/initramfs/distro-specs/ubuntu/config-default b/initramfs/distro-specs/ubuntu/config-default deleted file mode 100644 index 246192f6..00000000 --- a/initramfs/distro-specs/ubuntu/config-default +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Distro specific default settings for Ubuntu - might be merged/taken from -# Debian config-default - -# D_SYSCONFDIR - system wide configuration settings - /etc/sysconfig in SuSE -# and RedHat, /etc/default in Debian and Ubuntu -# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using -# bind mounts -# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw -# part of the client filesystem -# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on -# D_RWDIRSINRO - Writable Subdirectories in the RO-Dirs (D_RODIRSINRW) -# TempFS usage -# D_DIRINDXS - directories in client filesystem which should be present -# anyhow -# D_BINDMNT - any code which is specific in bind mount environment -# D_BINDMPTS - These directories will be created in the ramdisk and movemounted -# to the root ("/") this will also happen to /var and /etc -# D_RCDIRS - runlevel directories relative to /etc -# D_XF86CONFFILE - name and location of XFree/Xorg config file, e.g. -# /etc/X11/xorg.conf or /etc/X11/XF86config, ... -# D_XORGBIN - name of XFree/Xorg server with absolute path -# D_XFONTPATH - path(es) where X11 fonts are installed (with trailing /*) -# D_DEFAULTCOUNTRY - localization (see common functions) -# D_HWMODTOIGNORE - hardware modules which should not tried to load (because -# already in kernel, nonexistent, ...) -# D_BOOTLOCAL - script for user specified stuff which should be started -# during client bootup, path and file relative to /etc - -D_SYSCONFDIR=/default -D_ETCEXCL="etc/gconf/*\n*.old\n*-\n\ -etc/autoinstall\nlogrotate*\nbootloader\n*~\n\ -pptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ -X11/xdm/pixmaps\ndhclient.script" -D_BINDMPTS="tmp root home media" -D_DIRINBINDMNT="/var/run /var/log /var/tmp /var/lib/gdm" -D_RODIRSINRW="/etc/X11/xkb /var/lib/gconf /var/lib/dpkg /var/lib/aspell \ -/var/lib/pango /var/lib/defoma" -#D_RWDIRSINRO="/var/lib/gdm" -D_DIRINDXS="/var/X11R6/compose-cache \ -/var/run/sysconfig/tmp /var/adm /var/lib/rpm /var/lib/nobody \ -/var/lib/pam_devperm /var/lib/bluetooth \ -/var/lib/texmf /var/lib/nfs/sm \ -/var/lib/misc /var/lib/acpi /var/spool/cron \ -/var/lock/subsys/sysconfig" -D_INITDIR="/init.d" -D_INITBOOTD="/rcS.d" -D_RCDIRS="/rc0.d /rc1.d /rc2.d /rc3.d /rc4.d /rc5.d /rc6.d" -D_INITDEFAULT="3" -D_INITSCRIPTS="mountvirtfs keymap.sh procps.sh bootlogd hwclock.sh sudo $D_SPLASHY" -D_XF86CONFFILE="/etc/X11/xorg.conf" -D_XORGBIN=/usr/X11R6/bin/X -D_XFONTPATH="/usr/share/fonts/*" -D_DEFAULTCOUNTRY="de" -D_BOOTLOCAL="" diff --git a/initramfs/distro-specs/ubuntu/functions-5.10 b/initramfs/distro-specs/ubuntu/functions-5.10 deleted file mode 100644 index 70b8fb1e..00000000 --- a/initramfs/distro-specs/ubuntu/functions-5.10 +++ /dev/null @@ -1,72 +0,0 @@ -# configuration script for Ubuntu V5.10 to configure OpenSLX linux diskless -# clients (merged in stage2 with ubuntu/functions-default - and loaded within -# initial ramfs - stage3) It may overwrite settings from the default config -# file (/etc/functions) -# -# Dirk von Suchodoletz , 31-08-2006 -# Nico Dietrich -# Felix Endres -# -# (c) 2006 - RZ Universitaet Freiburg -# (c) 2006 - OpenSLX.ORG Project - - -# syslog service -config_syslog () { -if [ "x$start_syslog" = "xyes" ] ; then - echo -e "# /etc/syslog.conf - file generated by $0" >/mnt/etc/syslogd.conf - echo "kern.warn;*.err;authpriv.none\t/dev/tty10\n\ -#kern.warn;*.err;authpriv.none\t|/dev/xconsole\n\ -#*.emerg\n\n*.=warn;*.=err\t\t\t-/var/log/warn\n\ -#*.crit\t\t\t\t/var/log/warn\n*.*;mail.none;news.none\t\t\ -#-/var/log/messages" >> /mnt/etc/syslogd.conf -# test -n "$log_servers" && \ -# for logserver in $log_servers; do -# echo -e "*.*;*.*;*.*;*kern.!*\t@$logserver" >>/mnt/etc/syslog.conf -# done - rllinker "sysklogd" "02" "18" -fi -} - -# secure shell service -config_sshd () { -if [ "x$start_sshd" = "xyes" ] ; then - if [ -f /mnt/etc/init.d/ssh ] ; then - #testmkd /mnt/var/run/sshd - rllinker "ssh" "12" "10" - else - error "$df_errsshd" nonfatal - fi -fi -} - -# snmp agent for remote monitoring -config_snmp () { -if [ "x$start_snmp" = "xyes" ] ; then - if [ -f /mnt/etc/init.d/snmpd ] ; then - rllinker "snmpd" "24" "02" - testmkd /mnt/var/lib/net-snmp >/dev/null 2>&1 - fi - # fixme!! - # write service monitor depending on services started -fi -} - -# consolefont -consolefont () { -echo -e "setfont ${CONSOLE_FONT} >${LOGFILE} 2>&1" \ - >>/mnt/etc/${D_INITDIR}/boot.slx -} -# acpi and powersave -config_acpi () { - rllinker "acpid" "02" "19" - rllinker "acpi-support" "20" "02" -} - -# configure hal, dbus, resmgr and services like that -# fixme: complete or remove (dummy function is present in /etc/functions) -config_dreshal () { -if [ "x$start_dreshal" = "xyes" ]; then - : -fi -} diff --git a/initramfs/distro-specs/ubuntu/functions-6.06 b/initramfs/distro-specs/ubuntu/functions-6.06 deleted file mode 100644 index ca9eed98..00000000 --- a/initramfs/distro-specs/ubuntu/functions-6.06 +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found at http://openslx.org -# -# Configuration script for Ubuntu V6.06 to configure OpenSLX linux stateless -# clients (merged in stage2 with ubuntu/functions-default - and loaded within -# initial ramfs - stage3). It may overwrite settings from the default config -# file (/etc/functions) - -# distro specific stuff to initialize -preinit () { - echo "Creating dhcp user" - echo "dhcp:x:101:">>/etc/group - echo "dhcp:x:101:101::/nonexistent:/bin/false" >>/etc/passwd - # mount/unionfs can not handle the nfsro parameter in Ubuntu 6.06 - NFSRO="" -} - -# set up keytable (function run in hwautocfg) -# fixme: is anything needed here - otherwise remove (and check that a -# dummy function is present) -keytable () { -# fixme -- use keytable setup script here -: -} - -# consolefont and language -consolefont () { -[ "$LANG" == "de_DE@euro" ] && LANG=de_DE.UTF8 -sed -e "s,LANGUAGE=.*,LANGUAGE=${LANG},;s,LANG=.*,LANG=${LANG}," \ - -i /mnt/etc/environment -rllinker "console-screen.sh" 31 3 -} diff --git a/initramfs/distro-specs/ubuntu/functions-6.10 b/initramfs/distro-specs/ubuntu/functions-6.10 deleted file mode 100644 index 76808347..00000000 --- a/initramfs/distro-specs/ubuntu/functions-6.10 +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration script for Ubuntu 6.10 to configure OpenSLX linux stateless -# clients (merged in stage2 with ubuntu/functions-default - and loaded within -# initial ramfs - stage3) It may overwrite settings from the default config -# file (/etc/functions) - -# distro specific stuff to initialize -preinit () { - echo "Creating dhcp user" - echo "dhcp:x:101:">>/etc/group - echo "dhcp:x:101:101::/nonexistent:/bin/false" >>/etc/passwd - # mount/unionfs can not handle the nfsro parameter in Ubuntu 6.06 - NFSRO="" -} - -# distro specific function called from servconfig script -config_distro () { -# add the halt link to the 0 and 6 runlevel directories - ln -sf ../init.d/halt /mnt/etc/rc0.d/S90halt - ln -sf ../init.d/reboot /mnt/etc/rc6.d/S90reboot - sed -i '/halt.*-i/s/ -i / /' /mnt/etc/init.d/halt - # set default runlevel - # how that is done for upstart?? -} - - -# set up keytable (function run in hwautocfg) -# fixme: is anything needed here - otherwise remove (and check that a -# dummy function is present) -keytable () { -# fixme -- use keytable setup script here -: -} - -# consolefont and language -consolefont () { -[ "$LANG" == "de_DE@euro" ] && LANG=de_DE.UTF8 -sed -e "s,LANGUAGE=.*,LANGUAGE=${LANG},;s,LANG=.*,LANG=${LANG}," \ - -i /mnt/etc/environment -rllinker "console-screen.sh" 31 3 -} - diff --git a/initramfs/distro-specs/ubuntu/functions-7.04 b/initramfs/distro-specs/ubuntu/functions-7.04 deleted file mode 100644 index 1a4678ee..00000000 --- a/initramfs/distro-specs/ubuntu/functions-7.04 +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration script for Ubuntu 7.04 to configure OpenSLX linux stateless -# clients (merged in stage2 with ubuntu/functions-default - and loaded within -# initial ramfs - stage3) It may overwrite settings from the default config -# file (/etc/functions) - diff --git a/initramfs/distro-specs/ubuntu/functions-7.10 b/initramfs/distro-specs/ubuntu/functions-7.10 deleted file mode 100644 index 479b58a0..00000000 --- a/initramfs/distro-specs/ubuntu/functions-7.10 +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH -# -# This program/file is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Configuration script for Ubuntu 7.04 to configure OpenSLX linux stateless -# clients (merged in stage2 with ubuntu/functions-default - and loaded within -# initial ramfs - stage3) It may overwrite settings from the default config -# file (/etc/functions) - -# distro specific function called from servconfig script -config_distro () { - # add the halt link to the 0 and 6 runlevel directories - ln -sf ../init.d/halt /mnt/etc/rc0.d/S90halt - ln -sf ../init.d/reboot /mnt/etc/rc6.d/S90reboot - - # remove annoying udev rule set for changing eth interface - rm /mnt/etc/udev/rules.d/*persistent-net.rules >/dev/null 2>&1 - - # inittab is obsolete with the change to upstart in ubuntu 7.10, but to - # prevent missunderstandings with the blank inittab created by openslx init - # we'll write a comment.. - echo "# inittab is obsolete with the change to upstart in ubuntu 7.10" > /mnt/etc/inittab - - # fix getty bug - # (console login on tty1 is started too early) - sed -i "s/start on runlevel 2/start on stopped rc2/" /mnt/etc/event.d/tty1 -} - diff --git a/initramfs/distro-specs/ubuntu/functions-8.04 b/initramfs/distro-specs/ubuntu/functions-8.04 index 479b58a0..c50f9d41 100644 --- a/initramfs/distro-specs/ubuntu/functions-8.04 +++ b/initramfs/distro-specs/ubuntu/functions-8.04 @@ -1,5 +1,5 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH +# Copyright (c) 2003..2006 - RZ Uni Freiburg +# Copyright (c) 2006..2007 - OpenSLX GmbH # # This program/file is free software distributed under the GPL version 2. # See http://openslx.org/COPYING @@ -9,27 +9,9 @@ # # General information about OpenSLX can be found under http://openslx.org # -# Configuration script for Ubuntu 7.04 to configure OpenSLX linux stateless +# Configuration script for Ubuntu 8.04 configure OpenSLX linux stateless # clients (merged in stage2 with ubuntu/functions-default - and loaded within # initial ramfs - stage3) It may overwrite settings from the default config # file (/etc/functions) -# distro specific function called from servconfig script -config_distro () { - # add the halt link to the 0 and 6 runlevel directories - ln -sf ../init.d/halt /mnt/etc/rc0.d/S90halt - ln -sf ../init.d/reboot /mnt/etc/rc6.d/S90reboot - - # remove annoying udev rule set for changing eth interface - rm /mnt/etc/udev/rules.d/*persistent-net.rules >/dev/null 2>&1 - - # inittab is obsolete with the change to upstart in ubuntu 7.10, but to - # prevent missunderstandings with the blank inittab created by openslx init - # we'll write a comment.. - echo "# inittab is obsolete with the change to upstart in ubuntu 7.10" > /mnt/etc/inittab - - # fix getty bug - # (console login on tty1 is started too early) - sed -i "s/start on runlevel 2/start on stopped rc2/" /mnt/etc/event.d/tty1 -} - +# no changes from default diff --git a/initramfs/distro-specs/ubuntu/functions-default b/initramfs/distro-specs/ubuntu/functions-default index 81eb5188..caddbfd4 100644 --- a/initramfs/distro-specs/ubuntu/functions-default +++ b/initramfs/distro-specs/ubuntu/functions-default @@ -1,5 +1,5 @@ -# Copyright (c) 2003 - 2006 - RZ Uni Freiburg -# Copyright (c) 2006, 2007 - OpenSLX GmbH +# Copyright (c) 2003..2006 - RZ Uni Freiburg +# Copyright (c) 2006..2008 - OpenSLX GmbH # # This program/file is free software distributed under the GPL version 2. # See http://openslx.org/COPYING @@ -12,13 +12,34 @@ # Configuration script for general Ubuntu to configure OpenSLX linux # stateless clients (executed within initial ramdisk after genconfig) +# distro specific configuration variables used in the setup functions +# (formerly done via config-*, these variables are disputable ...) +# D_ETCEXCL - list of files, wildcards to be excluded from /etc when using +# bind mounts +# D_DIRINBINDMNT - lists of directories to be created in bind mounted rw part +# of the client filesystem +# D_RODIRSINRW - ReadOnly Directories in RW part of filesystem to save on +# TempFS usage +# D_DIRINDXS - directories in client filesystem which should be present anyhow +D_ETCEXCL="etc/gconf/*\n*.old\n*-\netc/autoinstall\nlogrotate*\nbootloader\n\ +*~\npptp.d\nisdn\nyouservers\nhardware/hwcfg*\n\ +X11/xdm/pixmaps\ndhclient.script" +D_BINDMPTS="tmp root home media" +D_DIRINBINDMNT="/var/run /var/log /var/tmp /var/lib/gdm" +D_RODIRSINRW="/etc/X11/xkb /var/lib/gconf /var/lib/dpkg /var/lib/aspell \ +/var/lib/pango /var/lib/defoma /var/cache/fontconfig" +#D_RWDIRSINRO="/var/lib/gdm" +D_DIRINDXS="/var/X11R6/compose-cache \ +/var/run/sysconfig/tmp /var/adm /var/lib/rpm /var/lib/nobody \ +/var/lib/pam_devperm /var/lib/bluetooth \ +/var/lib/texmf /var/lib/nfs/sm \ +/var/lib/misc /var/lib/acpi /var/spool/cron \ +/var/lock/subsys/sysconfig" + # empty functions are defined at the beginning of /etc/functions # distro specific stuff to initialize preinit () { - [ $DEBUGLEVEL -ge 1 ] && echo "Creating dhcp user" - echo "dhcp:x:101:">>/etc/group - echo "dhcp:x:101:101::/nonexistent:/bin/false" >>/etc/passwd # load unix module to provide sockets (is compiled into kernel on # the live CDs!?) modprobe ${MODPRV} unix 2>/dev/null || error "$df_errumod" nonfatal @@ -26,30 +47,12 @@ preinit () { modprobe ${MODPRV} fbcon 2>/dev/null || error "$df_errumod" nonfatal } -# overwrite settings set by hwautocfg, pathes will change for newer -# Xorg version 7.X -displayvars (){ -Files=' \t FontPath\t\t "/usr/share/X11/fonts/misc"\n -\t FontPath\t\t "/usr/share/X11/fonts/100dpi/:unscaled"\n -\t FontPath\t\t "/usr/share/X11/fonts/75dpi/:unscaled"\n -\t FontPath\t\t "/usr/share/X11/fonts/Type1"\n -\t FontPath\t\t "/usr/share/X11/fonts/100dpi"\n -\t FontPath\t\t "/usr/share/X11/fonts/75dpi"\n -' -Module=' \t Load\t "i2c"\n -\t Load\t "bitmap"\n -\t Load\t "ddc"\n -\t Load\t "dri"\n -\t Load\t "extmod"\n -\t Load\t "freetype"\n -\t Load\t "glx"\n -\t Load\t "int10"\n -\t Load\t "type1"\n -\t Load\t "vbe"\n' -synapticsdrv="" -} # distro specific function called from servconfig script config_distro () { + # clean the runlevel directories which will be populated by the stage3 setup + for dir in rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d rcS.d ; do + rm -rf /mnt/etc/${dir}/* + done # add the halt link to the 0 and 6 runlevel directories ln -sf ../init.d/halt /mnt/etc/rc0.d/S90halt ln -sf ../init.d/reboot /mnt/etc/rc6.d/S90reboot @@ -57,8 +60,29 @@ config_distro () { # remove annoying udev rule set for changing eth interface rm /mnt/etc/udev/rules.d/*persistent-net.rules >/dev/null 2>&1 - # set default runlevel - sed -e "s/.*initdefault/id:${D_INITDEFAULT}:initdefault/" -i /mnt/etc/inittab + # inittab is obsolete with the change to upstart in ubuntu 7.10, but to + # prevent missunderstandings with the blank inittab created by openslx init + # we'll write a comment.. + echo "# inittab is obsolete with the change to upstart from ubuntu 7.10" \ + > /mnt/etc/inittab + + # fix getty bug + # (console login on tty1 is started too early) + sed -i "s/start on runlevel 2/start on stopped rc2/" /mnt/etc/event.d/tty1 +} + +# initial (boot time) runlevel scripts +initial_boot () { +local count=10 +# boot.slx is a special runlevel script generated within initialramfs which +# should be executed before the normal runlevel scripts. Proper shutdown is +# not needed!? +for i in boot.slx mountkernfs.sh keyboard-setup mountdevsubfs.sh procps.sh \ +bootlogd hwclock.sh sudo console-setup $D_SPLASHY; do + count=$(($count + 1)) + [ $DEBUGLEVEL -ge 2 ] && echo "boot-runlevelscript $i" + ln -sf /etc/init.d/$i /mnt/etc/rcS.d/S${count}$i +done } # linking runlevel scripts @@ -84,6 +108,15 @@ for i in rc2.d/K$stop$script rc3.d/K$stop$script \ done } +# set up localization like keytable, console +dlocale () { +# fixme -- use keytable setup script here +# echo -e "\t# entries added by $0: $date" >> /mnt/etc/init.d/boot.slx +sed "s/LANG.*/LANG=\"${LANG}\"/" -i /mnt/etc/default/locale +#echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1" \ +# >>/mnt/etc/init.d/boot.slx +} + # group of functions for the normal runlevels - first parameter is start # second stop # function for ntp configuration @@ -106,7 +139,7 @@ if [ "x$start_atd" = "xyes" ]; then fi } -# function for configuration of cron services +# function for configuration of cron services (fixme: to be moved to a plugin?) config_cron () { if [ "x$start_cron" = "xyes" ] ; then if [ -f /mnt/etc/init.d/cron ] ; then @@ -123,7 +156,7 @@ if [ "x$start_cron" = "xyes" ] ; then fi } -# syslog service +# syslog service (available as a plugin, to be deleted here) config_syslog () { if [ "x$start_syslog" != "xno" ] ; then # fixme, welcher Syslog wird verwendet? @@ -135,7 +168,7 @@ if [ "x$start_syslog" != "xno" ] ; then # echo -e "*.*;*.*;*.*;*kern.!*\t@$logserver" >>/mnt/etc/syslog.conf # done #else syslog-ng -# if [ -f /mnt/etc/${D_INITDIR}/syslog ] ; then +# if [ -f /mnt/etc/init.d/syslog ] ; then # # logoutput depending on $start_syslog definitions # sysngwriter /mnt/etc/syslog-ng/syslog-ng.conf rllinker "sysklogd" 2 18 @@ -168,18 +201,6 @@ if [ "x$start_snmp" = "xyes" ] ; then fi } -# set up keytable (function run in hwautocfg) -keytable () { -# fixme -- use keytable setup script here -: -} - -# consolefont -consolefont () { -echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1" \ - >>/mnt/etc/${D_INITDIR}/boot.slx -} - # acpi and powersave config_acpi () { rllinker "acpid" 10 19 @@ -192,11 +213,14 @@ config_acpi () { rllinker "udev" 11 25 } -# configure hal, dbus, resmgr and services like that +# configure hal, dbus, policykitd and services like that config_dreshal () { if [ "x$start_dreshal" = "xyes" ]; then testmkd /mnt/var/lib/dbus - rllinker "dbus" 17 20 + rllinker "dbus" 17 20 + + testmkd /mnt/var/lib/PolicyKit root:polkituser 1770 + testmkd /mnt/var/lib/PolicyKit-public root:polkituser fi } @@ -209,17 +233,17 @@ local name="$2" local info="$3" case "$switch" in init) - echo -e "#!/bin/sh\n# skeleton of /etc/${D_INITDIR}/$name written \ + echo -e "#!/bin/sh\n# skeleton of /etc/init.d/$name written \ from $0\n# after you applied changes to the creation scripts you have to \ rerun\n# the mkdxsinitrd script to get them applied\n\n\ -. /lib/lsb/init-functions\n" >/mnt/etc/${D_INITDIR}/$name +. /lib/lsb/init-functions\n" >/mnt/etc/init.d/$name echo -e "\n\ncase \"\$1\" in\n start)\n\tlog_begin_msg \"$info\"" \ - >>/mnt/etc/${D_INITDIR}/$name - chmod u+x /mnt/etc/${D_INITDIR}/$name + >>/mnt/etc/init.d/$name + chmod u+x /mnt/etc/init.d/$name ;; close) echo -e "\tlog_end_msg 0\n\t;;\n stop)\n\t;;\nesac\nexit 0" \ - >>/mnt/etc/${D_INITDIR}/$name + >>/mnt/etc/init.d/$name ;; esac } @@ -227,25 +251,9 @@ esac # configure automounter config_automount () { if [ -f /mnt/etc/init.d/autofs ] ; then - testmkd /var/lock/subsys - echo -e "# /etc/auto.master - file generated by $0:\n\ -/misc\t/etc/auto.misc" >/mnt/etc/auto.master - echo -e "# /etc/auto.misc - file generated by $0:\n" \ - > /mnt/etc/auto.misc - if [ -n "${automnt_src}" ] ; then - # local directory and home directory server from machine-setup - [ -z "${automnt_dir}" ] && automnt_dir="/home" - strinstr "/" "${automnt_dir}" && error "$df_erratpld" nonfatal - automnt_dir=${automnt_dir#/} - echo -e "/home\t/etc/auto.${automnt_dir}\n" >> /mnt/etc/auto.master - echo -e "# /etc/auto.${automnt_dir} created by $0:\n" \ - > /mnt/etc/auto.${automnt_dir} - echo -e "*\t-rsize=32768,wsize=32768,tcp,rw\t${automnt_src}/&" \ - >> /mnt/etc/auto.${automnt_dir} - fi - sed -e "1i# /etc/${D_SYSCONFDIR}/autofs - file modified by\n#\t$0:\n#" \ - -e "s,AUTOFS_OPTIONS.*,AUTOFS_OPTIONS=\"--timeout 3\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/autofs + testmkd /mnt/var/lock/subsys + sed -e "1i# /etc/${default}/autofs - file modified by\n#\t$0:\n#" \ + -e "s,TIMEOUT.*,TIMEOUT=60," -i /mnt/etc/default/autofs config_portmap rllinker "autofs" 12 4 fi @@ -257,12 +265,12 @@ if [ "x$start_nfsv4" = "xyes" ]; then testmkd /mnt/var/lib/nfs/sm sed -e "s,NEED_IDMAPD=.*,NEED_IDMAPD=\"yes\"," \ -e "s,NEED_GSSD=.*,NEED_GSSD=\"yes\"," \ - -i /mnt/etc/${D_SYSCONFDIR}/nfs-common + -i /mnt/etc/${default}/nfs-common echo -e "rpc_pipefs\t/var/lib/nfs/rpc_pipefs rpc_pipefs defaults\t 0 0\n\ nfsd\t\t/proc/fs/nfsd\tnfsd\t\tdefaults\t 0 0" >>/tmp/fstab echo -e "\t# stuff needed for nfsv4\n\tmount -t rpc_pipefs rpc_pipefs \ /var/lib/nfs/rpc_pipefs\n\tmount -t nfsd nfsd /proc/fs/nfsd" \ ->>/mnt/etc/${D_INITDIR}/boot.slx +>>/mnt/etc/init.d/boot.slx # portmap is required for any NFS config_portmap rllinker "nfs-common" 10 8 -- cgit v1.2.3-55-g7522