Difference between revisions of "Installation on Slackware 13"

From Linux-VServer

Jump to: navigation, search
(Hints)
(Patch used)
Line 243: Line 243:
 
== Patch used ==
 
== Patch used ==
 
<pre>
 
<pre>
Patch for Slackware 13.1 guest on a Linux-Vserver host
+
Patch for Slackware 13.37 guest on a Linux-Vserver host
======================================================
+
========================================================
 
by Roberto Puzzanghera - http://notes.sagredo.eu
 
by Roberto Puzzanghera - http://notes.sagredo.eu
version: 2010.12.28
+
version: 2011.04.28
  
======================================================
+
========================================================
  
diff -urNB rc.d-original/rc.0 rc.d-patched/rc.0
+
diff -urNB rc.d-original/rc.0 rc.d/rc.0
--- rc.d-original/rc.0 2010-03-20 01:14:07.000000000 +0100
+
--- rc.d-original/rc.0 2011-04-16 23:14:14.000000000 +0200
+++ rc.d-patched/rc.0 2010-12-28 17:37:41.000000000 +0100
+
+++ rc.d/rc.0 2011-04-28 15:01:59.000000000 +0200
 
@@ -37,22 +37,6 @@
 
@@ -37,22 +37,6 @@
 
  ;;
 
  ;;
Line 276: Line 276:
 
  if [ -x /etc/rc.d/rc.local_shutdown ]; then
 
  if [ -x /etc/rc.d/rc.local_shutdown ]; then
 
   /etc/rc.d/rc.local_shutdown stop
 
   /etc/rc.d/rc.local_shutdown stop
@@ -98,18 +82,6 @@
+
@@ -98,66 +82,11 @@
 
   sh /etc/rc.d/rc.messagebus stop
 
   sh /etc/rc.d/rc.messagebus stop
 
  fi
 
  fi
 
   
 
   
 +
-# Kill any processes (typically gam) that would otherwise prevent
 +
-# unmounting NFS volumes:
 +
-unset FUSER_DELAY
 +
-for dir in $(/bin/mount | grep 'type nfs' | cut -d ' ' -f 3 ) ; do
 +
-  echo "Killing processes holding NFS mount $dir open..."
 +
-  # Background this to prevent fuser from also blocking shutdown:
 +
-  /usr/bin/fuser -k -m $dir &
 +
-  FUSER_DELAY=5
 +
-done
 +
-# If fuser was run, let it have some delay:
 +
-if [ ! -z "$FUSER_DELAY" ]; then
 +
-  sleep $FUSER_DELAY
 +
-fi
 +
-
 
-# Unmount any NFS, SMB, or CIFS filesystems:
 
-# Unmount any NFS, SMB, or CIFS filesystems:
 
-echo "Unmounting remote filesystems."
 
-echo "Unmounting remote filesystems."
-/bin/umount -v -a -r -t nfs,smbfs,cifs
+
-/bin/umount -v -a -l -f -r -t nfs,smbfs,cifs
 
-
 
-
 
-# Try to shut down pppd:
 
-# Try to shut down pppd:
Line 292: Line 306:
 
-fi
 
-fi
 
-
 
-
# Bring down the networking system, but first make sure that this
+
-# Bring down the networking system, but first make sure that this
# isn't a diskless client with the / partition mounted via NFS:
+
-# isn't a diskless client with the / partition mounted via NFS:
if ! /bin/mount | /bin/grep -q 'on / type nfs' ; then
+
-if ! /bin/mount | /bin/grep -q 'on / type nfs' ; then
@@ -127,13 +99,6 @@
+
- if [ -x /etc/rc.d/rc.inet1 ]; then
  sleep 2
+
-    . /etc/rc.d/rc.inet1 stop
  fi
+
-  fi
   
+
-fi
 +
-
 +
-# In case dhcpcd might have been manually started on the command line,
 +
-# look for the .pid file, and shut dhcpcd down if it's found:
 +
