Author: glen
Date: Sun Feb 26 12:15:32 2006
New Revision: 7021

Modified:
   initng/trunk/system/mountroot.i
Log:
- updates from rc-scripts

Modified: initng/trunk/system/mountroot.i
==============================================================================
--- initng/trunk/system/mountroot.i     (original)
+++ initng/trunk/system/mountroot.i     Sun Feb 26 12:15:32 2006
@@ -10,11 +10,9 @@
                # And sysconfig
                if [ -r /etc/sysconfig/system ]; then
                        . /etc/sysconfig/system
-               else
-                       VSERVER=no
                fi
 
-               if [ "$VSERVER" = "yes" ]; then
+               if is_yes "$VSERVER"; then
                        exit 0
                fi
 
@@ -31,13 +29,18 @@
                fi
 
                if [ -f /forcefsck ]; then
-                               fsckoptions="-f $fsckoptions"
+                       fsckoptions="-f $fsckoptions"
+               else
+                       # Obey the fs_passno setting for / (see fstab(5))
+                       # - find the / entry
+                       # - make sure we have 6 fields
+                       _ROOTFS_PASSNO=$(awk '($1 ~ /^(\/|UUID|LABEL)/ && $2 == 
"/" && NF == 6) { print $6}' /etc/fstab)
                fi
 
                _RUN_QUOTACHECK=0
                _ROOTFS_TYPE=$(grep " / " /proc/mounts | awk '{ print $3 }')
 
-               if [ -z "$fastboot" -a "$_ROOTFS_TYPE" != "nfs" -a 
"$_ROOTFS_TYPE" != "romfs" ]; then 
+               if [ -z "$fastboot" -a "$_ROOTFS_TYPE" != "nfs" -a 
"$_ROOTFS_TYPE" != "romfs" -a "$_ROOTFS_PASSNO" != 0 ]; then
                        show "Checking root filesystem"; started
                        initlog -c "fsck -C -T -a $fsckoptions /"
 
@@ -86,7 +89,7 @@
                # Unmount the initrd, if necessary
                if LC_ALL=C grep -q /initrd /proc/mounts && ! LC_ALL=C grep -q 
/initrd/loopfs /proc/mounts ; then
                        if [ -e /initrd/dev/.devfsd ]; then
-                       umount /initrd/dev
+                               umount /initrd/dev
                        fi
                        umount /initrd
                        /sbin/blockdev --flushbufs /dev/ram0 >/dev/null 2>&1
@@ -141,12 +144,19 @@
                [ -f /proc/bus/usb/devices ] && mount -f -t usbfs usbfs 
/proc/bus/usb
                [ -e /dev/.devfsd ] && mount -f -t devfs devfs /dev
 
-               if grep -q sysfs /proc/filesystems ; then
+               if grep -q sysfs /proc/mounts 2>/dev/null; then
                        mount -f -t sysfs sysfs /sys
+                       if grep -q securityfs /proc/mounts 2>/dev/null ; then
+                                       mount -f -t securityfs securityfs 
/sys/kernel/security
+                       fi
+               fi
+
+               if grep -q selinuxfs /proc/mounts 2>/dev/null; then
+                       mount -f -t selinuxfs selinuxfs /selinux
                fi
 
-               if grep -q selinuxfs /proc/filesystems ; then
-                               mount -f -t selinuxfs selinuxfs /selinux
+               if grep -q cpuset /proc/mounts 2>/dev/null; then
+                       mount -f -t cpuset none /dev/cpuset
                fi
 
 # FIXME: should be elsewhere
_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to