diff options
author | Dirk von Suchodoletz | 2007-04-24 15:43:15 +0200 |
---|---|---|
committer | Dirk von Suchodoletz | 2007-04-24 15:43:15 +0200 |
commit | eaa98b5bf5782f5d867cdaad895a9074f76753ef (patch) | |
tree | fd7d6542dc71bd23ed5b5d7dcfba2432f6f64fdf | |
parent | * changed semantics of slxos-export (back) to add/update/remove (diff) | |
download | core-eaa98b5bf5782f5d867cdaad895a9074f76753ef.tar.gz core-eaa98b5bf5782f5d867cdaad895a9074f76753ef.tar.xz core-eaa98b5bf5782f5d867cdaad895a9074f76753ef.zip |
Support the setup (basic functionality only) of printer and samba (SuSE
only at the moment) ...
git-svn-id: http://svn.openslx.org/svn/openslx/trunk@923 95ad53e4-c205-0410-b2fa-d234c58c8868
-rw-r--r-- | initramfs/distro-specs/suse/functions-default | 65 | ||||
-rwxr-xr-x | initramfs/initrd-stuff/bin/servconfig | 12 | ||||
-rw-r--r-- | initramfs/initrd-stuff/etc/functions | 13 | ||||
-rw-r--r-- | installer/default_files/machine-setup.default | 4 |
4 files changed, 89 insertions, 5 deletions
diff --git a/initramfs/distro-specs/suse/functions-default b/initramfs/distro-specs/suse/functions-default index a072a493..9ab14815 100644 --- a/initramfs/distro-specs/suse/functions-default +++ b/initramfs/distro-specs/suse/functions-default @@ -159,6 +159,71 @@ if [ "x$start_snmp" = "xyes" ] ; then 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" "01" + testmkd /mnt/var/spool/cups/tmp + chown -R lp:lp /var/spool/cups + ;; + lp*|LP*|PLP*) + rllinker "lpd" "25" "01" + testmkd /mnt/var/spool/lpd + chown -R lp:lp /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 samba service +config_samba () { +if [ "$start_samba" != "no" ]; then + if [ "$start_samba" = "yes" ] && [ -f /mnt/etc/init.d/smb ] ; then + rllinker "smb" "27" "02" + rllinker "nmb" "28" "02" + fi + # set up samba configuration with NetBIOS name servers etc. + if [ "x$netbios_name_servers" != "x" ]; then + wins_server="\\twins server = $netbios_name_servers" + else + wins_server=";\\twins server = 127.0.0.1" + fi + if [ "x$netbios_workgroup" != "x" ]; then + workgroup="workgroup = $new_netbios_workgroup" + else + workgroup="workgroup = openslx" + fi + # avoid to overwrite admin provided samba configuration file + [ ! -f /rootfs/etc/samba/smb.conf ] && [ -f /mnt/etc/samba/smb.conf ] && \ + sed -e "1i# modified in InitRamFS by $0" \ + -e "s,\s*netbios name.*,netbios name = ${host_name},g" \ + -e "s,\s*interfaces.*,interfaces = ${clientip}/${subnet_mask},g" \ + -e "s,;.*wins server.*,$wins_server,g" \ + -e "s,\s*workgroup =.*,$workgroup,g" \ + -i /mnt/etc/samba/smb.conf; + # special kde network discovery service + [ -f /mnt/etc/lisarc ] && [ ! -f /rootfs/etc/lisarc ] && + sed -e "1i# modified in InitRamFS by $0" \ + -e "s,AllowedA.*,AllowedAddresses=${clientip}/${subnet_mask};,g" \ + -e "s,BroadcastN.*,BroadcastNetwork=${clientip}/${subnet_mask};,g" \ + -e "s,PingAdd.*,PingAddresses=${clientip}/${subnet_mask};,g" \ + -i /mnt/etc/lisarc +fi +} + # configure X display manager (/etc/${D_SYSCONFDIR}/displaymanager) config_dm_entry () { local dm="$1" diff --git a/initramfs/initrd-stuff/bin/servconfig b/initramfs/initrd-stuff/bin/servconfig index 51b66b68..2354cfb8 100755 --- a/initramfs/initrd-stuff/bin/servconfig +++ b/initramfs/initrd-stuff/bin/servconfig @@ -174,8 +174,8 @@ test -n "$domain_name_servers" && { ############################################################################# # initial boot scripts -# delete and create runlevel links for initial booting (SuSE, Debian, -# ...) +# delete and create runlevel links for initial booting (SuSE, Debian, Ubuntu, +# Fedora, ...) initial_boot ############################################################################# @@ -251,6 +251,9 @@ fi config_automount # fi +# configure print services / start requested printer daemon +config_printer + # configure bluetooth services config_bt @@ -283,9 +286,10 @@ config_snmp config_afs # setup nfsv4/krb stuff -# if nfsv4 required config_nfsv4 -# fi + +# configure samba service +config_samba ############################################################################# # NIS diff --git a/initramfs/initrd-stuff/etc/functions b/initramfs/initrd-stuff/etc/functions index 1fa21a35..9265eedb 100644 --- a/initramfs/initrd-stuff/etc/functions +++ b/initramfs/initrd-stuff/etc/functions @@ -1170,11 +1170,16 @@ config_dreshal () { : } -# configure automounter +# configure automounter, simple NFSv3 imports only config_automount () { : } +# configure print services / start requested printer daemon +config_printer () { +: +} + # configure bluetooth services config_bt () { : @@ -1200,6 +1205,12 @@ config_automount () { : } +# configure samba service (not winbind, but nmbd, smbd) +config_samba () { +: +} + + # start portmapper (needed at least for nfs and nis services) config_portmap () { : diff --git a/installer/default_files/machine-setup.default b/installer/default_files/machine-setup.default index 4f5b8529..80bec1c5 100644 --- a/installer/default_files/machine-setup.default +++ b/installer/default_files/machine-setup.default @@ -73,6 +73,10 @@ start_atd="no" # simple network management protocol for system monitoring start_snmp="no" +# configure print service (may require additional files in ConfTGZ) +# cups|lpd|no +start_printer="no" + # dbus, resource manager, hal (hardware abstraction layer) interoperate # tighly. There might be little different solutions within each distro start_dreshal="yes" |