-if /bin/ls /etc/dhcpc/*.pid 1> /dev/null 2> /dev/null ; then
 +
- /sbin/dhcpcd -k 1> /dev/null 2> /dev/null
 +
- # A little time for /etc/resolv.conf and/or other files to
 +
-  # restore themselves.
 +
-  sleep 2
 +
-fi
 +
-
 
-# Shut down PCMCIA devices:
 
-# Shut down PCMCIA devices:
 
-if [ -x /etc/rc.d/rc.pcmcia ]; then
 
-if [ -x /etc/rc.d/rc.pcmcia ]; then
Line 309: Line 333:
 
  if [ -x /sbin/accton -a -r /var/log/pacct ]; then
 
  if [ -x /sbin/accton -a -r /var/log/pacct ]; then
 
   /sbin/accton off
 
   /sbin/accton off
@@ -181,23 +146,6 @@
+
fi
 +
 +
-# Terminate acpid before syslog:
 +
-if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid ]; then # quit
 +
-  . /etc/rc.d/rc.acpid stop
 +
-fi
 +
-
 +
# Kill all processes.
 +
# INIT is supposed to handle this entirely now, but this didn't always
 +
# work correctly without this second pass at killing off the processes.
 +
@@ -177,16 +106,6 @@
 +
  fi
 +
fi
 +
 +
-# Carry a random seed between reboots.
 +
-echo "Saving random seed from /dev/urandom in /etc/random-seed."
 +
-# Use the pool size from /proc, or 512 bytes:
 +
-if [ -r /proc/sys/kernel/random/poolsize ]; then
 +
-  /bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null
 +
-else
 +
-  /bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
 +
-fi
 +
-/bin/chmod 600 /etc/random-seed
 +
-
 +
# Before unmounting file systems write a reboot or halt record to wtmp.
 +
$command -w
 +
 +
@@ -195,17 +114,6 @@
 
   rm -f /var/lock/subsys/*
 
   rm -f /var/lock/subsys/*
 
  fi
 
  fi
Line 317: Line 368:
 
-/sbin/swapoff -a
 
-/sbin/swapoff -a
 
-/bin/sync
 
-/bin/sync
-
 
-# Umount any LVM volumes:
 
-if /bin/mount | /bin/grep -q '^/dev/mapper/' ; then
 
-  echo "Unmounting LVM volumes."
 
-  /bin/umount -v $(/bin/mount | /bin/grep '^/dev/mapper/' | /bin/cut -d ' ' -f 3 | /bin/tac)
 
-fi
 
 
-
 
-
 
-echo "Unmounting local file systems."
 
-echo "Unmounting local file systems."
Line 333: Line 378:
 
  /bin/sync
 
  /bin/sync
 
   
 
   
@@ -222,45 +170,5 @@
+
@@ -230,45 +138,10 @@
 
   done
 
   done
 
  fi
 
  fi
Line 343: Line 388:
 
-fi
 
-fi
 
-
 
-
-# This never hurts again (especially since root-on-LVM always fails
+
# This never hurts again (especially since root-on-LVM always fails
-# to deactivate the / logical volume...  but at least it was
+
# to deactivate the / logical volume...  but at least it was
-# remounted as read-only first)
+
# remounted as read-only first)
-/bin/sync
+
/bin/sync
-
+
 
-# sleep 3 fixes problems with some hard drives that don't
 
-# sleep 3 fixes problems with some hard drives that don't
 
-# otherwise finish syncing before reboot or poweroff
 
-# otherwise finish syncing before reboot or poweroff
Line 379: Line 424:
 
-fi
 
-fi
 
-
 
-
diff -urNB rc.d-original/rc.6 rc.d-patched/rc.6
+
diff -urNB rc.d-original/rc.6 rc.d/rc.6
--- rc.d-original/rc.6 2010-03-20 01:14:07.000000000 +0100
+
--- rc.d-original/rc.6 2011-04-16 23:14:14.000000000 +0200
+++ rc.d-patched/rc.6 2010-12-28 17:37:41.000000000 +0100
+
+++ rc.d/rc.6 2011-04-28 15:01:59.000000000 +0200
 
@@ -37,22 +37,6 @@
 
@@ -37,22 +37,6 @@
 
  ;;
 
  ;;
Line 405: Line 450:
 
  if [ -x /etc/rc.d/rc.local_shutdown ]; then
 
  if [ -x /etc/rc.d/rc.local_shutdown ]; then
 
   /etc/rc.d/rc.local_shutdown stop
 
   /etc/rc.d/rc.local_shutdown stop
@@ -98,18 +82,6 @@
+
@@ -98,66 +82,11 @@
 
   sh /etc/rc.d/rc.messagebus stop
 
   sh /etc/rc.d/rc.messagebus stop
 
  fi
 
  fi
 
   
 
   
 +
-# Kill any processes (typically gam) that would otherwise prevent
 +
-# unmounting NFS volumes:
 +
-unset FUSER_DELAY
 +
-for dir in $(/bin/mount | grep 'type nfs' | cut -d ' ' -f 3 ) ; do
 +
-  echo "Killing processes holding NFS mount $dir open..."
 +
-  # Background this to prevent fuser from also blocking shutdown:
 +
-  /usr/bin/fuser -k -m $dir &
 +
-  FUSER_DELAY=5
 +
-done
 +
-# If fuser was run, let it have some delay:
 +
-if [ ! -z "$FUSER_DELAY" ]; then
 +
-  sleep $FUSER_DELAY
 +
-fi
 +
-
 
-# Unmount any NFS, SMB, or CIFS filesystems:
 
-# Unmount any NFS, SMB, or CIFS filesystems:
 
-echo "Unmounting remote filesystems."
 
-echo "Unmounting remote filesystems."
-/bin/umount -v -a -r -t nfs,smbfs,cifs
+
-/bin/umount -v -a -l -f -r -t nfs,smbfs,cifs
 
-
 
-
 
-# Try to shut down pppd:
 
-# Try to shut down pppd:
Line 421: Line 480:
 
-fi
 
-fi
 
-
 
-
# Bring down the networking system, but first make sure that this
+
-# Bring down the networking system, but first make sure that this
# isn't a diskless client with the / partition mounted via NFS:
+
-# isn't a diskless client with the / partition mounted via NFS:
if ! /bin/mount | /bin/grep -q 'on / type nfs' ; then
+
-if ! /bin/mount | /bin/grep -q 'on / type nfs' ; then
@@ -127,13 +99,6 @@
+
- if [ -x /etc/rc.d/rc.inet1 ]; then
  sleep 2
+
-    . /etc/rc.d/rc.inet1 stop
  fi
+
-  fi
   
+
-fi
 +
-
 +
-# In case dhcpcd might have been manually started on the command line,
 +
-# look for the .pid file, and shut dhcpcd down if it's found:
 +
-if /bin/ls /etc/dhcpc/*.pid 1> /dev/null 2> /dev/null ; then
 +
- /sbin/dhcpcd -k 1> /dev/null 2> /dev/null
 +
- # A little time for /etc/resolv.conf and/or other files to
 +
-  # restore themselves.
 +
-  sleep 2
 +
-fi
 +
-
 
-# Shut down PCMCIA devices:
 
-# Shut down PCMCIA devices:
 
-if [ -x /etc/rc.d/rc.pcmcia ]; then
 
-if [ -x /etc/rc.d/rc.pcmcia ]; then
Line 438: Line 507:
 
  if [ -x /sbin/accton -a -r /var/log/pacct ]; then
 
  if [ -x /sbin/accton -a -r /var/log/pacct ]; then
 
   /sbin/accton off
 
   /sbin/accton off
@@ -181,23 +146,6 @@
+
fi
 +
 +
-# Terminate acpid before syslog:
 +
-if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid ]; then # quit
 +
-  . /etc/rc.d/rc.acpid stop
 +
-fi
 +
-
 +
# Kill all processes.
 +
# INIT is supposed to handle this entirely now, but this didn't always
 +
# work correctly without this second pass at killing off the processes.
 +
@@ -177,16 +106,6 @@
 +
  fi
 +
fi
 +
 +
-# Carry a random seed between reboots.
 +
-echo "Saving random seed from /dev/urandom in /etc/random-seed."
 +
-# Use the pool size from /proc, or 512 bytes:
 +
-if [ -r /proc/sys/kernel/random/poolsize ]; then
 +
-  /bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null
 +
-else
 +
-  /bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
 +
-fi
 +
-/bin/chmod 600 /etc/random-seed
 +
-
 +
# Before unmounting file systems write a reboot or halt record to wtmp.
 +
$command -w
 +
 +
@@ -195,17 +114,6 @@
 
   rm -f /var/lock/subsys/*
 
   rm -f /var/lock/subsys/*
 
  fi
 
  fi
Line 446: Line 542:
 
-/sbin/swapoff -a
 
-/sbin/swapoff -a
 
-/bin/sync
 
-/bin/sync
-
 
-# Umount any LVM volumes:
 
-if /bin/mount | /bin/grep -q '^/dev/mapper/' ; then
 
-  echo "Unmounting LVM volumes."
 
-  /bin/umount -v $(/bin/mount | /bin/grep '^/dev/mapper/' | /bin/cut -d ' ' -f 3 | /bin/tac)
 
-fi
 
 
-
 
-
 
-echo "Unmounting local file systems."
 
-echo "Unmounting local file systems."
Line 462: Line 552:
 
  /bin/sync
 
  /bin/sync
 
   
 
   
@@ -222,45 +170,5 @@
+
@@ -230,45 +138,10 @@
 
   done
 
   done
 
  fi
 
  fi
Line 472: Line 562:
 
-fi
 
-fi
 
-
 
-
-# This never hurts again (especially since root-on-LVM always fails
+
# This never hurts again (especially since root-on-LVM always fails
-# to deactivate the / logical volume...  but at least it was
+
# to deactivate the / logical volume...  but at least it was
-# remounted as read-only first)
+
# remounted as read-only first)
-/bin/sync
+
/bin/sync
-
+
 
-# sleep 3 fixes problems with some hard drives that don't
 
-# sleep 3 fixes problems with some hard drives that don't
 
-# otherwise finish syncing before reboot or poweroff
 
-# otherwise finish syncing before reboot or poweroff
Line 508: Line 598:
 
-fi
 
-fi
 
-
 
-
diff -urNB rc.d-original/rc.K rc.d-patched/rc.K
+
diff -urNB rc.d-original/rc.M rc.d/rc.M
--- rc.d-original/rc.K 2008-12-02 21:31:48.000000000 +0100
+
--- rc.d-original/rc.M 2011-03-22 07:15:15.000000000 +0100
+++ rc.d-patched/rc.K 2010-12-28 17:37:41.000000000 +0100
+
+++ rc.d/rc.M 2011-04-28 19:07:47.000000000 +0200
@@ -57,22 +57,6 @@
+
  /etc/rc.d/rc.nfsd stop
+
fi
+
+
-# Unmount any NFS, SMB, or CIFS filesystems:
+
-echo "Unmounting remote filesystems."
+
-umount -a -r -t nfs,smbfs,cifs
+
-
+
-# Shut down PCMCIA devices:
+
-if [ -x /etc/rc.d/rc.pcmcia ] ; then
+
-  . /etc/rc.d/rc.pcmcia stop
+
-  # The cards might need a little extra time here to deactivate:
+
-  sleep 5
+
-fi
+
-
+
-# Terminate acpid before syslog:
+
-if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid ]; then # quit
+
-  . /etc/rc.d/rc.acpid stop
+
-fi
+
-
+
# Kill all processes.
+
echo
+
echo "Sending all processes the SIGHUP signal."
+
diff -urNB rc.d-original/rc.M rc.d-patched/rc.M
+
--- rc.d-original/rc.M 2010-02-07 04:01:28.000000000 +0100
+
+++ rc.d-patched/rc.M 2010-12-28 17:37:41.000000000 +0100
+
 
@@ -20,10 +20,6 @@
 
@@ -20,10 +20,6 @@
 
   /sbin/ldconfig &
 
   /sbin/ldconfig &
Line 548: Line 612:
 
  if [ -r /etc/HOSTNAME ]; then
 
  if [ -r /etc/HOSTNAME ]; then
 
   /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .)
 
   /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .)
@@ -36,31 +32,6 @@
+
@@ -47,31 +43,6 @@
 
  # Save the contents of 'dmesg':
 
  # Save the contents of 'dmesg':
 
  /bin/dmesg -s 65536 > /var/log/dmesg
 
  /bin/dmesg -s 65536 > /var/log/dmesg
Line 580: Line 644:
 
  if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then
 
  if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then
 
   . /etc/rc.d/rc.syslog start
 
   . /etc/rc.d/rc.syslog start
@@ -72,26 +43,11 @@
+
@@ -83,38 +54,18 @@
 
   /usr/bin/fc-cache -f &
 
   /usr/bin/fc-cache -f &
 
  fi
 
  fi
Line 594: Line 658:
 
-fi
 
-fi
 
-
 
-
# Initialize the networking hardware.
+
-# Initialize the networking hardware.
if [ -x /etc/rc.d/rc.inet1 ]; then
+
-if [ -x /etc/rc.d/rc.inet1 ]; then
  . /etc/rc.d/rc.inet1
+
. /etc/rc.d/rc.inet1
fi
+
-fi
+
-
 
-# Look for additional USB/SCSI/IEEE1394/etc devices on multiple LUNs:
 
-# Look for additional USB/SCSI/IEEE1394/etc devices on multiple LUNs:
 
-if [ -x /etc/rc.d/rc.scanluns ]; then
 
-if [ -x /etc/rc.d/rc.scanluns ]; then
Line 607: Line 671:
 
  if [ -x /etc/rc.d/rc.inet2 ]; then
 
  if [ -x /etc/rc.d/rc.inet2 ]; then
 
   . /etc/rc.d/rc.inet2
 
   . /etc/rc.d/rc.inet2
@@ -118,17 +74,6 @@
+
fi
 +
 +
# Mount any additional filesystem types that haven't already been mounted:
 +
-mount -a -v 2> /dev/null | grep -v "already mounted"
 +
+#mount -a -v 2> /dev/null | grep -v "already mounted"
 +
 +
# Start the Control Script for automounter:
 +
-if [ -x /etc/rc.d/rc.autofs ]; then
 +
-  sh /etc/rc.d/rc.autofs start
 +
-fi
 +
+#if [ -x /etc/rc.d/rc.autofs ]; then
 +
+#  sh /etc/rc.d/rc.autofs start
 +
+#fi
 +
 +
# Start the Network Time Protocol daemon:
 +
if [ -x /etc/rc.d/rc.ntpd ]; then
 +
@@ -134,17 +85,6 @@
 
  chmod 755 / 2> /dev/null
 
  chmod 755 / 2> /dev/null
 
  chmod 1777 /tmp /var/tmp
 
  chmod 1777 /tmp /var/tmp
Line 625: Line 705:
 
  if find /usr/share/icons 2> /dev/null | grep -q icon-theme.cache ; then
 
  if find /usr/share/icons 2> /dev/null | grep -q icon-theme.cache ; then
 
   for theme_dir in /usr/share/icons/* ; do
 
   for theme_dir in /usr/share/icons/* ; do
@@ -161,11 +106,6 @@
+
@@ -177,21 +117,6 @@
   sh /etc/rc.d/rc.hald start
+
   sh /etc/rc.d/rc.consolekit start
 
  fi
 
  fi
 
   
 
   
 +
-# Start HAL:
 +
-if [ -x /etc/rc.d/rc.hald ]; then
 +
-  sh /etc/rc.d/rc.hald start
 +
-fi
 +
-
 
-# Start Bluetooth:
 
-# Start Bluetooth:
 
-if [ -x /etc/rc.d/rc.bluetooth ]; then
 
-if [ -x /etc/rc.d/rc.bluetooth ]; then
Line 634: Line 719:
 
-fi
 
-fi
 
-
 
-
# Start wicd:
+
-# Start wicd:
if [ -x /etc/rc.d/rc.wicd ]; then
+
-if [ -x /etc/rc.d/rc.wicd ]; then
  sh /etc/rc.d/rc.wicd start
+
sh /etc/rc.d/rc.wicd start
@@ -207,36 +147,6 @@
+
-fi
 +
-
 +
# These GTK+/pango files need to be kept up to date for
 +
# proper input method, pixbuf loaders, and font support.
 +
if [ -x /usr/bin/update-gtk-immodules ]; then
 +
@@ -228,36 +153,6 @@
 
   /etc/rc.d/rc.atalk
 
   /etc/rc.d/rc.atalk
 
  fi
 
  fi
Line 674: Line 764:
 
  # option for BSD process accounting is enabled in your kernel, and then
 
  # option for BSD process accounting is enabled in your kernel, and then
 
  # create the file /var/log/pacct (touch /var/log/pacct).  By default, process
 
  # create the file /var/log/pacct (touch /var/log/pacct).  By default, process
@@ -301,11 +211,6 @@
+
@@ -322,11 +217,6 @@
 
   . /etc/rc.d/rc.sendmail start
 
   . /etc/rc.d/rc.sendmail start
 
  fi
 
  fi
Line 686: Line 776:
 
  if [ -x /etc/rc.d/rc.font ]; then
 
  if [ -x /etc/rc.d/rc.font ]; then
 
   . /etc/rc.d/rc.font
 
   . /etc/rc.d/rc.font
@@ -337,11 +242,6 @@
+
@@ -358,11 +248,6 @@
 
   . /etc/rc.d/rc.samba start
 
   . /etc/rc.d/rc.samba start
 
  fi
 
  fi
Line 698: Line 788:
 
  if [ -x /etc/rc.d/rc.sysvinit ]; then
 
  if [ -x /etc/rc.d/rc.sysvinit ]; then
 
   . /etc/rc.d/rc.sysvinit
 
   . /etc/rc.d/rc.sysvinit
diff -urNB rc.d-original/rc.inet2 rc.d-patched/rc.inet2
+
diff -urNB rc.d-original/rc.inet2 rc.d/rc.inet2
 
--- rc.d-original/rc.inet2 2007-09-18 00:07:32.000000000 +0200
 
--- rc.d-original/rc.inet2 2007-09-18 00:07:32.000000000 +0200
+++ rc.d-patched/rc.inet2 2010-12-28 17:37:41.000000000 +0100
+
+++ rc.d/rc.inet2 2011-04-28 19:09:27.000000000 +0200
@@ -15,27 +15,6 @@
+
@@ -16,26 +16,6 @@
+
 
  # At this point, we are ready to talk to The World...
 
  # At this point, we are ready to talk to The World...
 
   
 
   
-
+
 
-# Mount remote (NFS) filesystems:
 
-# Mount remote (NFS) filesystems:
 
-if cat /etc/fstab | grep -v '^#' | grep -w nfs 1> /dev/null 2> /dev/null ; then
 
-if cat /etc/fstab | grep -v '^#' | grep -w nfs 1> /dev/null 2> /dev/null ; then
Line 729: Line 818:
 
  # and rpc.statd.  This might be needed to mount NFS partitions that are not
 
  # and rpc.statd.  This might be needed to mount NFS partitions that are not
 
  # listed in /etc/fstab.  Starting this twice won't hurt as the script will
 
  # listed in /etc/fstab.  Starting this twice won't hurt as the script will
 +
@@ -44,23 +24,6 @@
 +
  sh /etc/rc.d/rc.rpc start
 +
fi
 +
 +
-# Mount remote CIFS filesystems.  Note that where possible, using CIFS is
 +
-# preferred over SMBFS.  SMBFS is no longer actively maintained.
 +
-if cat /etc/fstab | grep -v '^#' | grep -w cifs 1> /dev/null 2> /dev/null ; then
 +
-  echo "Mounting remote CIFS file systems:  /sbin/mount -a -t cifs"
 +
-  /sbin/mount -a -t cifs
 +
-  # Show the mounted volumes:
 +
-  /sbin/mount -v -t cifs
 +
-fi
 +
-
 +
-# Mount remote SMB filesystems:
 +
-if cat /etc/fstab | grep -v '^#' | grep -w smbfs 1> /dev/null 2> /dev/null ; then
 +
-  echo "Mounting remote SMBFS file systems:  /sbin/mount -a -t smbfs"
 +
-  /sbin/mount -a -t smbfs
 +
-  # Show the mounted volumes:
 +
-  /sbin/mount -v -t smbfs
 +
-fi
 +
-
 +
# Start the system logger if it is not already running (maybe because /usr
 +
# is on a network partition).
 +
if [ -x /etc/rc.d/rc.syslog -a -d /var/log -a ! -r /var/run/syslogd.pid ]; then
 +
diff -urNB rc.d-original/rc.syslog rc.d/rc.syslog
 +
--- rc.d-original/rc.syslog 2010-10-21 01:03:54.000000000 +0200
 +
+++ rc.d/rc.syslog 2011-04-28 20:20:26.000000000 +0200
 +
@@ -5,8 +5,9 @@
 +
 +
syslogd_start() {
 +
  if [ -x /usr/sbin/syslogd -a -x /usr/sbin/klogd ]; then
 +
-    echo -n "Starting sysklogd daemons:  "
 +
-    echo -n "/usr/sbin/syslogd "
 +
+#    echo -n "Starting sysklogd daemons:  "
 +
+    echo -n "Starting /usr/sbin/syslogd "
 +
+    echo
 +
    /usr/sbin/syslogd
 +
    # prevent syslogd/klogd race condition on SMP kernels
 +
    if ps acx | grep -q udevd ; then
 +
@@ -16,10 +17,10 @@
 +
    else
 +
      sleep 1
 +
    fi
 +
-    echo "/usr/sbin/klogd -c 3 -x"
 +
+#    echo "/usr/sbin/klogd -c 3 -x"
 +
    # '-c 3' = display level 'error' or higher messages on console
 +
    # '-x' = turn off broken EIP translation
 +
-    /usr/sbin/klogd -c 3 -x
 +
+#    /usr/sbin/klogd -c 3 -x
 +
  fi
 +
}
 
</pre>
 
</pre>
  

Revision as of 23:27, 28 April 2011

What follows was tested on a Slackware 13.37 and 13.1 guest. I assume you have a Linux-Vserver host working.

Contents

Download the patch and the installer script

tar xzf slack_vserver.tar.gz
cd slack_vserver 

ls 
  • PKG_LIST is the package list to be installed in the guest
  • slackware_pkg/ is the folder were the packages (txz) to be installed are stored.
  • download_slack.sh is a script that you can use to download all the PKG_LIST. If you use this scriptlet all the package will be stored in the slackware_pkg sub-folder.
  • make_slack_vserver.sh is the shell script that you have to adjust. It installs the guest.
  • slackware-13.1.patch is the patch which modify rc.6 rc.M and rc.inet2. It must be applyed after the creation of the guest. In the patch I switched off all the mounts and executable that are related to the hardware.
  • rc is the startup script for the virtual server. It will be automatically copied in /etc/rc.d/init.d/rc
# more rc

#!/bin/bash

if [ "$1" == "3" ]; then
  /etc/rc.d/rc.M
elif [ "$1" == "6" ]; then
  /etc/rc.d/rc.6
else
  echo "Invalid level."
  exit 1
fi

Download the slack packages

First of all select a minimal set of packages to be installed on the virtual server. This list of 109 packages is based on the Minimal System reported at http://slackwiki.org/Minimal_System without all hardware, kernel and multimedia related packages. The install leads to a guest of about 448M of size.

I assume that the packages to be installed are stored in the slackware_pkg folder. If not, adjust its location editing the make_slack_vserver.sh script.

You can download my minimal set of packages running the shell script download_slack_pkg.sh

#!/bin/bash
#
# v. 2011.01.07 
# Put here your favourite Slackware repository

SRC="ftp://ftp.slackware.no/slackware/slackware-13.1/slackware/"      # 32-bit
#SRC="ftp://ftp.slackware.no/slackware/slackware64-13.1/slackware64/"  # 64-bit

LIST="../PKG_LIST"

cd slackware_pkg

if [ -f $LIST ]; then
        while read line  
            do  
            wget "$SRC$line*.t?z"
        done < $LIST
else
  echo "Can't find $LIST file."
  exit 1
fi

rm index.html*

Adjust the package PKG_LIST, enter your favorite ftp server and run from the command line

./download_slack_pkg.sh

Make the guest

Now let's create the guest and install the packages. As you know you must choose at least a "name", a "context" and an ip. In addition you have to modify most of the rc.* startup scripts removing all the hardware related daemons, and finally replace the /dev dir.

This is done running the script make_slack_vserver.sh:

#!/bin/bash
#
# v. 2011.04.28
# Author: Roberto Puzzanghera
#
# This script installs a Slackware guest into a linux-vserver host (http://linux-vserver.org)
#
# Comments are welcome :-)
# More info here: http://notes.sagredo.eu/node/7
 
if [ $# != 1 ]; then
  echo "usage: $0 <server-name>"
  exit 1
fi
 
# adjust this to where your things live
NAME=$1
HOSTNAME=$NAME.myserver.net
IP=10.0.0.149
INTERFACE=eth0:$IP/24
CONTEXT=1011
VERSION=13.37 # Slackware version
 
# where is the vservers dir? default is /vservers
VDIR="/vservers"
 
# the directory where you unpacked slack_vserver.tar.gz
# $PWD should work, otherwise put /path/to/slack_vserver
SETUP=$PWD
 
# the directory where you downloaded the slackware packages
PACKAGES="$SETUP/slackware_pkg"
 
# the path to rc script file (leave as is)
RC="$SETUP/rc"
 
################### end configuration
 
# sanity check
 
if [ ! -d "$VDIR" ]; then
        echo
        echo "Can't find VDIR dir: $VDIR"
        echo "Exiting"
        echo
        exit 1 
fi
if [ ! -d "$SETUP" ]; then
        echo  
        echo "Can't find SETUP dir: $SETUP"
        echo "Exiting"
        echo
        exit 1
fi
if [ ! -d "$PACKAGES" ]; then
        echo
        echo "Can't find PACKAGES dir: $PACKAGES"
        echo "Exiting"
        echo
        exit 1
fi
if [ ! -f "$RC" ]; then
        echo
        echo "Can't find RC path: $RC"
        echo "Exiting"
        echo
        exit 1
fi
 
# if everything is ok start the install
 
echo
read -p "press any key to make skeleton..."
vserver ${NAME} build -m skeleton \
        --hostname ${HOSTNAME} \
        --interface ${INTERFACE} \
        --context $CONTEXT \
        --flags lock,virt_mem,virt_uptime,virt_cpu,virt_load,sched_hard,hide_netif \
        --initstyle sysv
echo "...done"
echo
 
read -p "press any key to move the /dev folder to a temp dir the /dev folder..."
mv $VDIR/$NAME/dev $VDIR/$NAME/dev2
 
echo
read -p "press any key to install packages..." 
cd $PACKAGES
installpkg -root $VDIR/$NAME *.t?z; 
echo "...done" 
echo
 
echo
read -p "press any key to copy the rc script to /etc/rc.d/init.d..."
echo
echo "copying rc to /etc/rc.d/init.d/rc"
cp -p $RC $VDIR/$NAME/etc/rc.d/init.d/
echo "...done"
 
echo
echo "removing x flag to rc.inet1 rc.loop and rc.sshd"
chmod -x $VDIR/$NAME/etc/rc.d/rc.inet1 $VDIR/$NAME/etc/rc.d/rc.loop $VDIR/$NAME/etc/rc.d/rc.sshd
echo "...done"
echo
 
echo "trying to adjust HOSTNAME, hosts, resolv.conf, profile. Check later..."
cp /etc/resolv.conf $VDIR/$NAME/etc/
cp /etc/localtime $VDIR/$NAME/etc/
rm $VDIR/$NAME/etc/profile
cp /etc/profile $VDIR/$NAME/etc/
echo $HOSTNAME >  $VDIR/$NAME/etc/HOSTNAME
echo "127.0.0.1 localhost" > $VDIR/$NAME/etc/hosts
echo "$IP $HOSTNAME $NAME" >> $VDIR/$NAME/etc/hosts
touch $VDIR/$NAME/etc/mtab                         
touch $VDIR/$NAME/etc/fstab
echo "...done"
echo
 
read -p "press any key to restore /dev2 to /dev"
rm -r $VDIR/$NAME/dev
mv $VDIR/$NAME/dev2 $VDIR/$NAME/dev
 
echo
echo -n "Do you want that I apply the patch for you y/n? [y] "
read VAR_PATCH
 
if [ "$VAR_PATCH" = 'y' ] || [ "$VAR_PATCH" = '' ]; then
        cd $VDIR/$NAME/etc/rc.d
        patch -p1 < $SETUP/linux-vserver_slackware-$VERSION.patch
        echo "patch applyed."
        echo
        echo "You can start and enter the virtual server typing: "
        echo
        echo "vserver $NAME start"
        echo "vserver $NAME enter"
        else
                echo
                echo "DON'T FORGET to patch /etc/rc.d as follows: "
                echo
                echo "cd $VDIR/$NAME/etc/rc.d"
                echo "patch -p1 < $SETUP/linux-vserver_slackware-$VERSION.patch"
fi
 
echo
echo "More info on http://notes.sagredo.eu/node/7"
echo

Apply the patch and start the guest

The script itsself can install the patch for you. Anyway this is how to apply the patch by yourself:

cd /vservers/vserver_name/etc/rc.d
The script itsself can install the patch for you. Anyway this is how to apply the patch by yourself:patch -p1 < /path/to/slack_vserver/slackware-13.37.patch

Now you can start the newly created virtual server:

vserver <vserver_name> start
vserver <vserver_name> enter

Contact

Any comments/suggestions/questions to roberto dot puzzanghera at sagredo dot eu, [1]

Patch used

Patch for Slackware 13.37 guest on a Linux-Vserver host
========================================================
by Roberto Puzzanghera - http://notes.sagredo.eu
version: 2011.04.28

========================================================

diff -urNB rc.d-original/rc.0 rc.d/rc.0
--- rc.d-original/rc.0	2011-04-16 23:14:14.000000000 +0200
+++ rc.d/rc.0	2011-04-28 15:01:59.000000000 +0200
@@ -37,22 +37,6 @@
 		;;
 esac
 
-# Save the system time to the hardware clock using hwclock --systohc.
-if [ -x /sbin/hwclock ]; then
-  # Check for a broken motherboard RTC clock (where ioports for rtc are
-  # unknown) to prevent hwclock causing a hang:
-  if ! grep -q -w rtc /proc/ioports ; then
-    CLOCK_OPT="--directisa"
-  fi
-  if grep -q "^UTC" /etc/hardwareclock 2> /dev/null ; then
-    echo "Saving system time to the hardware clock (UTC)."
-    /sbin/hwclock $CLOCK_OPT --utc --systohc
-  else
-    echo "Saving system time to the hardware clock (localtime)."
-    /sbin/hwclock  $CLOCK_OPT --localtime --systohc
-  fi
-fi
-
 # Run any local shutdown scripts:
 if [ -x /etc/rc.d/rc.local_shutdown ]; then
   /etc/rc.d/rc.local_shutdown stop
@@ -98,66 +82,11 @@
   sh /etc/rc.d/rc.messagebus stop
 fi
 
-# Kill any processes (typically gam) that would otherwise prevent
-# unmounting NFS volumes:
-unset FUSER_DELAY
-for dir in $(/bin/mount | grep 'type nfs' | cut -d ' ' -f 3 ) ; do
-  echo "Killing processes holding NFS mount $dir open..."
-  # Background this to prevent fuser from also blocking shutdown:
-  /usr/bin/fuser -k -m $dir &
-  FUSER_DELAY=5
-done
-# If fuser was run, let it have some delay:
-if [ ! -z "$FUSER_DELAY" ]; then
-  sleep $FUSER_DELAY
-fi
-
-# Unmount any NFS, SMB, or CIFS filesystems:
-echo "Unmounting remote filesystems."
-/bin/umount -v -a -l -f -r -t nfs,smbfs,cifs
-
-# Try to shut down pppd:
-PS="$(ps ax)"
-if echo "$PS" | /bin/grep -q -w pppd ; then
-  if [ -x /usr/sbin/ppp-off ]; then
-    /usr/sbin/ppp-off
-  fi
-fi
-
-# Bring down the networking system, but first make sure that this
-# isn't a diskless client with the / partition mounted via NFS:
-if ! /bin/mount | /bin/grep -q 'on / type nfs' ; then
-  if [ -x /etc/rc.d/rc.inet1 ]; then
-    . /etc/rc.d/rc.inet1 stop
-  fi
-fi
-
-# In case dhcpcd might have been manually started on the command line,
-# look for the .pid file, and shut dhcpcd down if it's found:
-if /bin/ls /etc/dhcpc/*.pid 1> /dev/null 2> /dev/null ; then
-  /sbin/dhcpcd -k 1> /dev/null 2> /dev/null
-  # A little time for /etc/resolv.conf and/or other files to
-  # restore themselves.
-  sleep 2
-fi
-
-# Shut down PCMCIA devices:
-if [ -x /etc/rc.d/rc.pcmcia ]; then
-  . /etc/rc.d/rc.pcmcia stop
-  # The cards might need a little extra time here to deactivate:
-  /bin/sleep 5
-fi
-
 # Turn off process accounting:
 if [ -x /sbin/accton -a -r /var/log/pacct ]; then
   /sbin/accton off
 fi
 
-# Terminate acpid before syslog:
-if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid ]; then # quit
-  . /etc/rc.d/rc.acpid stop
-fi
-
 # Kill all processes.
 # INIT is supposed to handle this entirely now, but this didn't always
 # work correctly without this second pass at killing off the processes.
@@ -177,16 +106,6 @@
   fi
 fi
 
-# Carry a random seed between reboots.
-echo "Saving random seed from /dev/urandom in /etc/random-seed."
-# Use the pool size from /proc, or 512 bytes:
-if [ -r /proc/sys/kernel/random/poolsize ]; then
-  /bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null
-else
-  /bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
-fi
-/bin/chmod 600 /etc/random-seed
-
 # Before unmounting file systems write a reboot or halt record to wtmp.
 $command -w
 
@@ -195,17 +114,6 @@
   rm -f /var/lock/subsys/*
 fi
 
-# Turn off swap:
-echo "Turning off swap."
-/sbin/swapoff -a
-/bin/sync
-
-echo "Unmounting local file systems."
-/bin/umount -v -a -t no,proc,sysfs
-
-echo "Remounting root filesystem read-only."
-/bin/mount -v -n -o remount,ro /
-
 # This never hurts:
 /bin/sync
 
@@ -230,45 +138,10 @@
   done
 fi
 
-# Deactivate LVM volume groups:
-if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
-  echo "Deactivating LVM volume groups:"
-  /sbin/vgchange -an --ignorelockingfailure
-fi
-
 # This never hurts again (especially since root-on-LVM always fails
 # to deactivate the / logical volume...  but at least it was
 # remounted as read-only first)
 /bin/sync
 
-# sleep 3 fixes problems with some hard drives that don't
-# otherwise finish syncing before reboot or poweroff
-/bin/sleep 3
-
 # This is to ensure all processes have completed on SMP machines:
 wait
-
-if [ -x /sbin/genpowerd ]; then
-  # See if this is a powerfail situation:
-  if /bin/egrep -q "FAIL|SCRAM" /etc/upsstatus 2> /dev/null ; then
-    # Signal UPS to shut off the inverter:
-    /sbin/genpowerd -k
-    if [ ! $? = 0 ]; then
-      echo
-      echo "There was an error signaling the UPS."
-      echo "Perhaps you need to edit /etc/genpowerd.conf to configure"
-      echo "the serial line and UPS type."
-      # Wasting 15 seconds of precious power:
-      /bin/sleep 15
-    fi
-  fi
-fi
-
-# Now halt (poweroff with APM or ACPI enabled kernels) or reboot.
-if [ "$command" = "reboot" ]; then
-  echo "Rebooting."
-  /sbin/reboot
-else
-  /sbin/poweroff
-fi
-
diff -urNB rc.d-original/rc.6 rc.d/rc.6
--- rc.d-original/rc.6	2011-04-16 23:14:14.000000000 +0200
+++ rc.d/rc.6	2011-04-28 15:01:59.000000000 +0200
@@ -37,22 +37,6 @@
 		;;
 esac
 
-# Save the system time to the hardware clock using hwclock --systohc.
-if [ -x /sbin/hwclock ]; then
-  # Check for a broken motherboard RTC clock (where ioports for rtc are
-  # unknown) to prevent hwclock causing a hang:
-  if ! grep -q -w rtc /proc/ioports ; then
-    CLOCK_OPT="--directisa"
-  fi
-  if grep -q "^UTC" /etc/hardwareclock 2> /dev/null ; then
-    echo "Saving system time to the hardware clock (UTC)."
-    /sbin/hwclock $CLOCK_OPT --utc --systohc
-  else
-    echo "Saving system time to the hardware clock (localtime)."
-    /sbin/hwclock  $CLOCK_OPT --localtime --systohc
-  fi
-fi
-
 # Run any local shutdown scripts:
 if [ -x /etc/rc.d/rc.local_shutdown ]; then
   /etc/rc.d/rc.local_shutdown stop
@@ -98,66 +82,11 @@
   sh /etc/rc.d/rc.messagebus stop
 fi
 
-# Kill any processes (typically gam) that would otherwise prevent
-# unmounting NFS volumes:
-unset FUSER_DELAY
-for dir in $(/bin/mount | grep 'type nfs' | cut -d ' ' -f 3 ) ; do
-  echo "Killing processes holding NFS mount $dir open..."
-  # Background this to prevent fuser from also blocking shutdown:
-  /usr/bin/fuser -k -m $dir &
-  FUSER_DELAY=5
-done
-# If fuser was run, let it have some delay:
-if [ ! -z "$FUSER_DELAY" ]; then
-  sleep $FUSER_DELAY
-fi
-
-# Unmount any NFS, SMB, or CIFS filesystems:
-echo "Unmounting remote filesystems."
-/bin/umount -v -a -l -f -r -t nfs,smbfs,cifs
-
-# Try to shut down pppd:
-PS="$(ps ax)"
-if echo "$PS" | /bin/grep -q -w pppd ; then
-  if [ -x /usr/sbin/ppp-off ]; then
-    /usr/sbin/ppp-off
-  fi
-fi
-
-# Bring down the networking system, but first make sure that this
-# isn't a diskless client with the / partition mounted via NFS:
-if ! /bin/mount | /bin/grep -q 'on / type nfs' ; then
-  if [ -x /etc/rc.d/rc.inet1 ]; then
-    . /etc/rc.d/rc.inet1 stop
-  fi
-fi
-
-# In case dhcpcd might have been manually started on the command line,
-# look for the .pid file, and shut dhcpcd down if it's found:
-if /bin/ls /etc/dhcpc/*.pid 1> /dev/null 2> /dev/null ; then
-  /sbin/dhcpcd -k 1> /dev/null 2> /dev/null
-  # A little time for /etc/resolv.conf and/or other files to
-  # restore themselves.
-  sleep 2
-fi
-
-# Shut down PCMCIA devices:
-if [ -x /etc/rc.d/rc.pcmcia ]; then
-  . /etc/rc.d/rc.pcmcia stop
-  # The cards might need a little extra time here to deactivate:
-  /bin/sleep 5
-fi
-
 # Turn off process accounting:
 if [ -x /sbin/accton -a -r /var/log/pacct ]; then
   /sbin/accton off
 fi
 
-# Terminate acpid before syslog:
-if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid ]; then # quit
-  . /etc/rc.d/rc.acpid stop
-fi
-
 # Kill all processes.
 # INIT is supposed to handle this entirely now, but this didn't always
 # work correctly without this second pass at killing off the processes.
@@ -177,16 +106,6 @@
   fi
 fi
 
-# Carry a random seed between reboots.
-echo "Saving random seed from /dev/urandom in /etc/random-seed."
-# Use the pool size from /proc, or 512 bytes:
-if [ -r /proc/sys/kernel/random/poolsize ]; then
-  /bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null
-else
-  /bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
-fi
-/bin/chmod 600 /etc/random-seed
-
 # Before unmounting file systems write a reboot or halt record to wtmp.
 $command -w
 
@@ -195,17 +114,6 @@
   rm -f /var/lock/subsys/*
 fi
 
-# Turn off swap:
-echo "Turning off swap."
-/sbin/swapoff -a
-/bin/sync
-
-echo "Unmounting local file systems."
-/bin/umount -v -a -t no,proc,sysfs
-
-echo "Remounting root filesystem read-only."
-/bin/mount -v -n -o remount,ro /
-
 # This never hurts:
 /bin/sync
 
@@ -230,45 +138,10 @@
   done
 fi
 
-# Deactivate LVM volume groups:
-if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
-  echo "Deactivating LVM volume groups:"
-  /sbin/vgchange -an --ignorelockingfailure
-fi
-
 # This never hurts again (especially since root-on-LVM always fails
 # to deactivate the / logical volume...  but at least it was
 # remounted as read-only first)
 /bin/sync
 
-# sleep 3 fixes problems with some hard drives that don't
-# otherwise finish syncing before reboot or poweroff
-/bin/sleep 3
-
 # This is to ensure all processes have completed on SMP machines:
 wait
-
-if [ -x /sbin/genpowerd ]; then
-  # See if this is a powerfail situation:
-  if /bin/egrep -q "FAIL|SCRAM" /etc/upsstatus 2> /dev/null ; then
-    # Signal UPS to shut off the inverter:
-    /sbin/genpowerd -k
-    if [ ! $? = 0 ]; then
-      echo
-      echo "There was an error signaling the UPS."
-      echo "Perhaps you need to edit /etc/genpowerd.conf to configure"
-      echo "the serial line and UPS type."
-      # Wasting 15 seconds of precious power:
-      /bin/sleep 15
-    fi
-  fi
-fi
-
-# Now halt (poweroff with APM or ACPI enabled kernels) or reboot.
-if [ "$command" = "reboot" ]; then
-  echo "Rebooting."
-  /sbin/reboot
-else
-  /sbin/poweroff
-fi
-
diff -urNB rc.d-original/rc.M rc.d/rc.M
--- rc.d-original/rc.M	2011-03-22 07:15:15.000000000 +0100
+++ rc.d/rc.M	2011-04-28 19:07:47.000000000 +0200
@@ -20,10 +20,6 @@
   /sbin/ldconfig &
 fi
 
-# Screen blanks after 15 minutes idle time, and powers down in one hour
-# if the kernel supports APM or ACPI power management:
-/bin/setterm -blank 15 -powersave powerdown -powerdown 60
-
 # Set the hostname.
 if [ -r /etc/HOSTNAME ]; then
   /bin/hostname $(cat /etc/HOSTNAME | cut -f1 -d .)
@@ -47,31 +43,6 @@
 # Save the contents of 'dmesg':
 /bin/dmesg -s 65536 > /var/log/dmesg
 
-# Initialize PCMCIA devices:
-#
-# NOTE: This used to be started near the top of rc.S so that PCMCIA devices
-# could be fsck'ed along with the other drives.  This had some unfortunate
-# side effects, however, since root isn't yet read-write, and /var might not
-# even be mounted the .pid files can't be correctly written in /var/run and
-# the pcmcia system can't be correctly shut down.  If you want some PCMCIA
-# partition to be mounted at boot (or when the card is inserted) then add
-# the appropriate lines to /etc/pcmcia/scsi.opts.
-#
-# Note that the stuff in /etc/pcmcia/ is only for 2.4.x kernels using
-# 16-bit PCMCIA cards (not 32-bit Cardbus cards!).  For example, with a
-# wireless card you might need to set options in /etc/pcmcia OR in
-# /etc/rc.d/rc.wireless.conf, or even in /etc/rc.d/rc.inet1.conf (with
-# extra options if needed for the encryption key, ESSID, etc.)
-#
-# Hopefully this situation will be unified in the future, but for now
-# that's how it is...
-#
-if [ -x /etc/rc.d/rc.pcmcia ]; then
-  . /etc/rc.d/rc.pcmcia start
-  # The cards might need a little extra time here to initialize.
-  sleep 5
-fi
-
 # Start the system logger.
 if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then
   . /etc/rc.d/rc.syslog start
@@ -83,38 +54,18 @@
   /usr/bin/fc-cache -f &
 fi
 
-# If we are returning from single-user mode we will need to restart
-# udevd on systems that use udev:
-if grep -wq sysfs /proc/mounts && grep -q tmpfs /proc/filesystems ; then
-  if ! grep -wq nohotplug /proc/cmdline ; then
-    if [ -x /etc/rc.d/rc.udev ]; then
-      /bin/sh /etc/rc.d/rc.udev start
-    fi
-  fi
-fi
-
-# Initialize the networking hardware.
-if [ -x /etc/rc.d/rc.inet1 ]; then
-  . /etc/rc.d/rc.inet1
-fi
-
-# Look for additional USB/SCSI/IEEE1394/etc devices on multiple LUNs:
-if [ -x /etc/rc.d/rc.scanluns ]; then
-  . /etc/rc.d/rc.scanluns
-fi
-
 # Start networking daemons:
 if [ -x /etc/rc.d/rc.inet2 ]; then
   . /etc/rc.d/rc.inet2
 fi
 
 # Mount any additional filesystem types that haven't already been mounted:
-mount -a -v 2> /dev/null | grep -v "already mounted"
+#mount -a -v 2> /dev/null | grep -v "already mounted"
 
 # Start the Control Script for automounter:
-if [ -x /etc/rc.d/rc.autofs ]; then
-  sh /etc/rc.d/rc.autofs start
-fi
+#if [ -x /etc/rc.d/rc.autofs ]; then
+#  sh /etc/rc.d/rc.autofs start
+#fi
 
 # Start the Network Time Protocol daemon:
 if [ -x /etc/rc.d/rc.ntpd ]; then
@@ -134,17 +85,6 @@
 chmod 755 / 2> /dev/null
 chmod 1777 /tmp /var/tmp
 
-# Start APM or ACPI daemon.
-# If APM is enabled in the kernel, start apmd:
-if [ -e /proc/apm ]; then
-  if [ -x /usr/sbin/apmd ]; then
-    echo "Starting APM daemon:  /usr/sbin/apmd"
-    /usr/sbin/apmd
-  fi
-elif [ -x /etc/rc.d/rc.acpid ]; then # otherwise, start acpid:
-  . /etc/rc.d/rc.acpid start
-fi
-
 # Update any existing icon cache files:
 if find /usr/share/icons 2> /dev/null | grep -q icon-theme.cache ; then
   for theme_dir in /usr/share/icons/* ; do
@@ -177,21 +117,6 @@
   sh /etc/rc.d/rc.consolekit start
 fi
 
-# Start HAL:
-if [ -x /etc/rc.d/rc.hald ]; then
-  sh /etc/rc.d/rc.hald start
-fi
-
-# Start Bluetooth:
-if [ -x /etc/rc.d/rc.bluetooth ]; then
-  sh /etc/rc.d/rc.bluetooth start
-fi
-
-# Start wicd:
-if [ -x /etc/rc.d/rc.wicd ]; then
-  sh /etc/rc.d/rc.wicd start
-fi
-
 # These GTK+/pango files need to be kept up to date for
 # proper input method, pixbuf loaders, and font support.
 if [ -x /usr/bin/update-gtk-immodules ]; then
@@ -228,36 +153,6 @@
   /etc/rc.d/rc.atalk
 fi
 
-# Start smartd, which monitors the status of S.M.A.R.T. compatible
-# hard drives and reports any problems.  Note some devices (which aren't
-# smart, I guess ;) will hang if probed by smartd, so it's commented out
-# by default.
-#if [ -x /usr/sbin/smartd ]; then
-#  /usr/sbin/smartd
-#fi
-
-# If we're using udev, make /dev/cdrom and any other optical drive symlinks
-# if some udev rule hasn't made them already:
-if grep -wq sysfs /proc/mounts && grep -q tmpfs /proc/filesystems; then
-  if ! grep -wq nohotplug /proc/cmdline ; then
-    if [ -x /lib/udev/rc.optical-symlinks -a -x /etc/rc.d/rc.udev ]; then
-      /bin/sh /lib/udev/rc.optical-symlinks
-    fi
-  fi
-fi
-
-# Monitor the UPS with genpowerd.
-# To use this, uncomment this section and edit your settings in
-# /etc/genpowerd.conf (serial device, UPS type, etc).  For more information,
-# see "man genpowerd" or the extensive documentation in the
-# /usr/doc/genpower-*/ directory.
-# You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want
-# support for stopping the UPS's inverter after the machine halts.
-#if [ -x /sbin/genpowerd ]; then
-#  echo "Starting genpowerd daemon..."
-#  /sbin/genpowerd
-#fi
-
 # Turn on process accounting.  To enable process accounting, make sure the
 # option for BSD process accounting is enabled in your kernel, and then
 # create the file /var/log/pacct (touch /var/log/pacct).  By default, process
