From 9cbaf3a23a9791bc2d2c3a7fd3516922debfb464 Mon Sep 17 00:00:00 2001 From: Michael Janczyk Date: Wed, 7 Nov 2012 18:48:54 +0100 Subject: added rhel, centos, scientific linux 5 and 6. centos and sl are depending on rhel. simple pxe menu for default blue look. firmwares of other nw cards are copied now. --- src/boot-env/OpenSLX/BootEnvironment/PXE.pm | 8 +- .../OpenSLX/MakeInitRamFS/Distro/Centos.pm | 36 +++ src/boot-env/OpenSLX/MakeInitRamFS/Distro/Rhel.pm | 58 ++++ .../OpenSLX/MakeInitRamFS/Distro/Scientific.pm | 36 +++ src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm | 23 +- src/boot-env/syslinux/themes/simple/theme.conf | 19 ++ .../distro-specs/centos/functions-default | 311 +++++++++++++++++++++ src/initramfs/distro-specs/rhel/functions-default | 311 +++++++++++++++++++++ .../distro-specs/scientific/functions-default | 311 +++++++++++++++++++++ src/installer/OpenSLX/OSExport/Distro/Centos.pm | 35 +++ src/installer/OpenSLX/OSExport/Distro/Rhel.pm | 94 +++++++ .../OpenSLX/OSExport/Distro/Scientific.pm | 35 +++ src/installer/OpenSLX/OSSetup/Distro/Centos.pm | 27 ++ src/installer/OpenSLX/OSSetup/Distro/Rhel.pm | 48 ++++ src/installer/OpenSLX/OSSetup/Distro/Scientific.pm | 27 ++ src/installer/OpenSLX/OSSetup/Engine.pm | 14 +- src/lib/distro-info/centos-5/export-filter.example | 15 + src/lib/distro-info/centos-5/prereqfiles/etc/group | 33 +++ src/lib/distro-info/centos-5/prereqfiles/etc/hosts | 1 + .../distro-info/centos-5/prereqfiles/etc/passwd | 14 + .../distro-info/centos-5/prereqfiles/etc/shadow | 14 + src/lib/distro-info/centos-5/settings.default | 30 ++ src/lib/distro-info/centos-5/settings.example | 17 ++ src/lib/distro-info/centos-6/export-filter.example | 15 + src/lib/distro-info/centos-6/prereqfiles/etc/group | 33 +++ src/lib/distro-info/centos-6/prereqfiles/etc/hosts | 1 + .../distro-info/centos-6/prereqfiles/etc/passwd | 14 + .../distro-info/centos-6/prereqfiles/etc/shadow | 14 + src/lib/distro-info/centos-6/settings.default | 30 ++ src/lib/distro-info/centos-6/settings.example | 17 ++ src/lib/distro-info/rhel-5/export-filter.example | 15 + src/lib/distro-info/rhel-5/prereqfiles/etc/group | 33 +++ src/lib/distro-info/rhel-5/prereqfiles/etc/hosts | 1 + src/lib/distro-info/rhel-5/prereqfiles/etc/passwd | 14 + src/lib/distro-info/rhel-5/prereqfiles/etc/shadow | 14 + src/lib/distro-info/rhel-5/settings.default | 30 ++ src/lib/distro-info/rhel-5/settings.example | 17 ++ src/lib/distro-info/rhel-6/export-filter.example | 15 + src/lib/distro-info/rhel-6/prereqfiles/etc/group | 33 +++ src/lib/distro-info/rhel-6/prereqfiles/etc/hosts | 1 + src/lib/distro-info/rhel-6/prereqfiles/etc/passwd | 14 + src/lib/distro-info/rhel-6/prereqfiles/etc/shadow | 14 + src/lib/distro-info/rhel-6/settings.default | 30 ++ src/lib/distro-info/rhel-6/settings.example | 17 ++ .../distro-info/scientific-5/export-filter.example | 15 + .../distro-info/scientific-5/prereqfiles/etc/group | 33 +++ .../distro-info/scientific-5/prereqfiles/etc/hosts | 1 + .../scientific-5/prereqfiles/etc/passwd | 14 + .../scientific-5/prereqfiles/etc/shadow | 14 + src/lib/distro-info/scientific-5/settings.default | 30 ++ src/lib/distro-info/scientific-5/settings.example | 17 ++ .../distro-info/scientific-6/export-filter.example | 15 + .../distro-info/scientific-6/prereqfiles/etc/group | 33 +++ .../distro-info/scientific-6/prereqfiles/etc/hosts | 1 + .../scientific-6/prereqfiles/etc/passwd | 14 + .../scientific-6/prereqfiles/etc/shadow | 14 + src/lib/distro-info/scientific-6/settings.default | 30 ++ src/lib/distro-info/scientific-6/settings.example | 17 ++ 58 files changed, 2121 insertions(+), 16 deletions(-) create mode 100644 src/boot-env/OpenSLX/MakeInitRamFS/Distro/Centos.pm create mode 100644 src/boot-env/OpenSLX/MakeInitRamFS/Distro/Rhel.pm create mode 100644 src/boot-env/OpenSLX/MakeInitRamFS/Distro/Scientific.pm create mode 100644 src/boot-env/syslinux/themes/simple/theme.conf create mode 100644 src/initramfs/distro-specs/centos/functions-default create mode 100644 src/initramfs/distro-specs/rhel/functions-default create mode 100644 src/initramfs/distro-specs/scientific/functions-default create mode 100644 src/installer/OpenSLX/OSExport/Distro/Centos.pm create mode 100644 src/installer/OpenSLX/OSExport/Distro/Rhel.pm create mode 100644 src/installer/OpenSLX/OSExport/Distro/Scientific.pm create mode 100644 src/installer/OpenSLX/OSSetup/Distro/Centos.pm create mode 100644 src/installer/OpenSLX/OSSetup/Distro/Rhel.pm create mode 100644 src/installer/OpenSLX/OSSetup/Distro/Scientific.pm create mode 100644 src/lib/distro-info/centos-5/export-filter.example create mode 100644 src/lib/distro-info/centos-5/prereqfiles/etc/group create mode 100644 src/lib/distro-info/centos-5/prereqfiles/etc/hosts create mode 100644 src/lib/distro-info/centos-5/prereqfiles/etc/passwd create mode 100644 src/lib/distro-info/centos-5/prereqfiles/etc/shadow create mode 100644 src/lib/distro-info/centos-5/settings.default create mode 100644 src/lib/distro-info/centos-5/settings.example create mode 100644 src/lib/distro-info/centos-6/export-filter.example create mode 100644 src/lib/distro-info/centos-6/prereqfiles/etc/group create mode 100644 src/lib/distro-info/centos-6/prereqfiles/etc/hosts create mode 100644 src/lib/distro-info/centos-6/prereqfiles/etc/passwd create mode 100644 src/lib/distro-info/centos-6/prereqfiles/etc/shadow create mode 100644 src/lib/distro-info/centos-6/settings.default create mode 100644 src/lib/distro-info/centos-6/settings.example create mode 100644 src/lib/distro-info/rhel-5/export-filter.example create mode 100644 src/lib/distro-info/rhel-5/prereqfiles/etc/group create mode 100644 src/lib/distro-info/rhel-5/prereqfiles/etc/hosts create mode 100644 src/lib/distro-info/rhel-5/prereqfiles/etc/passwd create mode 100644 src/lib/distro-info/rhel-5/prereqfiles/etc/shadow create mode 100644 src/lib/distro-info/rhel-5/settings.default create mode 100644 src/lib/distro-info/rhel-5/settings.example create mode 100644 src/lib/distro-info/rhel-6/export-filter.example create mode 100644 src/lib/distro-info/rhel-6/prereqfiles/etc/group create mode 100644 src/lib/distro-info/rhel-6/prereqfiles/etc/hosts create mode 100644 src/lib/distro-info/rhel-6/prereqfiles/etc/passwd create mode 100644 src/lib/distro-info/rhel-6/prereqfiles/etc/shadow create mode 100644 src/lib/distro-info/rhel-6/settings.default create mode 100644 src/lib/distro-info/rhel-6/settings.example create mode 100644 src/lib/distro-info/scientific-5/export-filter.example create mode 100644 src/lib/distro-info/scientific-5/prereqfiles/etc/group create mode 100644 src/lib/distro-info/scientific-5/prereqfiles/etc/hosts create mode 100644 src/lib/distro-info/scientific-5/prereqfiles/etc/passwd create mode 100644 src/lib/distro-info/scientific-5/prereqfiles/etc/shadow create mode 100644 src/lib/distro-info/scientific-5/settings.default create mode 100644 src/lib/distro-info/scientific-5/settings.example create mode 100644 src/lib/distro-info/scientific-6/export-filter.example create mode 100644 src/lib/distro-info/scientific-6/prereqfiles/etc/group create mode 100644 src/lib/distro-info/scientific-6/prereqfiles/etc/hosts create mode 100644 src/lib/distro-info/scientific-6/prereqfiles/etc/passwd create mode 100644 src/lib/distro-info/scientific-6/prereqfiles/etc/shadow create mode 100644 src/lib/distro-info/scientific-6/settings.default create mode 100644 src/lib/distro-info/scientific-6/settings.example (limited to 'src') diff --git a/src/boot-env/OpenSLX/BootEnvironment/PXE.pm b/src/boot-env/OpenSLX/BootEnvironment/PXE.pm index 507ca9dc..56549bf4 100644 --- a/src/boot-env/OpenSLX/BootEnvironment/PXE.pm +++ b/src/boot-env/OpenSLX/BootEnvironment/PXE.pm @@ -216,7 +216,11 @@ sub _getTemplate # generate PXE-Menu my $pxeTemplate = "# generated by slxconfig-demuxer (on $callDate at $callTime)\n"; - $pxeTemplate .= "\nDEFAULT vesamenu.c32\n"; + if ($pxeTheme eq "simple") { + $pxeTemplate .= "\nDEFAULT menu.c32\n"; + } else { + $pxeTemplate .= "\nDEFAULT vesamenu.c32\n"; + } # include static defaults $pxeTemplate .= "\n# static configuration (override with include file)\n"; $pxeTemplate .= "NOESCAPE 0\n"; @@ -292,7 +296,7 @@ sub _prepareBootloaderConfigFolder rmtree($pxeConfigPath); mkpath($pxeConfigPath); - for my $file ('pxelinux.0', 'pxechain.com', 'vesamenu.c32', + for my $file ('pxelinux.0', 'pxechain.com', 'vesamenu.c32', 'menu.c32', 'mboot.c32', 'kernel-shutdown', 'initramfs-shutdown') { if (!-e "$pxePath/$file") { slxsystem( diff --git a/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Centos.pm b/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Centos.pm new file mode 100644 index 00000000..abfaf622 --- /dev/null +++ b/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Centos.pm @@ -0,0 +1,36 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# MakeInitRamFS::Distro::Centos.pm +# - provides CentOS Linux specific overrides of the +# MakeInitRamFS::Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::MakeInitRamFS::Distro::Centos; + +use strict; +use warnings; + +use base qw(OpenSLX::MakeInitRamFS::Distro::Rhel); + +use OpenSLX::Basics; + +################################################################################ +### implementation +################################################################################ +sub new +{ + my $class = shift; + my $self = { + 'base-name' => 'centos', + }; + return bless $self, $class; +} + +1; diff --git a/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Rhel.pm b/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Rhel.pm new file mode 100644 index 00000000..54bb2c6d --- /dev/null +++ b/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Rhel.pm @@ -0,0 +1,58 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# MakeInitRamFS::Distro::Rhel.pm +# - provides RHEL specific overrides of the MakeInitRamFS::Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::MakeInitRamFS::Distro::Rhel; + +use strict; +use warnings; + +use base qw(OpenSLX::MakeInitRamFS::Distro::Base); + +use OpenSLX::Basics; + +################################################################################ +### implementation +################################################################################ +sub new +{ + my $class = shift; + my $self = { + 'base-name' => 'rhel', + }; + return bless $self, $class; +} + +sub applyChanges +{ + my $self = shift; + my $engine = shift; + # filter modules which are part of the main kernel already + $engine->_addFilteredKernelModules( qw( af_packet hid hid-bright usbhid unix vesafb fbcon )); + + return; +} + +sub determineMatchingHwinfoVersion +{ + my $self = shift; + my $distroVersion = shift; + + my %versionMap = ( + '5.x' => '16.0', + '6.x' => '16.0', + ); + return $versionMap{$distroVersion} + || $self->SUPER::determineMatchingHwinfoVersion($distroVersion); +} + +1; diff --git a/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Scientific.pm b/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Scientific.pm new file mode 100644 index 00000000..5b2d7613 --- /dev/null +++ b/src/boot-env/OpenSLX/MakeInitRamFS/Distro/Scientific.pm @@ -0,0 +1,36 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# MakeInitRamFS::Distro::Scientific.pm +# - provides Scientific Linux specific overrides of the +# MakeInitRamFS::Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::MakeInitRamFS::Distro::Scientific; + +use strict; +use warnings; + +use base qw(OpenSLX::MakeInitRamFS::Distro::Rhel); + +use OpenSLX::Basics; + +################################################################################ +### implementation +################################################################################ +sub new +{ + my $class = shift; + my $self = { + 'base-name' => 'scientific', + }; + return bless $self, $class; +} + +1; diff --git a/src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm b/src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm index 1771784c..9fd2c8bc 100644 --- a/src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm +++ b/src/boot-env/OpenSLX/MakeInitRamFS/Engine/Base.pm @@ -278,23 +278,28 @@ sub _copyKernelModules # build a list of required firmwares out of the list of modules - not # totally optimal my @firmwares; - $self->addCMD("mkdir -p $self->{'build-path'}/lib/firmware/$self->{'kernel-version'}"); + $self->addCMD("mkdir -p $self->{'build-path'}/lib/firmware"); + $self->addCMD("ln -s . $self->{'build-path'}/lib/firmware/$self->{'kernel-version'}"); foreach my $moduleToBeCopied(%modulesToBeCopied) { $moduleToBeCopied =~ /.*\/(.*?)$/; # implies usage of switch vlog(1,$1); switch ($1){ + # nic modules fw + case "bnx2.ko" {push @firmwares, split ' ', "bnx2/"} + case "bnx2x.ko" {push @firmwares, split ' ', "bnx2x/"} case "e100.ko" {push @firmwares, split ' ', "e100"} + case "r8169.ko" {push @firmwares, split ' ', "rtl_nic/"} + case "tg3.ko" {push @firmwares, split ' ', "tigon/"} + # wifi fw case "iwlwifi" { push @firmwares, split ' ', "iwlwifi-3945-1.ucode iwlwifi-3945-2.ucode iwlwifi-4965-1.ucode iwlwifi-4965-2.ucode iwlwifi-5000-1.ucode" } - case "tg3.ko" {push @firmwares, split ' ', "tigon/"} # modules required for graphic adaptors (bootsplash, Xorg) case "radeon.ko" {push @firmwares, split ' ', "radeon/"} case "mga.ko" {push @firmwares, split ' ', "matrox/"} case "r128.ko" {push @firmwares, split ' ', "r128/"} - case "r8169.ko" {push @firmwares, split ' ', "rtl_nic/"} } } # copy all the firmwares that we think are required @@ -305,18 +310,16 @@ sub _copyKernelModules my $alternative_source = followLink( "$self->{'root-path'}/lib/firmware/$firmwareToBeCopied", $self->{'root-path'} ); + my $target = "$self->{'build-path'}/lib/firmware/"; if (-e $source){ - my $target = "$self->{'build-path'}/lib/firmware/$self->{'kernel-version'}/"; - $self->addCMD("cp -pr --dereference $source $target"); - } else { - vlog(3,"unable to find $source for copying purposes"); } - if (-e $alternative_source){ - my $target = "$self->{'build-path'}/lib/firmware/"; - + elsif (-e $alternative_source){ $self->addCMD("cp -pr --dereference $alternative_source $target"); } + else { + vlog(3,"unable to find $source for copying purposes"); + } } # copy all the modules that we think are required diff --git a/src/boot-env/syslinux/themes/simple/theme.conf b/src/boot-env/syslinux/themes/simple/theme.conf new file mode 100644 index 00000000..97cc153e --- /dev/null +++ b/src/boot-env/syslinux/themes/simple/theme.conf @@ -0,0 +1,19 @@ +# openslx theme style definition +# please define only look of your theme +# for non-theme definitions use slxsettings +# or include file in /etc/opt/openslx/boot-env/syslinux/pxemenu-include + +MENU WIDTH 78 +MENU MARGIN 9 +MENU PASSWORDMARGIN 9 +MENU ROWS 10 +MENU TABMSGROW 16 +MENU CMDLINEROW 16 +MENU ENDROW -1 +MENU PASSWORDROW 16 +MENU TIMEOUTROW 20 +MENU HELPMSGROW 16 +MENU HELPMSGENDROW -1 +MENU HSHIFT 0 +MENU VSHIFT 7 + diff --git a/src/initramfs/distro-specs/centos/functions-default b/src/initramfs/distro-specs/centos/functions-default new file mode 100644 index 00000000..a5234a95 --- /dev/null +++ b/src/initramfs/distro-specs/centos/functions-default @@ -0,0 +1,311 @@ +# Copyright (c) 2012 - 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 general CentOS Linux to configure linux +# stateless clients (included by init, hwautocfg, servconfig within Initial- +# RamFS after inclusion of the main functions file). This file is the main +# base for the several RedHat based Scientific Linux versions. + +# settings of central variables +# 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_BINDMPTS="tmp root media home" +D_DIRINBINDMNT="/var/run /var/log /var/tmp" +D_RODIRSINRW="/etc/bootsplash /etc/gconf /var/adm /var/lib/texmf /var/lib/rpm \ +/var/cache/fontconfig" +D_DIRINDXS="/var/lib/rpm /var/lib/nobody /var/lib/alternatives/ /var/db/nscd \ +/var/lib/bluetooth /var/lib/scrollkeeper /var/lib/nfs/sm /var/lib/nfs/sm.bak \ +/var/lib/misc /var/spool/cron" + +# empty functions are defined at the beginning of /etc/functions + +# 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 ; do + rm -rf /mnt/etc/${dir}/* + done + # set some system/environment information + echo -e "SLX VERSION = $SLXVERSION\nINITRAMFS GENERATION DATE = $date" \ + >>/mnt/etc/redhat-release + # simple bash configuration for root + echo -e "# Generated in OpenSLX stage3\n. /etc/bashrc" >/mnt/root/.profile + # enable sysrq + sed -e "1i# Configuration modified by $0 during stage3 bootup." \ + -e "s/kernel.sysrq =.*/kernel.sysrq = 1/" -i /mnt/etc/sysctl.conf + # set some networking stuff if needed + [ -e /mnt/etc/sysconfig/network ] && \ + sed -e "s/HOSTNAME=.*/HOSTNAME=$host_name/" \ + -e "s/GATEWAY=.*/GATEWAY=$gateway/" -i /mnt/etc/sysconfig/network + # check for inittab file + #test -f /mnt/etc/inittab || error "$df_erritab" +} + +# initial (boot time) runlevel scripts +initial_boot () { +# delete all classical disk base rootfs stuff from rc.sysinit +sed -e "6i# Script modified by $0 during stage3 bootup." \ + -e "/relabel_se/,/^}/d" \ + -e "/# Start up swap/,/# Set up bin/d" \ + -e "/^remount_needed/,/^fi$/d" -e "/^# Clean out/,/in_sysinit/d" \ + -e "/# Mount all o/,/# Start the g/d" \ + -e "/# Boot time/,/# let's/d" -i /mnt/etc/rc.d/rc.sysinit +# delete all classical disk base rootfs stuff from halt +sed -e "7i# Modified by $0 during stage3 bootup." \ + -e "/# Save mixer/,/Saving random/d" -e "/quotaoff/,/^# Now halt/d" \ + -i /mnt/etc/init.d/halt +# boot.slx is a special runlevel script generated within initialramfs which +# should be executed before the normal runlevel scripts. +echo -e "# Run OpenSLX init runlevel script\n/etc/init.d/boot.slx" \ + >>/mnt/etc/rc.d/rc.sysinit +# switch off SElinux enforcing +sed -e "1i# Configuration modified by $0 during stage3 bootup." \ + -e "s/SELINUX=.*/SELINUX=permissive/" -i /mnt/etc/selinux/config +# switch off display manager start via inittab +sed -e "s/x:5:re.*/# line deleted in stage3, re-enable via desktop plugin/" \ + -i /mnt/etc/inittab +# link halt and reboot scripts +ln -s ../init.d/killall /mnt/etc/rc.d/rc0.d/S00killall +ln -s ../init.d/halt /mnt/etc/rc.d/rc0.d/S01halt +ln -s ../init.d/killall /mnt/etc/rc.d/rc6.d/S00killall +ln -s ../init.d/halt /mnt/etc/rc.d/rc6.d/S01reboot +} + +# linking runlevel scripts +rllinker () { +local script="$1" +if [ $2 -lt 10 ] ; then + local start="0$2"; else local start="$2" +fi +if [ $3 -lt 10 ] ; then + local stop="0$3"; else local stop="$3" +fi +# empty runlevel links - decision on running certain services is 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 ../init.d/$script /mnt/etc/$i +done +} + +# group of functions for the normal runlevels - first parameter is start +# second stop +# function for ntp configuration +config_ntp () { +if [ -e /mnt/etc/init.d/ntpd ] ; then + if ! strinfile "ntp:" /mnt/etc/passwd ; then + echo -e "ntp:x:38:38:NTP daemon:/var/lib/ntp:/sbin/nologin" \ + >>/mnt/etc/passwd + echo -e "ntp:!:13099:0:99999:7:::" >>/mnt/etc/shadow + fi + testmkd /mnt/var/lib/ntp ntp:ntp + if [ "x$start_ntp" = "xyes" ] ; then + rllinker "ntpd" 7 14 + fi +fi +} +# function for atd +config_atd () { +if [ "x$start_atd" = "xyes" ]; then + rllinker "atd" 14 4 +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 2 + testmkd /mnt/var/spool/anacron + echo -e "# /etc/crontab - file generated by $0:\n\ +" >/mnt/etc/crontab + else + error "$df_errcron" nonfatal + fi +fi +} +# name service caching daemon (useful in most cases) +config_nscd () { + if [ -f /mnt/etc/init.d/nscd ] ; then + testmkd /mnt/var/db/nscd + rllinker "nscd" 20 5 + fi +} +# secure shell service +config_sshd () { +if [ "x$start_sshd" = "xyes" ] ; then + if [ -f /mnt/etc/init.d/sshd ] ; then + testmkd /mnt/var/empty/sshd/dev + if ! strinfile "sshd:" /mnt/etc/passwd ; then + echo -e "sshd:x:74:74::/var/empty/sshd:/sbin/nologin" \ + >>/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 +} +# snmp agent for remote monitoring +config_snmp () { +if [ "x$start_snmp" = "xyes" ] ; then + if [ -f /mnt/etc/init.d/snmpd ] ; then + rllinker "snmpd" 24 2 + testmkd /mnt/var/lib/net-snmp + fi + # fixme!! + # write service monitor depending on services started + fi +} +# configure print server (lpd or cups) +config_printer () { +if [ "x${start_printdaemon}" != "x" ] && \ + [ "x${start_printdaemon}" != "xno" ]; then + case ${start_printdaemon} in + yes|cups*|CUPS*) + rllinker "cups" 25 1 + testmkd /mnt/var/spool/cups/tmp root:sys + ;; + lp*|LP*|PLP*) + rllinker "lpd" 25 1 + testmkd /mnt/var/spool/lpd + ;; + *) + #logwrite "Do not know print-server $start_printdaemon; \ + #specify 'cups' or 'lpd'." + ;; + esac +fi +# configure cups printer client, avoid to overwrite admin provided printer +# 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 bluetooth services +config_bt () { +if [ -e /mnt/etc/sysconfig/bluetooth ] ; then + sed -e "1i# /etc/sysconfig/bluetooth - file modified by $0" \ + -e "s,HID2HCI_ENABLE.*,HID2HCI_ENABLE=true," \ + -i /mnt/etc/sysconfig/bluetooth +else + : # no bluetooth components installed +fi +} +# 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/sysconfig/keyboard +#echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1\n" \ +# >>/mnt/etc/init.d/boot.slx +} +# acpi and powersave daemons, required e.g. to shutdown the machine via +# power button, no need for early start +config_acpi () { +rllinker acpid 01 22 +} +# 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) +# runlevel script for haldaemon is now haldaemon instead of hal +config_dreshal () { +local start=4 +local stop=18 +if [ "x$start_dreshal" = "xyes" ]; then + testmkd /mnt/var/run/dbus + if [ -f /mnt/etc/init.d/messagebus ] ; then + testmkd /mnt/var/lib/dbus + strinfile "dbus:" /mnt/etc/passwd || \ + echo "dbus:x:81:81:System Message Bus:/var/run/dbus:/sbin/nologin" \ + >> /mnt/etc/passwd + strinfile "dbus:" /mnt/etc/group || echo "dbus:!:81:" >> /mnt/etc/group + rllinker "messagebus" $start $stop + fi + if [ -f /mnt/etc/init.d/haldaemon ] ; then + testmkd /mnt/var/lib/hal + strinfile "haldaemon:" /mnt/etc/passwd || \ + echo "haldaemon:x:68:68:User for haldaemon:/var/run/hal:/sbin/nologin" \ + >> /mnt/etc/passwd + strinfile "haldaemon:" /mnt/etc/group || \ + echo "haldaemon:!:103:" >> /mnt/etc/group + start=$(($start + 1)) + stop=$(($stop - 1)) + rllinker "haldaemon" $start $stop + fi +fi +} +# configure automounter (fixme: to be moved into plugin) +config_automount () { +if [ -e /mnt/etc/sysconfig/autofs ] ; then + testmkd /mnt/var/lock/subsys + sed -e "1i# /etc/sysconfig/autofs - file modified by\n#\t$0:\n#" \ + -e "s,DAEMONOPTIONS.*,DAEMONOPTIONS=\"--timeout 3\"," \ + -i /mnt/etc/sysconfig/autofs + rllinker "autofs" 18 4 +else + error "$df_erramt" nonfatal +fi +} +# start name service caching daemon +config_nscd () { +if [ -e /mnt/etc/init.d/nscd ] ; then + testmkd /mnt/var/run/nscd + rllinker "nscd" 16 16 +else + error "$df_errnsc" nonfatal +fi +} +# start portmapper (needed at least for nfs and nis services) +config_portmap () { + rllinker "portmap" 2 20 +} +# start NIS (mostly deprecated) +config_nis () { +if [ -f /mnt/etc/init.d/ypbind ] ; then + rllinker "ypbind" 6 16 + config_portmap + testmkd /mnt/var/yp/nicknames +else + error "$df_erryp" nonfatal +fi +} +# initialize runlevel skript to be executed during system startup +# (before most of the normal boot init scripts) +# this script should operate like a normal 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/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.d/init.d/functions\n#. /etc/sysconfig/logfile\ncase \ +\"\$1\" in\n start)\n\techo -n \"$info\"" >>/mnt/etc/init.d/${name} + chmod u+x /mnt/etc/init.d/${name} + ;; + entry) + echo -e "\t${info}" >>/mnt/etc/init.d/${name} + ;; + close) + echo -e "\t;;\n stop)\n\t;;\nesac" \ + >>/mnt/etc/init.d/${name} + ;; +esac +} + + diff --git a/src/initramfs/distro-specs/rhel/functions-default b/src/initramfs/distro-specs/rhel/functions-default new file mode 100644 index 00000000..0ea8ce90 --- /dev/null +++ b/src/initramfs/distro-specs/rhel/functions-default @@ -0,0 +1,311 @@ +# Copyright (c) 2012 - 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 general RHEL to configure linux +# stateless clients (included by init, hwautocfg, servconfig within Initial- +# RamFS after inclusion of the main functions file). This file is the main +# base for the several RedHat based Scientific Linux versions. + +# settings of central variables +# 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_BINDMPTS="tmp root media home" +D_DIRINBINDMNT="/var/run /var/log /var/tmp" +D_RODIRSINRW="/etc/bootsplash /etc/gconf /var/adm /var/lib/texmf /var/lib/rpm \ +/var/cache/fontconfig" +D_DIRINDXS="/var/lib/rpm /var/lib/nobody /var/lib/alternatives/ /var/db/nscd \ +/var/lib/bluetooth /var/lib/scrollkeeper /var/lib/nfs/sm /var/lib/nfs/sm.bak \ +/var/lib/misc /var/spool/cron" + +# empty functions are defined at the beginning of /etc/functions + +# 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 ; do + rm -rf /mnt/etc/${dir}/* + done + # set some system/environment information + echo -e "SLX VERSION = $SLXVERSION\nINITRAMFS GENERATION DATE = $date" \ + >>/mnt/etc/redhat-release + # simple bash configuration for root + echo -e "# Generated in OpenSLX stage3\n. /etc/bashrc" >/mnt/root/.profile + # enable sysrq + sed -e "1i# Configuration modified by $0 during stage3 bootup." \ + -e "s/kernel.sysrq =.*/kernel.sysrq = 1/" -i /mnt/etc/sysctl.conf + # set some networking stuff if needed + [ -e /mnt/etc/sysconfig/network ] && \ + sed -e "s/HOSTNAME=.*/HOSTNAME=$host_name/" \ + -e "s/GATEWAY=.*/GATEWAY=$gateway/" -i /mnt/etc/sysconfig/network + # check for inittab file + #test -f /mnt/etc/inittab || error "$df_erritab" +} + +# initial (boot time) runlevel scripts +initial_boot () { +# delete all classical disk base rootfs stuff from rc.sysinit +sed -e "6i# Script modified by $0 during stage3 bootup." \ + -e "/relabel_se/,/^}/d" \ + -e "/# Start up swap/,/# Set up bin/d" \ + -e "/^remount_needed/,/^fi$/d" -e "/^# Clean out/,/in_sysinit/d" \ + -e "/# Mount all o/,/# Start the g/d" \ + -e "/# Boot time/,/# let's/d" -i /mnt/etc/rc.d/rc.sysinit +# delete all classical disk base rootfs stuff from halt +sed -e "7i# Modified by $0 during stage3 bootup." \ + -e "/# Save mixer/,/Saving random/d" -e "/quotaoff/,/^# Now halt/d" \ + -i /mnt/etc/init.d/halt +# boot.slx is a special runlevel script generated within initialramfs which +# should be executed before the normal runlevel scripts. +echo -e "# Run OpenSLX init runlevel script\n/etc/init.d/boot.slx" \ + >>/mnt/etc/rc.d/rc.sysinit +# switch off SElinux enforcing +sed -e "1i# Configuration modified by $0 during stage3 bootup." \ + -e "s/SELINUX=.*/SELINUX=permissive/" -i /mnt/etc/selinux/config +# switch off display manager start via inittab +sed -e "s/x:5:re.*/# line deleted in stage3, re-enable via desktop plugin/" \ + -i /mnt/etc/inittab +# link halt and reboot scripts +ln -s ../init.d/killall /mnt/etc/rc.d/rc0.d/S00killall +ln -s ../init.d/halt /mnt/etc/rc.d/rc0.d/S01halt +ln -s ../init.d/killall /mnt/etc/rc.d/rc6.d/S00killall +ln -s ../init.d/halt /mnt/etc/rc.d/rc6.d/S01reboot +} + +# linking runlevel scripts +rllinker () { +local script="$1" +if [ $2 -lt 10 ] ; then + local start="0$2"; else local start="$2" +fi +if [ $3 -lt 10 ] ; then + local stop="0$3"; else local stop="$3" +fi +# empty runlevel links - decision on running certain services is 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 ../init.d/$script /mnt/etc/$i +done +} + +# group of functions for the normal runlevels - first parameter is start +# second stop +# function for ntp configuration +config_ntp () { +if [ -e /mnt/etc/init.d/ntpd ] ; then + if ! strinfile "ntp:" /mnt/etc/passwd ; then + echo -e "ntp:x:38:38:NTP daemon:/var/lib/ntp:/sbin/nologin" \ + >>/mnt/etc/passwd + echo -e "ntp:!:13099:0:99999:7:::" >>/mnt/etc/shadow + fi + testmkd /mnt/var/lib/ntp ntp:ntp + if [ "x$start_ntp" = "xyes" ] ; then + rllinker "ntpd" 7 14 + fi +fi +} +# function for atd +config_atd () { +if [ "x$start_atd" = "xyes" ]; then + rllinker "atd" 14 4 +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 2 + testmkd /mnt/var/spool/anacron + echo -e "# /etc/crontab - file generated by $0:\n\ +" >/mnt/etc/crontab + else + error "$df_errcron" nonfatal + fi +fi +} +# name service caching daemon (useful in most cases) +config_nscd () { + if [ -f /mnt/etc/init.d/nscd ] ; then + testmkd /mnt/var/db/nscd + rllinker "nscd" 20 5 + fi +} +# secure shell service +config_sshd () { +if [ "x$start_sshd" = "xyes" ] ; then + if [ -f /mnt/etc/init.d/sshd ] ; then + testmkd /mnt/var/empty/sshd/dev + if ! strinfile "sshd:" /mnt/etc/passwd ; then + echo -e "sshd:x:74:74::/var/empty/sshd:/sbin/nologin" \ + >>/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 +} +# snmp agent for remote monitoring +config_snmp () { +if [ "x$start_snmp" = "xyes" ] ; then + if [ -f /mnt/etc/init.d/snmpd ] ; then + rllinker "snmpd" 24 2 + testmkd /mnt/var/lib/net-snmp + fi + # fixme!! + # write service monitor depending on services started + fi +} +# configure print server (lpd or cups) +config_printer () { +if [ "x${start_printdaemon}" != "x" ] && \ + [ "x${start_printdaemon}" != "xno" ]; then + case ${start_printdaemon} in + yes|cups*|CUPS*) + rllinker "cups" 25 1 + testmkd /mnt/var/spool/cups/tmp root:sys + ;; + lp*|LP*|PLP*) + rllinker "lpd" 25 1 + testmkd /mnt/var/spool/lpd + ;; + *) + #logwrite "Do not know print-server $start_printdaemon; \ + #specify 'cups' or 'lpd'." + ;; + esac +fi +# configure cups printer client, avoid to overwrite admin provided printer +# 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 bluetooth services +config_bt () { +if [ -e /mnt/etc/sysconfig/bluetooth ] ; then + sed -e "1i# /etc/sysconfig/bluetooth - file modified by $0" \ + -e "s,HID2HCI_ENABLE.*,HID2HCI_ENABLE=true," \ + -i /mnt/etc/sysconfig/bluetooth +else + : # no bluetooth components installed +fi +} +# 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/sysconfig/keyboard +#echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1\n" \ +# >>/mnt/etc/init.d/boot.slx +} +# acpi and powersave daemons, required e.g. to shutdown the machine via +# power button, no need for early start +config_acpi () { +rllinker acpid 01 22 +} +# 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) +# runlevel script for haldaemon is now haldaemon instead of hal +config_dreshal () { +local start=4 +local stop=18 +if [ "x$start_dreshal" = "xyes" ]; then + testmkd /mnt/var/run/dbus + if [ -f /mnt/etc/init.d/messagebus ] ; then + testmkd /mnt/var/lib/dbus + strinfile "dbus:" /mnt/etc/passwd || \ + echo "dbus:x:81:81:System Message Bus:/var/run/dbus:/sbin/nologin" \ + >> /mnt/etc/passwd + strinfile "dbus:" /mnt/etc/group || echo "dbus:!:81:" >> /mnt/etc/group + rllinker "messagebus" $start $stop + fi + if [ -f /mnt/etc/init.d/haldaemon ] ; then + testmkd /mnt/var/lib/hal + strinfile "haldaemon:" /mnt/etc/passwd || \ + echo "haldaemon:x:68:68:User for haldaemon:/var/run/hal:/sbin/nologin" \ + >> /mnt/etc/passwd + strinfile "haldaemon:" /mnt/etc/group || \ + echo "haldaemon:!:103:" >> /mnt/etc/group + start=$(($start + 1)) + stop=$(($stop - 1)) + rllinker "haldaemon" $start $stop + fi +fi +} +# configure automounter (fixme: to be moved into plugin) +config_automount () { +if [ -e /mnt/etc/sysconfig/autofs ] ; then + testmkd /mnt/var/lock/subsys + sed -e "1i# /etc/sysconfig/autofs - file modified by\n#\t$0:\n#" \ + -e "s,DAEMONOPTIONS.*,DAEMONOPTIONS=\"--timeout 3\"," \ + -i /mnt/etc/sysconfig/autofs + rllinker "autofs" 18 4 +else + error "$df_erramt" nonfatal +fi +} +# start name service caching daemon +config_nscd () { +if [ -e /mnt/etc/init.d/nscd ] ; then + testmkd /mnt/var/run/nscd + rllinker "nscd" 16 16 +else + error "$df_errnsc" nonfatal +fi +} +# start portmapper (needed at least for nfs and nis services) +config_portmap () { + rllinker "portmap" 2 20 +} +# start NIS (mostly deprecated) +config_nis () { +if [ -f /mnt/etc/init.d/ypbind ] ; then + rllinker "ypbind" 6 16 + config_portmap + testmkd /mnt/var/yp/nicknames +else + error "$df_erryp" nonfatal +fi +} +# initialize runlevel skript to be executed during system startup +# (before most of the normal boot init scripts) +# this script should operate like a normal 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/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.d/init.d/functions\n#. /etc/sysconfig/logfile\ncase \ +\"\$1\" in\n start)\n\techo -n \"$info\"" >>/mnt/etc/init.d/${name} + chmod u+x /mnt/etc/init.d/${name} + ;; + entry) + echo -e "\t${info}" >>/mnt/etc/init.d/${name} + ;; + close) + echo -e "\t;;\n stop)\n\t;;\nesac" \ + >>/mnt/etc/init.d/${name} + ;; +esac +} + + diff --git a/src/initramfs/distro-specs/scientific/functions-default b/src/initramfs/distro-specs/scientific/functions-default new file mode 100644 index 00000000..311814c9 --- /dev/null +++ b/src/initramfs/distro-specs/scientific/functions-default @@ -0,0 +1,311 @@ +# Copyright (c) 2012 - 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 general Scientific Linux to configure linux +# stateless clients (included by init, hwautocfg, servconfig within Initial- +# RamFS after inclusion of the main functions file). This file is the main +# base for the several RedHat based Scientific Linux versions. + +# settings of central variables +# 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_BINDMPTS="tmp root media home" +D_DIRINBINDMNT="/var/run /var/log /var/tmp" +D_RODIRSINRW="/etc/bootsplash /etc/gconf /var/adm /var/lib/texmf /var/lib/rpm \ +/var/cache/fontconfig" +D_DIRINDXS="/var/lib/rpm /var/lib/nobody /var/lib/alternatives/ /var/db/nscd \ +/var/lib/bluetooth /var/lib/scrollkeeper /var/lib/nfs/sm /var/lib/nfs/sm.bak \ +/var/lib/misc /var/spool/cron" + +# empty functions are defined at the beginning of /etc/functions + +# 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 ; do + rm -rf /mnt/etc/${dir}/* + done + # set some system/environment information + echo -e "SLX VERSION = $SLXVERSION\nINITRAMFS GENERATION DATE = $date" \ + >>/mnt/etc/redhat-release + # simple bash configuration for root + echo -e "# Generated in OpenSLX stage3\n. /etc/bashrc" >/mnt/root/.profile + # enable sysrq + sed -e "1i# Configuration modified by $0 during stage3 bootup." \ + -e "s/kernel.sysrq =.*/kernel.sysrq = 1/" -i /mnt/etc/sysctl.conf + # set some networking stuff if needed + [ -e /mnt/etc/sysconfig/network ] && \ + sed -e "s/HOSTNAME=.*/HOSTNAME=$host_name/" \ + -e "s/GATEWAY=.*/GATEWAY=$gateway/" -i /mnt/etc/sysconfig/network + # check for inittab file + #test -f /mnt/etc/inittab || error "$df_erritab" +} + +# initial (boot time) runlevel scripts +initial_boot () { +# delete all classical disk base rootfs stuff from rc.sysinit +sed -e "6i# Script modified by $0 during stage3 bootup." \ + -e "/relabel_se/,/^}/d" \ + -e "/# Start up swap/,/# Set up bin/d" \ + -e "/^remount_needed/,/^fi$/d" -e "/^# Clean out/,/in_sysinit/d" \ + -e "/# Mount all o/,/# Start the g/d" \ + -e "/# Boot time/,/# let's/d" -i /mnt/etc/rc.d/rc.sysinit +# delete all classical disk base rootfs stuff from halt +sed -e "7i# Modified by $0 during stage3 bootup." \ + -e "/# Save mixer/,/Saving random/d" -e "/quotaoff/,/^# Now halt/d" \ + -i /mnt/etc/init.d/halt +# boot.slx is a special runlevel script generated within initialramfs which +# should be executed before the normal runlevel scripts. +echo -e "# Run OpenSLX init runlevel script\n/etc/init.d/boot.slx" \ + >>/mnt/etc/rc.d/rc.sysinit +# switch off SElinux enforcing +sed -e "1i# Configuration modified by $0 during stage3 bootup." \ + -e "s/SELINUX=.*/SELINUX=permissive/" -i /mnt/etc/selinux/config +# switch off display manager start via inittab +sed -e "s/x:5:re.*/# line deleted in stage3, re-enable via desktop plugin/" \ + -i /mnt/etc/inittab +# link halt and reboot scripts +ln -s ../init.d/killall /mnt/etc/rc.d/rc0.d/S00killall +ln -s ../init.d/halt /mnt/etc/rc.d/rc0.d/S01halt +ln -s ../init.d/killall /mnt/etc/rc.d/rc6.d/S00killall +ln -s ../init.d/halt /mnt/etc/rc.d/rc6.d/S01reboot +} + +# linking runlevel scripts +rllinker () { +local script="$1" +if [ $2 -lt 10 ] ; then + local start="0$2"; else local start="$2" +fi +if [ $3 -lt 10 ] ; then + local stop="0$3"; else local stop="$3" +fi +# empty runlevel links - decision on running certain services is 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 ../init.d/$script /mnt/etc/$i +done +} + +# group of functions for the normal runlevels - first parameter is start +# second stop +# function for ntp configuration +config_ntp () { +if [ -e /mnt/etc/init.d/ntpd ] ; then + if ! strinfile "ntp:" /mnt/etc/passwd ; then + echo -e "ntp:x:38:38:NTP daemon:/var/lib/ntp:/sbin/nologin" \ + >>/mnt/etc/passwd + echo -e "ntp:!:13099:0:99999:7:::" >>/mnt/etc/shadow + fi + testmkd /mnt/var/lib/ntp ntp:ntp + if [ "x$start_ntp" = "xyes" ] ; then + rllinker "ntpd" 7 14 + fi +fi +} +# function for atd +config_atd () { +if [ "x$start_atd" = "xyes" ]; then + rllinker "atd" 14 4 +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 2 + testmkd /mnt/var/spool/anacron + echo -e "# /etc/crontab - file generated by $0:\n\ +" >/mnt/etc/crontab + else + error "$df_errcron" nonfatal + fi +fi +} +# name service caching daemon (useful in most cases) +config_nscd () { + if [ -f /mnt/etc/init.d/nscd ] ; then + testmkd /mnt/var/db/nscd + rllinker "nscd" 20 5 + fi +} +# secure shell service +config_sshd () { +if [ "x$start_sshd" = "xyes" ] ; then + if [ -f /mnt/etc/init.d/sshd ] ; then + testmkd /mnt/var/empty/sshd/dev + if ! strinfile "sshd:" /mnt/etc/passwd ; then + echo -e "sshd:x:74:74::/var/empty/sshd:/sbin/nologin" \ + >>/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 +} +# snmp agent for remote monitoring +config_snmp () { +if [ "x$start_snmp" = "xyes" ] ; then + if [ -f /mnt/etc/init.d/snmpd ] ; then + rllinker "snmpd" 24 2 + testmkd /mnt/var/lib/net-snmp + fi + # fixme!! + # write service monitor depending on services started + fi +} +# configure print server (lpd or cups) +config_printer () { +if [ "x${start_printdaemon}" != "x" ] && \ + [ "x${start_printdaemon}" != "xno" ]; then + case ${start_printdaemon} in + yes|cups*|CUPS*) + rllinker "cups" 25 1 + testmkd /mnt/var/spool/cups/tmp root:sys + ;; + lp*|LP*|PLP*) + rllinker "lpd" 25 1 + testmkd /mnt/var/spool/lpd + ;; + *) + #logwrite "Do not know print-server $start_printdaemon; \ + #specify 'cups' or 'lpd'." + ;; + esac +fi +# configure cups printer client, avoid to overwrite admin provided printer +# 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 bluetooth services +config_bt () { +if [ -e /mnt/etc/sysconfig/bluetooth ] ; then + sed -e "1i# /etc/sysconfig/bluetooth - file modified by $0" \ + -e "s,HID2HCI_ENABLE.*,HID2HCI_ENABLE=true," \ + -i /mnt/etc/sysconfig/bluetooth +else + : # no bluetooth components installed +fi +} +# 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/sysconfig/keyboard +#echo -e "\tsetfont ${CONSOLE_FONT} >${LOGFILE} 2>&1\n" \ +# >>/mnt/etc/init.d/boot.slx +} +# acpi and powersave daemons, required e.g. to shutdown the machine via +# power button, no need for early start +config_acpi () { +rllinker acpid 01 22 +} +# 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) +# runlevel script for haldaemon is now haldaemon instead of hal +config_dreshal () { +local start=4 +local stop=18 +if [ "x$start_dreshal" = "xyes" ]; then + testmkd /mnt/var/run/dbus + if [ -f /mnt/etc/init.d/messagebus ] ; then + testmkd /mnt/var/lib/dbus + strinfile "dbus:" /mnt/etc/passwd || \ + echo "dbus:x:81:81:System Message Bus:/var/run/dbus:/sbin/nologin" \ + >> /mnt/etc/passwd + strinfile "dbus:" /mnt/etc/group || echo "dbus:!:81:" >> /mnt/etc/group + rllinker "messagebus" $start $stop + fi + if [ -f /mnt/etc/init.d/haldaemon ] ; then + testmkd /mnt/var/lib/hal + strinfile "haldaemon:" /mnt/etc/passwd || \ + echo "haldaemon:x:68:68:User for haldaemon:/var/run/hal:/sbin/nologin" \ + >> /mnt/etc/passwd + strinfile "haldaemon:" /mnt/etc/group || \ + echo "haldaemon:!:103:" >> /mnt/etc/group + start=$(($start + 1)) + stop=$(($stop - 1)) + rllinker "haldaemon" $start $stop + fi +fi +} +# configure automounter (fixme: to be moved into plugin) +config_automount () { +if [ -e /mnt/etc/sysconfig/autofs ] ; then + testmkd /mnt/var/lock/subsys + sed -e "1i# /etc/sysconfig/autofs - file modified by\n#\t$0:\n#" \ + -e "s,DAEMONOPTIONS.*,DAEMONOPTIONS=\"--timeout 3\"," \ + -i /mnt/etc/sysconfig/autofs + rllinker "autofs" 18 4 +else + error "$df_erramt" nonfatal +fi +} +# start name service caching daemon +config_nscd () { +if [ -e /mnt/etc/init.d/nscd ] ; then + testmkd /mnt/var/run/nscd + rllinker "nscd" 16 16 +else + error "$df_errnsc" nonfatal +fi +} +# start portmapper (needed at least for nfs and nis services) +config_portmap () { + rllinker "portmap" 2 20 +} +# start NIS (mostly deprecated) +config_nis () { +if [ -f /mnt/etc/init.d/ypbind ] ; then + rllinker "ypbind" 6 16 + config_portmap + testmkd /mnt/var/yp/nicknames +else + error "$df_erryp" nonfatal +fi +} +# initialize runlevel skript to be executed during system startup +# (before most of the normal boot init scripts) +# this script should operate like a normal 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/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.d/init.d/functions\n#. /etc/sysconfig/logfile\ncase \ +\"\$1\" in\n start)\n\techo -n \"$info\"" >>/mnt/etc/init.d/${name} + chmod u+x /mnt/etc/init.d/${name} + ;; + entry) + echo -e "\t${info}" >>/mnt/etc/init.d/${name} + ;; + close) + echo -e "\t;;\n stop)\n\t;;\nesac" \ + >>/mnt/etc/init.d/${name} + ;; +esac +} + + diff --git a/src/installer/OpenSLX/OSExport/Distro/Centos.pm b/src/installer/OpenSLX/OSExport/Distro/Centos.pm new file mode 100644 index 00000000..664e54bd --- /dev/null +++ b/src/installer/OpenSLX/OSExport/Distro/Centos.pm @@ -0,0 +1,35 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# OSExport/Distro/Centos.pm +# - provides CentOS Linux specific overrides of the OSExport Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::OSExport::Distro::Centos; + +use strict; +use warnings; + +use base qw(OpenSLX::OSExport::Distro::Rhel); + +use OpenSLX::Basics; + +################################################################################ +### implementation +################################################################################ +sub new +{ + my $class = shift; + my $self = { + 'base-name' => 'centos', + }; + return bless $self, $class; +} + +1; diff --git a/src/installer/OpenSLX/OSExport/Distro/Rhel.pm b/src/installer/OpenSLX/OSExport/Distro/Rhel.pm new file mode 100644 index 00000000..a2cd9a86 --- /dev/null +++ b/src/installer/OpenSLX/OSExport/Distro/Rhel.pm @@ -0,0 +1,94 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# OSExport/Distro/Rhel.pm +# - provides RHEL specific overrides of the OSExport Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::OSExport::Distro::Rhel; + +use strict; +use warnings; + +use base qw(OpenSLX::OSExport::Distro::Base); + +use OpenSLX::Basics; + +################################################################################ +### implementation +################################################################################ +sub new +{ + my $class = shift; + my $self = { + 'base-name' => 'rhel', + }; + return bless $self, $class; +} + +sub initDistroInfo +{ + my $self = shift; + + $self->{'export-filter'} = " + - /var/tmp/* + - /var/spool/* + - /var/run/* + - /var/mail + - /var/log/* + - /var/lock/* + - /var/lib/xdm + - /var/lib/vm* + - /var/lib/suspend* + - /var/lib/smart + - /var/lib/gdm/* + - /var/lib/dhcp* + - /var/lib/bluetooth/ + - /var/cache/yum + - /var/cache/man/* + - /var/cache/zypp/* + + /usr/lib/python*/*/*.o + + /usr/lib/perl5/*/*/*/*.o + + /usr/lib/gcc/*/*/*.o + + /usr/lib/*.o + + /usr/X11R6/lib/modules/drivers/*.o + + /usr/X11R6/lib/modules/drivers/linux/*.o + - /usr/bin/BackGround + - /tmp/* + - /sys/* + - /proc/* + - /opt/kde3/share/apps/kdm/read_sysconfig.sh + - /opt/kde3/share/autostart/runupdater.desktop + - /opt/kde3/share/autostart/profile_chooser-autostart.desktop + - /opt/kde3/share/autostart/kinternet.desktop + - /usr/share/gnome/autostart/gpk-update-icon*.desktop + - /mnt/* + - /media/* + + /media + + /lib/modules/*/misc/vmblock.o + + /lib/modules/*/misc/vmnet.o + + /lib/modules/*/misc/vmmon.o + - /etc/*rpmnew + - /etc/*rpmorig + - /etc/*pptp* + - /etc/*ppp* + - /etc/dhcp* + - /etc/cron.*/* + - /etc/netplug* + - /etc/sysconfig/network-scripts/ifcfg-* + - /etc/X11/xkb + - /boot/initrd* + - /boot/grub + - *.rpmsave + - *.rpmnew + "; + return; +} + +1; diff --git a/src/installer/OpenSLX/OSExport/Distro/Scientific.pm b/src/installer/OpenSLX/OSExport/Distro/Scientific.pm new file mode 100644 index 00000000..3c239d52 --- /dev/null +++ b/src/installer/OpenSLX/OSExport/Distro/Scientific.pm @@ -0,0 +1,35 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# OSExport/Distro/Scientific.pm +# - provides Scientific Linux specific overrides of the OSExport Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::OSExport::Distro::Scientific; + +use strict; +use warnings; + +use base qw(OpenSLX::OSExport::Distro::Rhel); + +use OpenSLX::Basics; + +################################################################################ +### implementation +################################################################################ +sub new +{ + my $class = shift; + my $self = { + 'base-name' => 'scientific', + }; + return bless $self, $class; +} + +1; diff --git a/src/installer/OpenSLX/OSSetup/Distro/Centos.pm b/src/installer/OpenSLX/OSSetup/Distro/Centos.pm new file mode 100644 index 00000000..f98f19e6 --- /dev/null +++ b/src/installer/OpenSLX/OSSetup/Distro/Centos.pm @@ -0,0 +1,27 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# OSSetup/Distro/Centos.pm +# - provides CentOS Linux specific overrides of the OSSetup Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::OSSetup::Distro::Centos; + +use strict; +use warnings; + +use base qw(OpenSLX::OSSetup::Distro::Rhel); + +use OpenSLX::Basics; + +################################################################################ +### interface methods +################################################################################ + +1; diff --git a/src/installer/OpenSLX/OSSetup/Distro/Rhel.pm b/src/installer/OpenSLX/OSSetup/Distro/Rhel.pm new file mode 100644 index 00000000..151542ee --- /dev/null +++ b/src/installer/OpenSLX/OSSetup/Distro/Rhel.pm @@ -0,0 +1,48 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# OSSetup/Distro/Rhel.pm +# - provides RHEL specific overrides of the OSSetup Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::OSSetup::Distro::Rhel; + +use strict; +use warnings; + +use base qw(OpenSLX::OSSetup::Distro::Base); + +use OpenSLX::Basics; + +################################################################################ +### interface methods +################################################################################ +sub new +{ + my $class = shift; + my $self = {}; + return bless $self, $class; +} + +sub initialize +{ + my $self = shift; + my $engine = shift; + + $self->SUPER::initialize($engine); + $self->{'packager-type'} = 'rpm'; + $self->{'meta-packager-type'} = $ENV{SLX_META_PACKAGER} || 'yum'; + $self->{'stage1c-faked-files'} = [ + '/etc/fstab', + '/etc/mtab', + ]; + return; +} + +1; diff --git a/src/installer/OpenSLX/OSSetup/Distro/Scientific.pm b/src/installer/OpenSLX/OSSetup/Distro/Scientific.pm new file mode 100644 index 00000000..c8f0364c --- /dev/null +++ b/src/installer/OpenSLX/OSSetup/Distro/Scientific.pm @@ -0,0 +1,27 @@ +# Copyright (c) 2012 - 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 suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# OSSetup/Distro/Scientific.pm +# - provides Scientific Linux specific overrides of the OSSetup Distro API. +# ----------------------------------------------------------------------------- +package OpenSLX::OSSetup::Distro::Scientific; + +use strict; +use warnings; + +use base qw(OpenSLX::OSSetup::Distro::Rhel); + +use OpenSLX::Basics; + +################################################################################ +### interface methods +################################################################################ + +1; diff --git a/src/installer/OpenSLX/OSSetup/Engine.pm b/src/installer/OpenSLX/OSSetup/Engine.pm index 1ad30ba4..2a4463e5 100644 --- a/src/installer/OpenSLX/OSSetup/Engine.pm +++ b/src/installer/OpenSLX/OSSetup/Engine.pm @@ -1,4 +1,4 @@ -# Copyright (c) 2006..2011 - OpenSLX GmbH +# Copyright (c) 2006..2012 - OpenSLX GmbH # # This program is free software distributed under the GPL version 2. # See http://openslx.org/COPYING @@ -39,6 +39,8 @@ use OpenSLX::Utils; use vars qw(%supportedDistros); %supportedDistros = ( + 'centos-5' => 'clone,update,shell', + 'centos-6' => 'clone,update,shell', 'debian-3.1' => 'clone,install,update,shell', 'debian-4.0' => 'clone,install,update,shell', 'debian-4.0_amd64' => 'clone,install,update,shell', @@ -47,6 +49,13 @@ use vars qw(%supportedDistros); 'fedora-15_x86_64' => 'clone,update,shell', 'fedora-16' => 'clone,update,shell', 'gentoo-2007.X' => 'clone', + 'linuxmint-10' => 'clone,update,shell', + 'linuxmint-11' => 'clone,update,shell', + 'linuxmint-12' => 'clone,update,shell', + 'rhel-5' => 'clone,update,shell', + 'rhel-6' => 'clone,update,shell', + 'scientific-5' => 'clone,update,shell', + 'scientific-6' => 'clone,update,shell', 'suse-10.1' => 'clone,install,update,shell', 'suse-10.1_x86_64' => 'clone,install,update,shell', 'suse-10.2' => 'clone,install,update,shell', @@ -82,9 +91,6 @@ use vars qw(%supportedDistros); 'ubuntu-11.04' => 'clone,install,update,shell', 'ubuntu-11.10' => 'clone,install,update,shell', 'ubuntu-12.04' => 'clone,install,update,shell', - 'linuxmint-10' => 'clone,update,shell', - 'linuxmint-11' => 'clone,update,shell', - 'linuxmint-12' => 'clone,update,shell', ); my %localHttpServers; diff --git a/src/lib/distro-info/centos-5/export-filter.example b/src/lib/distro-info/centos-5/export-filter.example new file mode 100644 index 00000000..a414fef4 --- /dev/null +++ b/src/lib/distro-info/centos-5/export-filter.example @@ -0,0 +1,15 @@ +# this file defines the filter rules used when exporting a vendor-OS +# of this distro +# +# copy this file to 'export-filter' and add your own filters to it +# in order to overrule the filters provided by openslx +# +#Examples: +# the following line would include anything below /var/spool/ +#+ /var/spool/* +# +# this would exclude anything in /etc that starts with dhcpd.conf +#- /etc/dhcpd.conf* +# +# and this would exclude all rpmnew-files: +#- *.rpmnew diff --git a/src/lib/distro-info/centos-5/prereqfiles/etc/group b/src/lib/distro-info/centos-5/prereqfiles/etc/group new file mode 100644 index 00000000..505cb221 --- /dev/null +++ b/src/lib/distro-info/centos-5/prereqfiles/etc/group @@ -0,0 +1,33 @@ +root:x:0: +bin:x:1:daemon +daemon:x:2: +sys:x:3: +tty:x:5: +disk:x:6: +lp:x:7: +www:x:8: +kmem:x:9: +wheel:x:10: +mail:x:12: +news:x:13: +uucp:x:14: +shadow:x:15: +dialout:x:16: +audio:x:17: +floppy:x:19: +cdrom:x:20: +console:x:21: +utmp:x:22: +public:x:32: +video:x:33: +games:x:40: +xok:x:41: +trusted:x:42: +modem:x:43: +ftp:x:49: +man:x:62: +users:x:100: +nobody:x:65533: +nogroup:x:65534:nobody +messagebus:!:101: +haldaemon:!:102: diff --git a/src/lib/distro-info/centos-5/prereqfiles/etc/hosts b/src/lib/distro-info/centos-5/prereqfiles/etc/hosts new file mode 100644 index 00000000..75721cd5 --- /dev/null +++ b/src/lib/distro-info/centos-5/prereqfiles/etc/hosts @@ -0,0 +1 @@ +127.0.0.1 localhost diff --git a/src/lib/distro-info/centos-5/prereqfiles/etc/passwd b/src/lib/distro-info/centos-5/prereqfiles/etc/passwd new file mode 100644 index 00000000..9b8fc4fe --- /dev/null +++ b/src/lib/distro-info/centos-5/prereqfiles/etc/passwd @@ -0,0 +1,14 @@ +root:x:0:0:root:/root:/bin/bash +bin:x:1:1:bin:/bin:/bin/bash +daemon:x:2:2:Daemon:/sbin:/bin/bash +lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash +mail:x:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false +news:x:9:13:News system:/etc/news:/bin/bash +uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash +games:x:12:100:Games account:/var/games:/bin/bash +man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash +wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false +ftp:x:40:49:FTP account:/srv/ftp:/bin/bash +nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash +messagebus:x:100:101:User for D-Bus:/var/run/dbus:/bin/false +haldaemon:x:101:102:User for haldaemon:/var/run/hal:/bin/false diff --git a/src/lib/distro-info/centos-5/prereqfiles/etc/shadow b/src/lib/distro-info/centos-5/prereqfiles/etc/shadow new file mode 100644 index 00000000..cd100a5a --- /dev/null +++ b/src/lib/distro-info/centos-5/prereqfiles/etc/shadow @@ -0,0 +1,14 @@ +root::13481:::::: +bin:*:13481:::::: +daemon:*:13481:::::: +lp:*:13481:::::: +mail:*:13481:::::: +news:*:13481:::::: +uucp:*:13481:::::: +games:*:13481:::::: +man:*:13481:::::: +wwwrun:*:13481:::::: +ftp:*:13481:::::: +nobody:*:13481:::::: +messagebus:!:13481:0::7::: +haldaemon:!:13481:0::7::: diff --git a/src/lib/distro-info/centos-5/settings.default b/src/lib/distro-info/centos-5/settings.default new file mode 100644 index 00000000..b101d6c5 --- /dev/null +++ b/src/lib/distro-info/centos-5/settings.default @@ -0,0 +1,30 @@ +bootstrap-packages = < + packages = < +package-subdir = ??? +prereq-packages = < + name = CentOS 5 + repo-subdir = ? + file-for-speedtest = ? + + + packages = < + + base = minimal + packages = < + + base = minimal + diff --git a/src/lib/distro-info/centos-5/settings.example b/src/lib/distro-info/centos-5/settings.example new file mode 100644 index 00000000..5ae02428 --- /dev/null +++ b/src/lib/distro-info/centos-5/settings.example @@ -0,0 +1,17 @@ +# rename this file to 'settings' and edit it as you please +# +# for a list of all options, have a look at the corresponding +# settings.default in /opt/openslx/share/distro-info + +# use local installation source +# +# local-url = /srv/ftp/pub/some-distribution/inst-source +# + +# add a new selection: +# +# base = minimal +# packages = < diff --git a/src/lib/distro-info/centos-6/export-filter.example b/src/lib/distro-info/centos-6/export-filter.example new file mode 100644 index 00000000..a414fef4 --- /dev/null +++ b/src/lib/distro-info/centos-6/export-filter.example @@ -0,0 +1,15 @@ +# this file defines the filter rules used when exporting a vendor-OS +# of this distro +# +# copy this file to 'export-filter' and add your own filters to it +# in order to overrule the filters provided by openslx +# +#Examples: +# the following line would include anything below /var/spool/ +#+ /var/spool/* +# +# this would exclude anything in /etc that starts with dhcpd.conf +#- /etc/dhcpd.conf* +# +# and this would exclude all rpmnew-files: +#- *.rpmnew diff --git a/src/lib/distro-info/centos-6/prereqfiles/etc/group b/src/lib/distro-info/centos-6/prereqfiles/etc/group new file mode 100644 index 00000000..505cb221 --- /dev/null +++ b/src/lib/distro-info/centos-6/prereqfiles/etc/group @@ -0,0 +1,33 @@ +root:x:0: +bin:x:1:daemon +daemon:x:2: +sys:x:3: +tty:x:5: +disk:x:6: +lp:x:7: +www:x:8: +kmem:x:9: +wheel:x:10: +mail:x:12: +news:x:13: +uucp:x:14: +shadow:x:15: +dialout:x:16: +audio:x:17: +floppy:x:19: +cdrom:x:20: +console:x:21: +utmp:x:22: +public:x:32: +video:x:33: +games:x:40: +xok:x:41: +trusted:x:42: +modem:x:43: +ftp:x:49: +man:x:62: +users:x:100: +nobody:x:65533: +nogroup:x:65534:nobody +messagebus:!:101: +haldaemon:!:102: diff --git a/src/lib/distro-info/centos-6/prereqfiles/etc/hosts b/src/lib/distro-info/centos-6/prereqfiles/etc/hosts new file mode 100644 index 00000000..75721cd5 --- /dev/null +++ b/src/lib/distro-info/centos-6/prereqfiles/etc/hosts @@ -0,0 +1 @@ +127.0.0.1 localhost diff --git a/src/lib/distro-info/centos-6/prereqfiles/etc/passwd b/src/lib/distro-info/centos-6/prereqfiles/etc/passwd new file mode 100644 index 00000000..9b8fc4fe --- /dev/null +++ b/src/lib/distro-info/centos-6/prereqfiles/etc/passwd @@ -0,0 +1,14 @@ +root:x:0:0:root:/root:/bin/bash +bin:x:1:1:bin:/bin:/bin/bash +daemon:x:2:2:Daemon:/sbin:/bin/bash +lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash +mail:x:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false +news:x:9:13:News system:/etc/news:/bin/bash +uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash +games:x:12:100:Games account:/var/games:/bin/bash +man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash +wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false +ftp:x:40:49:FTP account:/srv/ftp:/bin/bash +nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash +messagebus:x:100:101:User for D-Bus:/var/run/dbus:/bin/false +haldaemon:x:101:102:User for haldaemon:/var/run/hal:/bin/false diff --git a/src/lib/distro-info/centos-6/prereqfiles/etc/shadow b/src/lib/distro-info/centos-6/prereqfiles/etc/shadow new file mode 100644 index 00000000..cd100a5a --- /dev/null +++ b/src/lib/distro-info/centos-6/prereqfiles/etc/shadow @@ -0,0 +1,14 @@ +root::13481:::::: +bin:*:13481:::::: +daemon:*:13481:::::: +lp:*:13481:::::: +mail:*:13481:::::: +news:*:13481:::::: +uucp:*:13481:::::: +games:*:13481:::::: +man:*:13481:::::: +wwwrun:*:13481:::::: +ftp:*:13481:::::: +nobody:*:13481:::::: +messagebus:!:13481:0::7::: +haldaemon:!:13481:0::7::: diff --git a/src/lib/distro-info/centos-6/settings.default b/src/lib/distro-info/centos-6/settings.default new file mode 100644 index 00000000..9a9f3dd3 --- /dev/null +++ b/src/lib/distro-info/centos-6/settings.default @@ -0,0 +1,30 @@ +bootstrap-packages = < + packages = < +package-subdir = ??? +prereq-packages = < + name = CentOS 6 + repo-subdir = ? + file-for-speedtest = ? + + + packages = < + + base = minimal + packages = < + + base = minimal + diff --git a/src/lib/distro-info/centos-6/settings.example b/src/lib/distro-info/centos-6/settings.example new file mode 100644 index 00000000..5ae02428 --- /dev/null +++ b/src/lib/distro-info/centos-6/settings.example @@ -0,0 +1,17 @@ +# rename this file to 'settings' and edit it as you please +# +# for a list of all options, have a look at the corresponding +# settings.default in /opt/openslx/share/distro-info + +# use local installation source +# +# local-url = /srv/ftp/pub/some-distribution/inst-source +# + +# add a new selection: +# +# base = minimal +# packages = < diff --git a/src/lib/distro-info/rhel-5/export-filter.example b/src/lib/distro-info/rhel-5/export-filter.example new file mode 100644 index 00000000..a414fef4 --- /dev/null +++ b/src/lib/distro-info/rhel-5/export-filter.example @@ -0,0 +1,15 @@ +# this file defines the filter rules used when exporting a vendor-OS +# of this distro +# +# copy this file to 'export-filter' and add your own filters to it +# in order to overrule the filters provided by openslx +# +#Examples: +# the following line would include anything below /var/spool/ +#+ /var/spool/* +# +# this would exclude anything in /etc that starts with dhcpd.conf +#- /etc/dhcpd.conf* +# +# and this would exclude all rpmnew-files: +#- *.rpmnew diff --git a/src/lib/distro-info/rhel-5/prereqfiles/etc/group b/src/lib/distro-info/rhel-5/prereqfiles/etc/group new file mode 100644 index 00000000..505cb221 --- /dev/null +++ b/src/lib/distro-info/rhel-5/prereqfiles/etc/group @@ -0,0 +1,33 @@ +root:x:0: +bin:x:1:daemon +daemon:x:2: +sys:x:3: +tty:x:5: +disk:x:6: +lp:x:7: +www:x:8: +kmem:x:9: +wheel:x:10: +mail:x:12: +news:x:13: +uucp:x:14: +shadow:x:15: +dialout:x:16: +audio:x:17: +floppy:x:19: +cdrom:x:20: +console:x:21: +utmp:x:22: +public:x:32: +video:x:33: +games:x:40: +xok:x:41: +trusted:x:42: +modem:x:43: +ftp:x:49: +man:x:62: +users:x:100: +nobody:x:65533: +nogroup:x:65534:nobody +messagebus:!:101: +haldaemon:!:102: diff --git a/src/lib/distro-info/rhel-5/prereqfiles/etc/hosts b/src/lib/distro-info/rhel-5/prereqfiles/etc/hosts new file mode 100644 index 00000000..75721cd5 --- /dev/null +++ b/src/lib/distro-info/rhel-5/prereqfiles/etc/hosts @@ -0,0 +1 @@ +127.0.0.1 localhost diff --git a/src/lib/distro-info/rhel-5/prereqfiles/etc/passwd b/src/lib/distro-info/rhel-5/prereqfiles/etc/passwd new file mode 100644 index 00000000..9b8fc4fe --- /dev/null +++ b/src/lib/distro-info/rhel-5/prereqfiles/etc/passwd @@ -0,0 +1,14 @@ +root:x:0:0:root:/root:/bin/bash +bin:x:1:1:bin:/bin:/bin/bash +daemon:x:2:2:Daemon:/sbin:/bin/bash +lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash +mail:x:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false +news:x:9:13:News system:/etc/news:/bin/bash +uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash +games:x:12:100:Games account:/var/games:/bin/bash +man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash +wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false +ftp:x:40:49:FTP account:/srv/ftp:/bin/bash +nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash +messagebus:x:100:101:User for D-Bus:/var/run/dbus:/bin/false +haldaemon:x:101:102:User for haldaemon:/var/run/hal:/bin/false diff --git a/src/lib/distro-info/rhel-5/prereqfiles/etc/shadow b/src/lib/distro-info/rhel-5/prereqfiles/etc/shadow new file mode 100644 index 00000000..cd100a5a --- /dev/null +++ b/src/lib/distro-info/rhel-5/prereqfiles/etc/shadow @@ -0,0 +1,14 @@ +root::13481:::::: +bin:*:13481:::::: +daemon:*:13481:::::: +lp:*:13481:::::: +mail:*:13481:::::: +news:*:13481:::::: +uucp:*:13481:::::: +games:*:13481:::::: +man:*:13481:::::: +wwwrun:*:13481:::::: +ftp:*:13481:::::: +nobody:*:13481:::::: +messagebus:!:13481:0::7::: +haldaemon:!:13481:0::7::: diff --git a/src/lib/distro-info/rhel-5/settings.default b/src/lib/distro-info/rhel-5/settings.default new file mode 100644 index 00000000..5a64cca9 --- /dev/null +++ b/src/lib/distro-info/rhel-5/settings.default @@ -0,0 +1,30 @@ +bootstrap-packages = < + packages = < +package-subdir = ??? +prereq-packages = < + name = RHEL 5 + repo-subdir = ? + file-for-speedtest = ? + + + packages = < + + base = minimal + packages = < + + base = minimal + diff --git a/src/lib/distro-info/rhel-5/settings.example b/src/lib/distro-info/rhel-5/settings.example new file mode 100644 index 00000000..5ae02428 --- /dev/null +++ b/src/lib/distro-info/rhel-5/settings.example @@ -0,0 +1,17 @@ +# rename this file to 'settings' and edit it as you please +# +# for a list of all options, have a look at the corresponding +# settings.default in /opt/openslx/share/distro-info + +# use local installation source +# +# local-url = /srv/ftp/pub/some-distribution/inst-source +# + +# add a new selection: +# +# base = minimal +# packages = < diff --git a/src/lib/distro-info/rhel-6/export-filter.example b/src/lib/distro-info/rhel-6/export-filter.example new file mode 100644 index 00000000..a414fef4 --- /dev/null +++ b/src/lib/distro-info/rhel-6/export-filter.example @@ -0,0 +1,15 @@ +# this file defines the filter rules used when exporting a vendor-OS +# of this distro +# +# copy this file to 'export-filter' and add your own filters to it +# in order to overrule the filters provided by openslx +# +#Examples: +# the following line would include anything below /var/spool/ +#+ /var/spool/* +# +# this would exclude anything in /etc that starts with dhcpd.conf +#- /etc/dhcpd.conf* +# +# and this would exclude all rpmnew-files: +#- *.rpmnew diff --git a/src/lib/distro-info/rhel-6/prereqfiles/etc/group b/src/lib/distro-info/rhel-6/prereqfiles/etc/group new file mode 100644 index 00000000..505cb221 --- /dev/null +++ b/src/lib/distro-info/rhel-6/prereqfiles/etc/group @@ -0,0 +1,33 @@ +root:x:0: +bin:x:1:daemon +daemon:x:2: +sys:x:3: +tty:x:5: +disk:x:6: +lp:x:7: +www:x:8: +kmem:x:9: +wheel:x:10: +mail:x:12: +news:x:13: +uucp:x:14: +shadow:x:15: +dialout:x:16: +audio:x:17: +floppy:x:19: +cdrom:x:20: +console:x:21: +utmp:x:22: +public:x:32: +video:x:33: +games:x:40: +xok:x:41: +trusted:x:42: +modem:x:43: +ftp:x:49: +man:x:62: +users:x:100: +nobody:x:65533: +nogroup:x:65534:nobody +messagebus:!:101: +haldaemon:!:102: diff --git a/src/lib/distro-info/rhel-6/prereqfiles/etc/hosts b/src/lib/distro-info/rhel-6/prereqfiles/etc/hosts new file mode 100644 index 00000000..75721cd5 --- /dev/null +++ b/src/lib/distro-info/rhel-6/prereqfiles/etc/hosts @@ -0,0 +1 @@ +127.0.0.1 localhost diff --git a/src/lib/distro-info/rhel-6/prereqfiles/etc/passwd b/src/lib/distro-info/rhel-6/prereqfiles/etc/passwd new file mode 100644 index 00000000..9b8fc4fe --- /dev/null +++ b/src/lib/distro-info/rhel-6/prereqfiles/etc/passwd @@ -0,0 +1,14 @@ +root:x:0:0:root:/root:/bin/bash +bin:x:1:1:bin:/bin:/bin/bash +daemon:x:2:2:Daemon:/sbin:/bin/bash +lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash +mail:x:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false +news:x:9:13:News system:/etc/news:/bin/bash +uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash +games:x:12:100:Games account:/var/games:/bin/bash +man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash +wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false +ftp:x:40:49:FTP account:/srv/ftp:/bin/bash +nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash +messagebus:x:100:101:User for D-Bus:/var/run/dbus:/bin/false +haldaemon:x:101:102:User for haldaemon:/var/run/hal:/bin/false diff --git a/src/lib/distro-info/rhel-6/prereqfiles/etc/shadow b/src/lib/distro-info/rhel-6/prereqfiles/etc/shadow new file mode 100644 index 00000000..cd100a5a --- /dev/null +++ b/src/lib/distro-info/rhel-6/prereqfiles/etc/shadow @@ -0,0 +1,14 @@ +root::13481:::::: +bin:*:13481:::::: +daemon:*:13481:::::: +lp:*:13481:::::: +mail:*:13481:::::: +news:*:13481:::::: +uucp:*:13481:::::: +games:*:13481:::::: +man:*:13481:::::: +wwwrun:*:13481:::::: +ftp:*:13481:::::: +nobody:*:13481:::::: +messagebus:!:13481:0::7::: +haldaemon:!:13481:0::7::: diff --git a/src/lib/distro-info/rhel-6/settings.default b/src/lib/distro-info/rhel-6/settings.default new file mode 100644 index 00000000..c40e46a4 --- /dev/null +++ b/src/lib/distro-info/rhel-6/settings.default @@ -0,0 +1,30 @@ +bootstrap-packages = < + packages = < +package-subdir = ??? +prereq-packages = < + name = RHEL 6 + repo-subdir = ? + file-for-speedtest = ? + + + packages = < + + base = minimal + packages = < + + base = minimal + diff --git a/src/lib/distro-info/rhel-6/settings.example b/src/lib/distro-info/rhel-6/settings.example new file mode 100644 index 00000000..5ae02428 --- /dev/null +++ b/src/lib/distro-info/rhel-6/settings.example @@ -0,0 +1,17 @@ +# rename this file to 'settings' and edit it as you please +# +# for a list of all options, have a look at the corresponding +# settings.default in /opt/openslx/share/distro-info + +# use local installation source +# +# local-url = /srv/ftp/pub/some-distribution/inst-source +# + +# add a new selection: +# +# base = minimal +# packages = < diff --git a/src/lib/distro-info/scientific-5/export-filter.example b/src/lib/distro-info/scientific-5/export-filter.example new file mode 100644 index 00000000..a414fef4 --- /dev/null +++ b/src/lib/distro-info/scientific-5/export-filter.example @@ -0,0 +1,15 @@ +# this file defines the filter rules used when exporting a vendor-OS +# of this distro +# +# copy this file to 'export-filter' and add your own filters to it +# in order to overrule the filters provided by openslx +# +#Examples: +# the following line would include anything below /var/spool/ +#+ /var/spool/* +# +# this would exclude anything in /etc that starts with dhcpd.conf +#- /etc/dhcpd.conf* +# +# and this would exclude all rpmnew-files: +#- *.rpmnew diff --git a/src/lib/distro-info/scientific-5/prereqfiles/etc/group b/src/lib/distro-info/scientific-5/prereqfiles/etc/group new file mode 100644 index 00000000..505cb221 --- /dev/null +++ b/src/lib/distro-info/scientific-5/prereqfiles/etc/group @@ -0,0 +1,33 @@ +root:x:0: +bin:x:1:daemon +daemon:x:2: +sys:x:3: +tty:x:5: +disk:x:6: +lp:x:7: +www:x:8: +kmem:x:9: +wheel:x:10: +mail:x:12: +news:x:13: +uucp:x:14: +shadow:x:15: +dialout:x:16: +audio:x:17: +floppy:x:19: +cdrom:x:20: +console:x:21: +utmp:x:22: +public:x:32: +video:x:33: +games:x:40: +xok:x:41: +trusted:x:42: +modem:x:43: +ftp:x:49: +man:x:62: +users:x:100: +nobody:x:65533: +nogroup:x:65534:nobody +messagebus:!:101: +haldaemon:!:102: diff --git a/src/lib/distro-info/scientific-5/prereqfiles/etc/hosts b/src/lib/distro-info/scientific-5/prereqfiles/etc/hosts new file mode 100644 index 00000000..75721cd5 --- /dev/null +++ b/src/lib/distro-info/scientific-5/prereqfiles/etc/hosts @@ -0,0 +1 @@ +127.0.0.1 localhost diff --git a/src/lib/distro-info/scientific-5/prereqfiles/etc/passwd b/src/lib/distro-info/scientific-5/prereqfiles/etc/passwd new file mode 100644 index 00000000..9b8fc4fe --- /dev/null +++ b/src/lib/distro-info/scientific-5/prereqfiles/etc/passwd @@ -0,0 +1,14 @@ +root:x:0:0:root:/root:/bin/bash +bin:x:1:1:bin:/bin:/bin/bash +daemon:x:2:2:Daemon:/sbin:/bin/bash +lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash +mail:x:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false +news:x:9:13:News system:/etc/news:/bin/bash +uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash +games:x:12:100:Games account:/var/games:/bin/bash +man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash +wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false +ftp:x:40:49:FTP account:/srv/ftp:/bin/bash +nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash +messagebus:x:100:101:User for D-Bus:/var/run/dbus:/bin/false +haldaemon:x:101:102:User for haldaemon:/var/run/hal:/bin/false diff --git a/src/lib/distro-info/scientific-5/prereqfiles/etc/shadow b/src/lib/distro-info/scientific-5/prereqfiles/etc/shadow new file mode 100644 index 00000000..cd100a5a --- /dev/null +++ b/src/lib/distro-info/scientific-5/prereqfiles/etc/shadow @@ -0,0 +1,14 @@ +root::13481:::::: +bin:*:13481:::::: +daemon:*:13481:::::: +lp:*:13481:::::: +mail:*:13481:::::: +news:*:13481:::::: +uucp:*:13481:::::: +games:*:13481:::::: +man:*:13481:::::: +wwwrun:*:13481:::::: +ftp:*:13481:::::: +nobody:*:13481:::::: +messagebus:!:13481:0::7::: +haldaemon:!:13481:0::7::: diff --git a/src/lib/distro-info/scientific-5/settings.default b/src/lib/distro-info/scientific-5/settings.default new file mode 100644 index 00000000..fe38a531 --- /dev/null +++ b/src/lib/distro-info/scientific-5/settings.default @@ -0,0 +1,30 @@ +bootstrap-packages = < + packages = < +package-subdir = ??? +prereq-packages = < + name = Scientific Linux 5 + repo-subdir = ? + file-for-speedtest = ? + + + packages = < + + base = minimal + packages = < + + base = minimal + diff --git a/src/lib/distro-info/scientific-5/settings.example b/src/lib/distro-info/scientific-5/settings.example new file mode 100644 index 00000000..5ae02428 --- /dev/null +++ b/src/lib/distro-info/scientific-5/settings.example @@ -0,0 +1,17 @@ +# rename this file to 'settings' and edit it as you please +# +# for a list of all options, have a look at the corresponding +# settings.default in /opt/openslx/share/distro-info + +# use local installation source +# +# local-url = /srv/ftp/pub/some-distribution/inst-source +# + +# add a new selection: +# +# base = minimal +# packages = < diff --git a/src/lib/distro-info/scientific-6/export-filter.example b/src/lib/distro-info/scientific-6/export-filter.example new file mode 100644 index 00000000..a414fef4 --- /dev/null +++ b/src/lib/distro-info/scientific-6/export-filter.example @@ -0,0 +1,15 @@ +# this file defines the filter rules used when exporting a vendor-OS +# of this distro +# +# copy this file to 'export-filter' and add your own filters to it +# in order to overrule the filters provided by openslx +# +#Examples: +# the following line would include anything below /var/spool/ +#+ /var/spool/* +# +# this would exclude anything in /etc that starts with dhcpd.conf +#- /etc/dhcpd.conf* +# +# and this would exclude all rpmnew-files: +#- *.rpmnew diff --git a/src/lib/distro-info/scientific-6/prereqfiles/etc/group b/src/lib/distro-info/scientific-6/prereqfiles/etc/group new file mode 100644 index 00000000..505cb221 --- /dev/null +++ b/src/lib/distro-info/scientific-6/prereqfiles/etc/group @@ -0,0 +1,33 @@ +root:x:0: +bin:x:1:daemon +daemon:x:2: +sys:x:3: +tty:x:5: +disk:x:6: +lp:x:7: +www:x:8: +kmem:x:9: +wheel:x:10: +mail:x:12: +news:x:13: +uucp:x:14: +shadow:x:15: +dialout:x:16: +audio:x:17: +floppy:x:19: +cdrom:x:20: +console:x:21: +utmp:x:22: +public:x:32: +video:x:33: +games:x:40: +xok:x:41: +trusted:x:42: +modem:x:43: +ftp:x:49: +man:x:62: +users:x:100: +nobody:x:65533: +nogroup:x:65534:nobody +messagebus:!:101: +haldaemon:!:102: diff --git a/src/lib/distro-info/scientific-6/prereqfiles/etc/hosts b/src/lib/distro-info/scientific-6/prereqfiles/etc/hosts new file mode 100644 index 00000000..75721cd5 --- /dev/null +++ b/src/lib/distro-info/scientific-6/prereqfiles/etc/hosts @@ -0,0 +1 @@ +127.0.0.1 localhost diff --git a/src/lib/distro-info/scientific-6/prereqfiles/etc/passwd b/src/lib/distro-info/scientific-6/prereqfiles/etc/passwd new file mode 100644 index 00000000..9b8fc4fe --- /dev/null +++ b/src/lib/distro-info/scientific-6/prereqfiles/etc/passwd @@ -0,0 +1,14 @@ +root:x:0:0:root:/root:/bin/bash +bin:x:1:1:bin:/bin:/bin/bash +daemon:x:2:2:Daemon:/sbin:/bin/bash +lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash +mail:x:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false +news:x:9:13:News system:/etc/news:/bin/bash +uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash +games:x:12:100:Games account:/var/games:/bin/bash +man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash +wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false +ftp:x:40:49:FTP account:/srv/ftp:/bin/bash +nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash +messagebus:x:100:101:User for D-Bus:/var/run/dbus:/bin/false +haldaemon:x:101:102:User for haldaemon:/var/run/hal:/bin/false diff --git a/src/lib/distro-info/scientific-6/prereqfiles/etc/shadow b/src/lib/distro-info/scientific-6/prereqfiles/etc/shadow new file mode 100644 index 00000000..cd100a5a --- /dev/null +++ b/src/lib/distro-info/scientific-6/prereqfiles/etc/shadow @@ -0,0 +1,14 @@ +root::13481:::::: +bin:*:13481:::::: +daemon:*:13481:::::: +lp:*:13481:::::: +mail:*:13481:::::: +news:*:13481:::::: +uucp:*:13481:::::: +games:*:13481:::::: +man:*:13481:::::: +wwwrun:*:13481:::::: +ftp:*:13481:::::: +nobody:*:13481:::::: +messagebus:!:13481:0::7::: +haldaemon:!:13481:0::7::: diff --git a/src/lib/distro-info/scientific-6/settings.default b/src/lib/distro-info/scientific-6/settings.default new file mode 100644 index 00000000..966675de --- /dev/null +++ b/src/lib/distro-info/scientific-6/settings.default @@ -0,0 +1,30 @@ +bootstrap-packages = < + packages = < +package-subdir = ??? +prereq-packages = < + name = Scientific Linux 6 + repo-subdir = ? + file-for-speedtest = ? + + + packages = < + + base = minimal + packages = < + + base = minimal + diff --git a/src/lib/distro-info/scientific-6/settings.example b/src/lib/distro-info/scientific-6/settings.example new file mode 100644 index 00000000..5ae02428 --- /dev/null +++ b/src/lib/distro-info/scientific-6/settings.example @@ -0,0 +1,17 @@ +# rename this file to 'settings' and edit it as you please +# +# for a list of all options, have a look at the corresponding +# settings.default in /opt/openslx/share/distro-info + +# use local installation source +# +# local-url = /srv/ftp/pub/some-distribution/inst-source +# + +# add a new selection: +# +# base = minimal +# packages = < -- cgit v1.2.3-55-g7522