diff options
author | s8tomaie | 2006-06-28 15:41:54 +0200 |
---|---|---|
committer | s8tomaie | 2006-06-28 15:41:54 +0200 |
commit | 747b9bd548d94e3ac5f483e614927644d7dc7dbb (patch) | |
tree | 6e0a0b4d84b59b13274044970e9d180a67714d10 /initrd | |
parent | Added simple bootsplash support (SuSE only, see BootSplash wiki) ... (diff) | |
download | core-747b9bd548d94e3ac5f483e614927644d7dc7dbb.tar.gz core-747b9bd548d94e3ac5f483e614927644d7dc7dbb.tar.xz core-747b9bd548d94e3ac5f483e614927644d7dc7dbb.zip |
:
git-svn-id: http://svn.openslx.org/svn/openslx/ld4@257 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'initrd')
-rw-r--r-- | initrd/distro-specs/ubuntu/README-6.06 | 2 | ||||
-rw-r--r-- | initrd/distro-specs/ubuntu/config-5.10 | 3 | ||||
-rw-r--r-- | initrd/distro-specs/ubuntu/functions-5.10 | 395 | ||||
-rw-r--r-- | initrd/distro-specs/ubuntu/functions-6.06 | 429 |
4 files changed, 820 insertions, 9 deletions
diff --git a/initrd/distro-specs/ubuntu/README-6.06 b/initrd/distro-specs/ubuntu/README-6.06 index 4555c70d..55701ab5 100644 --- a/initrd/distro-specs/ubuntu/README-6.06 +++ b/initrd/distro-specs/ubuntu/README-6.06 @@ -1,6 +1,8 @@ fehler kubuntu 6.06: distro-functions: line 43: udevstert not found + -laut changelog von udev wird behaupted, dass man udevstart nicht mehr braucht.. + module unix not found -> im kernel anderer pfad in xorg.conf: fonts in /urs/share/X11/fonts + module pfad löschen diff --git a/initrd/distro-specs/ubuntu/config-5.10 b/initrd/distro-specs/ubuntu/config-5.10 index 452489d5..32a63559 100644 --- a/initrd/distro-specs/ubuntu/config-5.10 +++ b/initrd/distro-specs/ubuntu/config-5.10 @@ -1,3 +1,5 @@ +<<<<<<< .mine +======= # Description: distro specific settings for Ubuntu Hoary Hedgehog (5.10) # defaults are taken from config-default file # @@ -28,3 +30,4 @@ # during client bootup, path and file relative to /etc # no changes from default +>>>>>>> .r256 diff --git a/initrd/distro-specs/ubuntu/functions-5.10 b/initrd/distro-specs/ubuntu/functions-5.10 index a72a1321..c47270b0 100644 --- a/initrd/distro-specs/ubuntu/functions-5.10 +++ b/initrd/distro-specs/ubuntu/functions-5.10 @@ -11,4 +11,399 @@ # # Version: 0.3.0a +<<<<<<< .mine +# 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 + + # load unix module to provide sockets (is compiled into kernel on + # the live CDs!?) + modprobe ${MODPRV} unix || error "$df_errumod" nonfatal +} + +# 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 + + # set default runlevel + sed -e "s/.*initdefault/id:${D_INITDEFAULT}:initdefault/" -i /mnt/etc/inittab +} + +# AUS SuSE-9.3 +# udev/hotplug - auto device discovery service +udev_hotplug () { + local result=0 + [ -d /etc/hotplug -a -d /etc/hotplug.d ] || error "$df_errhotpl" nonfatal + echo "Enabling hotplug/udev" + udevstart || result=1 + udevd -d || result=1 + return $result +} + +## udev service +#udev_hotplug () { +#local result=0 +#echo "Starting udev" +#udevstart || result=1 +#if [ -x /bin/udevd ] ; then +# export UDEVD_EXPECTED_SEQNUM=$(cat /sys/kernel/hotplug_seqnum) +# export UDEVD_EVENT_TIMEOUT=1 +# echo "" > /proc/sys/kernel/hotplug +# udevd --daemon || result=1 +#else error "df_errudev" nonfatal +#fi +#return $result +#} + +# linking runlevel scripts +rllinker () { +local script="$1" +local start="$2" +local stop="$3" +# empty runlevel links - decision on running certain services is +# passed via configuration +for i in rc2.d/K$stop$script rc3.d/K$stop$script \ + rc2.d/S$start$script rc3.d/S$start$script ; do + if ! [ -f /mnt/etc/init.d/$script ]; then + echo "Target `pwd`../$script does not exist. Skipping links" + break + else + ln -sf ../init.d/$script /mnt/etc/$i + echo "Linked $script" + fi +done +} + +# group of functions for the normal runlevels - first parameter is start +# second stop +# function for ntp configuration +config_ntp () { +local start=07 +local stop=14 +if [ -f /mnt/etc/init.d/ntp ] ; then + echo -e "ntp:x:74:65534:NTP daemon:/var/lib/ntp:/bin/false" \ + >>/mnt/etc/passwd + testmkd /mnt/var/lib/ntp/var/run/ntp &>/dev/null + if [ "x$start_ntp" = "xinitial" ] ; then + echo -e "# entry added by $0: $date" \ + >>/mnt/etc/${D_INITDIR}/boot.ld + echo "ntpdate -s -b $ntp_servers >${LOGFILE} 2>&1 &" \ + >>/mnt/etc/${D_INITDIR}/boot.ld + else + rllinker "ntp" "$start" "$stop" + fi +fi +} + +# function for atd +config_atd () { +if [ "x$start_atd" = "xyes" ]; then + # testmkd /mnt/var/spool/atjobs + # testmkd /mnt/var/spool/atspool + # chown 1:1 /mnt/var/spool/atjobs /mnt/var/spool/atspool + rllinker "atd" "14" "04" +fi +} + +# function for configuration of cron services +config_cron () { +if [ "x$start_cron" = "xyes" ] ; then + if [ -f /mnt/etc/init.d/cron ] ; then + rllinker "cron" "18" "02" + # fixme! check for proper permissions! + testmkd /mnt/var/spool/crontabs + echo -e "# /etc/crontab - file generated by $0:\n\ +#\t$date\nSHELL=/bin/sh\nPATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin\ +\nMAILTO=\n-*/15 * * * *\troot\ttest -x /usr/lib/cron/run-crons && \ +/usr/lib/cron/run-crons >/dev/null 2>&1\n" >/mnt/etc/crontab + else + error "$df_errcron" nonfatal + fi +fi +} + +# 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.ld +} +"20" "02" +# acpi and powersave +config_acpi () { + rllinker "acpid" "02" "19" + rllinker "acpi-support" "20" "02" +} + +# configure gdm as display manager +config_gdm () { + # start the display manager as early as possible, but avoid that is + # started twice during bootup - quickhack ... + #ln -sf /etc/${D_INITDIR}/xdm /mnt/etc/${D_INITDIR}/rc5.d/S01xdm + ln -sf ../${D_INITDIR}/gdm /mnt/etc/rc3.d/K20gdm + echo -e "\t/etc/${D_INITDIR}/gdm start >${LOGFILE} 2>&1\n\ + \t( sleep 120; ln -sf /etc/${D_INITDIR}/gdm /etc/rc3.d/S01gdm \ + >${LOGFILE} 2>&1) &\n" >>/mnt/etc/${D_INITDIR}/boot.ld + # append gdm user + echo "gdm:x:113:">>/etc/group + echo "gdm:x:106:113:Gnome Display Manager:/var/lib/gdm:/bin/false" >>/etc/passwd + +echo -e "# /etc/gdm/gdm.conf - file generated by $0\n\ + +[daemon] +AutomaticLoginEnable=false +AutomaticLogin= +TimedLoginEnable=false +TimedLogin= +TimedLoginDelay=30 +Greeter=/usr/lib/gdm/gdmgreeter +DefaultPath=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11:/usr/games +RootPath=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11:/usr/games +User=gdm +Group=gdm +LogDir=/var/log/gdm +PidFile=/var/run/gdm.pid +PostLoginScriptDir=/etc/gdm/PostLogin/ +PreSessionScriptDir=/etc/gdm/PreSession/ +PostSessionScriptDir=/etc/gdm/PostSession/ +DisplayInitDir=/etc/gdm/Init +XKeepsCrashing=/etc/gdm/XKeepsCrashing +RebootCommand=/sbin/shutdown -r now \"Rebooted from gdm menu.\" +HaltCommand=/sbin/shutdown -h now \"Halted from gdm menu.\" +SuspendCommand=/usr/sbin/pmi action sleep +HibernateCommand=/usr/sbin/pmi action hibernate +ServAuthDir=/var/lib/gdm +BaseXsession=/etc/gdm/Xsession +SessionDesktopDir=/etc/X11/sessions/:/etc/dm/Sessions/:/usr/share/gdm/BuiltInSessions/:/usr/share/xsessions/ +DefaultSession=default.desktop +UserAuthDir= +UserAuthFBDir=/tmp +UserAuthFile=.Xauthority +StandardXServer=/usr/X11R6/bin/X +Xnest=/usr/X11R6/bin/Xnest -br -audit 0 -name Xnest +FirstVT=7 +VTAllocation=true +SoundProgram=/usr/lib/gdmplay +[security] +AllowRoot=false +AllowRemoteRoot=false +AllowRemoteAutoLogin=false +RelaxPermissions=0 +CheckDirOwner=true +DisallowTCP=true +[xdmcp] +Enable=false +[gui] +GtkTheme=Human +AllowGtkThemeChange=true +GtkThemesToAllow=Human,HighContrast,HighContrastInverse,LowContrast +[greeter] +ConfigAvailable=false +Browser=true +MinimalUID=1000 +Exclude=bin,daemon,adm,lp,sync,shutdown,halt,mail,news,uucp,operator,nobody,gdm,postgres,pvm,rpm +IncludeAll=true +LocaleFile=/etc/gdm/locale.conf +SystemMenu=true +SecureSystemMenu=false +DefaultWelcome=true +DefaultRemoteWelcome=true +BackgroundColor=#523921 +UseCirclesInEntry=true +GraphicalTheme=Human +GraphicalThemeDir=/usr/share/gdm/themes/ +GraphicalThemeRand=false +SoundOnLogin=true +SoundOnLoginFile=/usr/share/sounds/question.wav +[chooser] +HostImageDir=/usr/share/hosts/ +Hosts= +Broadcast=true +Multicast=false +[debug] +Enable=false +[servers] +0=Standard +[server-Standard] +name=Standard server +command=/usr/X11R6/bin/X -br -audit 0 +flexible=true +[server-Terminal] +name=Terminal server +command=/usr/X11R6/bin/X -br -audit 0 -terminate +flexible=false +handled=false +[server-Chooser] +name=Chooser server +command=/usr/X11R6/bin/X -br -audit 0 +flexible=false +chooser=true + + + +[debug] +Enable=$debug" >/mnt/etc/gdm/gdm.conf + +if [ "x$start_x" = "xindirect" ] ; then + # when X server consumes to much mem set X -terminate + echo -e "\n[servers]\n0=Terminal -audit 0 -indirect \ +$host_name\n\n\ +[server-Terminal]\nname=Terminal server\ncommand=/usr/X11R6/bin/X \ +-audit 0\n\ +flexible=true\nhandled=true\nchooser=true" >>/mnt/etc/opt/gnome/gdm/gdm.conf +else + echo -e "\n[servers]\n0=Standard\n\n\ +[server-Standard]\nname=Standard server\ncommand=/usr/X11R6/bin/X\n\ +flexible=true\nhandled=true" >>/mnt/etc/opt/gnome/gdm/gdm.conf +fi +} + +# configure kdm as display manager +config_kdm () { + ln -sf ../${D_INITDIR}/kdm /mnt/etc/rc3.d/K20kdm + echo -e "\t/etc/${D_INITDIR}/kdm start >${LOGFILE} 2>&1\n\ + \t( sleep 120; ln -sf /etc/${D_INITDIR}/kdm /etc/rc3.d/S01kdm \ + >${LOGFILE} 2>&1) &\n" >>/mnt/etc/${D_INITDIR}/boot.ld +} + +# configure hal, dbus, resmgr and services like that +config_dreshal () { +if [ "x$start_dreshal" = "xyes" ]; then + : +fi +} + +# initialize boot.ld - 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 "#!/bin/sh\n# skeleton of /etc/${D_INITDIR}/$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" \ + >/mnt/etc/${D_INITDIR}/$name + echo -e "\n\ncase \"\$1\" in\n start)\techo -n \"$info\"" \ + >>/mnt/etc/${D_INITDIR}/$name + chmod u+x /mnt/etc/${D_INITDIR}/$name + ;; + close) + echo -e "\t;;\n stop)\n\t;;\nesac\nexit 0" \ + >>/mnt/etc/${D_INITDIR}/$name + ;; +esac +} + +# fixme!! taken from SuSE10.0 untested here ... +# prepare virtual machine environment (vmware, vmplayer) +config_vmware () { +rllinker "vmware-prep" "18" "02" +rllinker "vmware" "20" "02" +# during vmware sessions linux should not handle usb events/devices +testmkd /mnt/var/X11R6/bin +echo '#!/bin/sh'>> /mnt/etc/udev/rules.d/01-udev-vm.rules +echo -e "# Script for blocking linux from handling usb \ +devices\n# during vmware sessions. If you like to remove certain modules \ +add them\n# to the list below - Dirk von Suchodoletz, <dirk@goe.net>\n\ +STATE=1\nps aux|grep -i vmware|grep -v \"grep\" &>/dev/null && { STATE=0; \ +/sbin/rmmod usb-storage &>/tmp/null; }\n\ +[ x$ACTION = xremove ] && { [ $STATE = 0 ] && /sbin/rmmod usb-storage \ +&>/dev/null; }\nexit \$STATE" > /mnt/var/X11R6/bin/vm-udev +chmod u+x /mnt/var/X11R6/bin/vm-udev +echo -e "# special entry to block linux from reacting to usb events during \ +running\n# vmware sessions, generated by $0 during initramfs\n# Dirk von \ +Suchodoletz, <dirk@goe.net>\nSUBSYSTEM==\"usb\", ACTION==\"add\", \ +PROGRAM=\"/var/X11R6/bin/vm-udev\", OPTIONS=\"ignore_device\"\n\ +SUBSYSTEM==\"usb\", ACTION==\"remove\", PROGRAM=\"/var/X11R6/bin/vm-udev\"" \ + >> /mnt/etc/udev/rules.d/01-udev-vm.rules +} + +# 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 + echo -e "# /etc/sysconfig/autofs - file modified by\n#\t$0:\n#" \ + > /etc/autofs + sed -e "s,AUTOFS_OPTIONS.*,AUTOFS_OPTIONS=\"--timeout 3\"," \ + /mnt/etc/${D_SYSCONFDIR}/autofs >> /etc/autofs + cp /etc/autofs /mnt/etc/${D_SYSCONFDIR}/autofs + config_portmap + rllinker "autofs" "18" "04" +fi +} + +# start portmapper (needed at least for nfs and nis services) +config_portmap () { + echo "5.10" + rllinker "portmap" "02" "20" +} + +# start NIS (fixmee - does the service is really named ypbind??) +config_nis () { + rllinker "ypbind" "06" "16" +} +======= # nothing changed from default yet +>>>>>>> .r256 diff --git a/initrd/distro-specs/ubuntu/functions-6.06 b/initrd/distro-specs/ubuntu/functions-6.06 index f2229f1d..ea7fb0ad 100644 --- a/initrd/distro-specs/ubuntu/functions-6.06 +++ b/initrd/distro-specs/ubuntu/functions-6.06 @@ -1,14 +1,425 @@ -# Description: configuration script for Ubuntu V6.06 to configure -# linux diskless clients (executed within initial -# ramdisk after genconfig) - overwrites settings from the -# ubuntu default file (functions-default) +# Description: configuration script for Ubuntu V6.06 Dapper Dake +# to configure linux diskless clients (executed within +# initial ramdisk after genconfig) # -# Author(s): Dirk von Suchodoletz <dirk@goe.net>, 23-06-2006 -# Nico Dietrich -# Felix Endres +# Author(s): Dirk von Suchodoletz <dirk@goe.net>, 18-05-2006 +# Nico Dietrich +# Felix Endres # # Copyright: (c) 2006 - RZ Universitaet Freiburg # -# Version: 0.3.0a +# Version: 0.2.1g -# nothing changed from default yet +# 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 + + testmkd /mnt/etc/rcS.d + # load unix module to provide sockets (is compiled into kernel on + # the live CDs!?) +# modprobe ${MODPRV} unix || error "$df_errumod" nonfatal + echo "preinit ende" +} +#postinit(){ +# +#} +# 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 + + # set default runlevel +# sed -e "s/.*initdefault/id:${D_INITDEFAULT}:initdefault/" -i /mnt/etc/inittab + +} + +# AUS SuSE-9.3 +# udev/hotplug - auto device discovery service +udev_hotplug () { +# local result=0 +# [ -d /etc/hotplug -a -d /etc/hotplug.d ] || error "$df_errhotpl" nonfatal +# echo "Enabling hotplug/udev" +# udevd -d || result=1 +# return $result +: +} + +#} + +# linking runlevel scripts +rllinker () { +local script="$1" +local start="$2" +local stop="$3" +# empty runlevel links - decision on running certain services is +# passed via configuration +for i in rc0.d/K$stop$script rc.S/S$start$script \ + rc2.d/K$stop$script rc3.d/K$stop$script \ + rc2.d/S$start$script rc3.d/S$start$script ; do + if ! [ -f /mnt/etc/init.d/$script ]; then + echo "Target `pwd`../$script does not exist. Skipping links" + break + else + ln -sf /mnt/etc/init.d/$script /mnt/etc/$i + echo "Linked $script" + fi +done +} + +# group of functions for the normal runlevels - first parameter is start +# second stop +# function for ntp configuration + +config_ntp () { + + local start=13 + local stop=14 + +echo -e "#!/bin/sh +PATH=/sbin:/bin + +test -f /usr/sbin/ntpdate || exit 0 + +if test -f /etc/default/ntpdate ; then +. /etc/default/ntpdate +else +NTPSERVERS=\"pool.ntp.org\" +fi + +test -n \"\$NTPSERVERS\" || exit 0 + +. /lib/lsb/init-functions + +case \"\$1\" in +start|force-reload) + log_begin_msg \"Synchronizing clock to \$NTPSERVERS...\" + /usr/sbin/ntpdate -b -s \$NTPOPTIONS \$NTPSERVERS + log_end_msg \$? + ;; +restart|reload) + # Drop -b to slew clock rather than step it if called after system is up + log_begin_msg \"Synchronizing clock to \$NTPSERVERS...\" + /usr/sbin/ntpdate -s \$NTPOPTIONS \$NTPSERVERS + log_end_msg \$? + ;; +stop) + ;; +*) + log_success_msg \"Usage: /etc/init.d/ntpdate {start|stop|restart|reload|force-reload}\" + exit 1 +esac + +exit 0" > /mnt/etc/init.d/ntpdate + + chmod a+x /mnt/etc/init.d/ntpdate + rllinker "ntpdate" "$start" "$stop" +} + +# function for atd +config_atd () { +if [ "x$start_atd" = "xyes" ]; then + # testmkd /mnt/var/spool/atjobs + # testmkd /mnt/var/spool/atspool + # chown 1:1 /mnt/var/spool/atjobs /mnt/var/spool/atspool + rllinker "atd" "14" "04" +fi +} + +# function for configuration of cron services +config_cron () { +if [ "x$start_cron" = "xyes" ] ; then + if [ -f /mnt/etc/init.d/cron ] ; then + rllinker "cron" "18" "02" + # fixme! check for proper permissions! + testmkd /mnt/var/spool/crontabs + echo -e "# /etc/crontab - file generated by $0:\n\ +#\t$date\nSHELL=/bin/sh\nPATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin\ +\nMAILTO=\n-*/15 * * * *\troot\ttest -x /usr/lib/cron/run-crons && \ +/usr/lib/cron/run-crons >/dev/null 2>&1\n" >/mnt/etc/crontab + else + error "$df_errcron" nonfatal + fi +fi +} + +# 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" + testmkd /mnt/var/log/news +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.ld +} +"20" "02" +# acpi and powersave +config_acpi () { + rllinker "acpid" "02" "19" + rllinker "acpi-support" "20" "02" +} + +# configure gdm as display manager +config_gdm () { + # start the display manager as early as possible, but avoid that is + # started twice during bootup - quickhack ... + #ln -sf /etc/${D_INITDIR}/xdm /mnt/etc/${D_INITDIR}/rc5.d/S01xdm + ln -sf ../${D_INITDIR}/gdm /mnt/etc/rc3.d/K20gdm + echo -e "\t/etc/${D_INITDIR}/gdm start >${LOGFILE} 2>&1\n\ + \t( sleep 120; ln -sf /etc/${D_INITDIR}/gdm /etc/rc3.d/S01gdm \ + >${LOGFILE} 2>&1) &\n" >>/mnt/etc/${D_INITDIR}/boot.ld + # append gdm user + echo "gdm:x:113:">>/etc/group + echo "gdm:x:106:113:Gnome Display Manager:/var/lib/gdm:/bin/false" >>/etc/passwd + +echo -e "# /etc/gdm/gdm.conf - file generated by $0\n\ + +[daemon] +AutomaticLoginEnable=false +AutomaticLogin= +TimedLoginEnable=false +TimedLogin= +TimedLoginDelay=30 +Greeter=/usr/lib/gdm/gdmgreeter +DefaultPath=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11:/usr/games +RootPath=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11:/usr/games +User=gdm +Group=gdm +LogDir=/var/log/gdm +PidFile=/var/run/gdm.pid +PostLoginScriptDir=/etc/gdm/PostLogin/ +PreSessionScriptDir=/etc/gdm/PreSession/ +PostSessionScriptDir=/etc/gdm/PostSession/ +DisplayInitDir=/etc/gdm/Init +XKeepsCrashing=/etc/gdm/XKeepsCrashing +RebootCommand=/sbin/shutdown -r now \"Rebooted from gdm menu.\" +HaltCommand=/sbin/shutdown -h now \"Halted from gdm menu.\" +SuspendCommand=/usr/sbin/pmi action sleep +HibernateCommand=/usr/sbin/pmi action hibernate +ServAuthDir=/var/lib/gdm +BaseXsession=/etc/gdm/Xsession +SessionDesktopDir=/etc/X11/sessions/:/etc/dm/Sessions/:/usr/share/gdm/BuiltInSessions/:/usr/share/xsessions/ +DefaultSession=default.desktop +UserAuthDir= +UserAuthFBDir=/tmp +UserAuthFile=.Xauthority +StandardXServer=/usr/X11R6/bin/X +Xnest=/usr/X11R6/bin/Xnest -br -audit 0 -name Xnest +FirstVT=7 +VTAllocation=true +SoundProgram=/usr/lib/gdmplay +[security] +AllowRoot=false +AllowRemoteRoot=false +AllowRemoteAutoLogin=false +RelaxPermissions=0 +CheckDirOwner=true +DisallowTCP=true +[xdmcp] +Enable=false +[gui] +GtkTheme=Human +AllowGtkThemeChange=true +GtkThemesToAllow=Human,HighContrast,HighContrastInverse,LowContrast +[greeter] +ConfigAvailable=false +Browser=true +MinimalUID=1000 +Exclude=bin,daemon,adm,lp,sync,shutdown,halt,mail,news,uucp,operator,nobody,gdm,postgres,pvm,rpm +IncludeAll=true +LocaleFile=/etc/gdm/locale.conf +SystemMenu=true +SecureSystemMenu=false +DefaultWelcome=true +DefaultRemoteWelcome=true +BackgroundColor=#523921 +UseCirclesInEntry=true +GraphicalTheme=Human +GraphicalThemeDir=/usr/share/gdm/themes/ +GraphicalThemeRand=false +SoundOnLogin=true +SoundOnLoginFile=/usr/share/sounds/question.wav +[chooser] +HostImageDir=/usr/share/hosts/ +Hosts= +Broadcast=true +Multicast=false +[debug] +Enable=false +[servers] +0=Standard +[server-Standard] +name=Standard server +command=/usr/X11R6/bin/X -br -audit 0 +flexible=true +[server-Terminal] +name=Terminal server +command=/usr/X11R6/bin/X -br -audit 0 -terminate +flexible=false +handled=false +[server-Chooser] +name=Chooser server +command=/usr/X11R6/bin/X -br -audit 0 +flexible=false +chooser=true + + + +[debug] +Enable=$debug" >/mnt/etc/gdm/gdm.conf + +if [ "x$start_x" = "xindirect" ] ; then + # when X server consumes to much mem set X -terminate + echo -e "\n[servers]\n0=Terminal -audit 0 -indirect \ +$host_name\n\n\ +[server-Terminal]\nname=Terminal server\ncommand=/usr/X11R6/bin/X \ +-audit 0\n\ +flexible=true\nhandled=true\nchooser=true" >>/mnt/etc/opt/gnome/gdm/gdm.conf +else + echo -e "\n[servers]\n0=Standard\n\n\ +[server-Standard]\nname=Standard server\ncommand=/usr/X11R6/bin/X\n\ +flexible=true\nhandled=true" >>/mnt/etc/opt/gnome/gdm/gdm.conf +fi +} + +# configure kdm as display manager +config_kdm () { + ln -sf ../${D_INITDIR}/kdm /mnt/etc/rc3.d/K20kdm + echo -e "\t/etc/${D_INITDIR}/kdm start >${LOGFILE} 2>&1\n\ + \t( sleep 120; ln -sf /etc/${D_INITDIR}/kdm /etc/rc3.d/S01kdm \ + >${LOGFILE} 2>&1) &\n" >>/mnt/etc/${D_INITDIR}/boot.ld +} + +# configure hal, dbus, resmgr and services like that +config_dreshal () { +if [ "x$start_dreshal" = "xyes" ]; then + : +fi +} + +# initialize boot.ld - 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 "#!/bin/sh\n# skeleton of /etc/${D_INITDIR}/$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" \ + >/mnt/etc/${D_INITDIR}/$name + echo -e "\n\ncase \"\$1\" in\n start)\techo -n \"$info\"" \ + >>/mnt/etc/${D_INITDIR}/$name + chmod u+x /mnt/etc/${D_INITDIR}/$name + ;; + close) + echo -e "\t;;\n stop)\n\t;;\nesac\nexit 0" \ + >>/mnt/etc/${D_INITDIR}/$name + ;; +esac +} + +# fixme!! taken from SuSE10.0 untested here ... +# prepare virtual machine environment (vmware, vmplayer) +config_vmware () { +rllinker "vmware-prep" "18" "02" +rllinker "vmware" "20" "02" +# during vmware sessions linux should not handle usb events/devices +testmkd /mnt/var/X11R6/bin +echo '#!/bin/sh'>> /mnt/etc/udev/rules.d/01-udev-vm.rules +echo -e "# Script for blocking linux from handling usb \ +devices\n# during vmware sessions. If you like to remove certain modules \ +add them\n# to the list below - Dirk von Suchodoletz, <dirk@goe.net>\n\ +STATE=1\nps aux|grep -i vmware|grep -v \"grep\" &>/dev/null && { STATE=0; \ +/sbin/rmmod usb-storage &>/tmp/null; }\n\ +[ x$ACTION = xremove ] && { [ $STATE = 0 ] && /sbin/rmmod usb-storage \ +&>/dev/null; }\nexit \$STATE" > /mnt/var/X11R6/bin/vm-udev +chmod u+x /mnt/var/X11R6/bin/vm-udev +echo -e "# special entry to block linux from reacting to usb events during \ +running\n# vmware sessions, generated by $0 during initramfs\n# Dirk von \ +Suchodoletz, <dirk@goe.net>\nSUBSYSTEM==\"usb\", ACTION==\"add\", \ +PROGRAM=\"/var/X11R6/bin/vm-udev\", OPTIONS=\"ignore_device\"\n\ +SUBSYSTEM==\"usb\", ACTION==\"remove\", PROGRAM=\"/var/X11R6/bin/vm-udev\"" \ + >> /mnt/etc/udev/rules.d/01-udev-vm.rules +} + +# 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 + echo -e "# /etc/sysconfig/autofs - file modified by\n#\t$0:\n#" \ + > /etc/autofs + sed -e "s,AUTOFS_OPTIONS.*,AUTOFS_OPTIONS=\"--timeout 3\"," \ + /mnt/etc/${D_SYSCONFDIR}/autofs >> /etc/autofs + cp /etc/autofs /mnt/etc/${D_SYSCONFDIR}/autofs + config_portmap + rllinker "autofs" "18" "04" +fi +} + +# start portmapper (needed at least for nfs and nis services) +config_portmap () { + rllinker "portmap" "02" "20" +} + +# start NIS (fixmee - does the service is really named ypbind??) +config_nis () { + rllinker "ypbind" "06" "16" +} |