@@ -322,11 +217,6 @@
   . /etc/rc.d/rc.sendmail start
 fi
 
-# Load ALSA (sound) defaults:
-if [ -x /etc/rc.d/rc.alsa ]; then
-  . /etc/rc.d/rc.alsa
-fi
-
 # Load a custom screen font if the user has an rc.font script.
 if [ -x /etc/rc.d/rc.font ]; then
   . /etc/rc.d/rc.font
@@ -358,11 +248,6 @@
   . /etc/rc.d/rc.samba start
 fi
 
-# Start the GPM mouse server:
-if [ -x /etc/rc.d/rc.gpm ]; then
-  . /etc/rc.d/rc.gpm start
-fi
-
 # If there are SystemV init scripts for this runlevel, run them.
 if [ -x /etc/rc.d/rc.sysvinit ]; then
   . /etc/rc.d/rc.sysvinit
diff -urNB rc.d-original/rc.inet2 rc.d/rc.inet2
--- rc.d-original/rc.inet2	2007-09-18 00:07:32.000000000 +0200
+++ rc.d/rc.inet2	2011-04-28 19:09:27.000000000 +0200
@@ -16,26 +16,6 @@
 # At this point, we are ready to talk to The World...
 
 
-# Mount remote (NFS) filesystems:
-if cat /etc/fstab | grep -v '^#' | grep -w nfs 1> /dev/null 2> /dev/null ; then
-  # Start rpc.portmap, /sbin/rpc.lockd, and /sbin/rpc.statd if we find NFS
-  # volumes defined in /etc/fstab since these will need to be running in order
-  # to mount them.  If they are not running, attempting to mount an NFS
-  # partition will cause mount to hang, or at least result in unreliable
-  # operation.  Keep this in mind if you plan to mount unlisted NFS
-  # partitions... 
-  # If you have uncommented NFS partitions in your /etc/fstab, rc.rpc is run
-  # whether it is set as executable or not.  If you don't want to run it,
-  # comment the NFS partitions out in /etc/fstab or erase/rename rc.rpc.
-  if [ -r /etc/rc.d/rc.rpc ]; then
-    sh /etc/rc.d/rc.rpc start
-  fi
-  echo "Mounting remote (NFS) file systems:  /sbin/mount -a -t nfs"
-  /sbin/mount -a -t nfs          # This may be our /usr runtime!
-  # Show the mounted volumes:
-  /sbin/mount -v -t nfs
-fi
-
 # If /etc/rc.d/rc.rpc is executable, run it to load rpc.portmap, rpc.lockd,
 # and rpc.statd.  This might be needed to mount NFS partitions that are not
 # listed in /etc/fstab.  Starting this twice won't hurt as the script will
@@ -44,23 +24,6 @@
   sh /etc/rc.d/rc.rpc start
 fi
 
-# Mount remote CIFS filesystems.  Note that where possible, using CIFS is
-# preferred over SMBFS.  SMBFS is no longer actively maintained.
-if cat /etc/fstab | grep -v '^#' | grep -w cifs 1> /dev/null 2> /dev/null ; then
-  echo "Mounting remote CIFS file systems:  /sbin/mount -a -t cifs"
-  /sbin/mount -a -t cifs
-  # Show the mounted volumes:
-  /sbin/mount -v -t cifs
-fi
-
-# Mount remote SMB filesystems:
-if cat /etc/fstab | grep -v '^#' | grep -w smbfs 1> /dev/null 2> /dev/null ; then
-  echo "Mounting remote SMBFS file systems:  /sbin/mount -a -t smbfs"
-  /sbin/mount -a -t smbfs
-  # Show the mounted volumes:
-  /sbin/mount -v -t smbfs
-fi
-
 # Start the system logger if it is not already running (maybe because /usr
 # is on a network partition).
 if [ -x /etc/rc.d/rc.syslog -a -d /var/log -a ! -r /var/run/syslogd.pid ]; then
diff -urNB rc.d-original/rc.syslog rc.d/rc.syslog
--- rc.d-original/rc.syslog	2010-10-21 01:03:54.000000000 +0200
+++ rc.d/rc.syslog	2011-04-28 20:20:26.000000000 +0200
@@ -5,8 +5,9 @@
 
 syslogd_start() {
   if [ -x /usr/sbin/syslogd -a -x /usr/sbin/klogd ]; then
-    echo -n "Starting sysklogd daemons:  "
-    echo -n "/usr/sbin/syslogd "
+#    echo -n "Starting sysklogd daemons:  "
+    echo -n "Starting /usr/sbin/syslogd "
+    echo
     /usr/sbin/syslogd
     # prevent syslogd/klogd race condition on SMP kernels
     if ps acx | grep -q udevd ; then
@@ -16,10 +17,10 @@
     else
       sleep 1
     fi
-    echo "/usr/sbin/klogd -c 3 -x"
+#    echo "/usr/sbin/klogd -c 3 -x"
     # '-c 3' = display level 'error' or higher messages on console
     # '-x' = turn off broken EIP translation
-    /usr/sbin/klogd -c 3 -x
+#    /usr/sbin/klogd -c 3 -x
   fi
 }

Slackware package list

Here is the content of the file PKG_LIST

# v. 2011.01.07
# some commented pkg to avoid duplicates (man will download both man and man-pages)

#[A]
a/aaa_base
a/aaa_elflibs
a/aaa_terminfo
a/acl
a/attr
a/bash
a/bin
a/bzip2
a/coreutils
a/cpio
a/cxxlibs
a/dcron
a/dialog
a/etc
a/file
a/findutils
a/gawk
a/gettext
a/glibc-solibs
a/glibc-zoneinfo
a/grep
a/gzip
a/infozip
a/kbd
a/less
a/logrotate
a/openssl-solibs
a/patch
a/pkgtools
a/procps
a/quota
a/sed
a/shadow
a/slocate
a/sysklogd
a/sysvinit
# a/sysvinit-functions
# a/sysvinit-scripts
a/tar
a/time
a/tree
a/utempter
a/util-linux
a/xz
a/which

#[AP]
ap/at
ap/diffutils
ap/groff
ap/lsof
ap/man
# ap/man-pages
ap/most
ap/nano
ap/sudo
ap/vim
 
#[D]
d/autoconf
d/automake
d/binutils
d/bison
d/flex
d/gcc-4
d/gcc-g++
d/gettext-tools
d/kernel-headers
d/libtool
d/m4
d/make
d/perl
d/pkg-config
 
#[L]
l/apr
l/db42
l/db44
l/freetype
l/gd-
l/gdbm
l/glibc
# l/glibc-i18n
l/libjpeg
l/libmcrypt
l/libpng
l/lzo
l/mpfr
l/ncurses
l/pcre
l/popt
l/readline
l/v4l-utils
l/libxslt
l/t1lib
l/zlib
 
#[N]
n/cyrus-sasl
n/inetd
n/iproute2
n/iputils
n/libgcrypt
n/mtr
n/net-tools
n/netwatch
n/network-scripts
n/ntp
n/openssh
n/openssl
n/tcp_wrappers
n/telnet
n/traceroute
n/wget
Personal tools