[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[PATCH 5/7] initscripts: Only run rootcheck on Linux



Neither kFreeBSD nor Hurd have /dev/root and the device ids used here
are specific to Linux. Note that fsck is still run, rootcheck refers
to the check whether the root device in /etc/fstab matches the actual
device.
---
 debian/changelog                               |    2 ++
 debian/src/initscripts/etc/init.d/checkroot.sh |    6 +++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/debian/changelog b/debian/changelog
index 743e77e..ce16030 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -58,6 +58,8 @@ sysvinit (2.88dsf-42) UNRELEASED; urgency=low
   * debian/control: Depend on a recent hurd package on hurd-any. The
     initscripts require some functionality that has been implemented
     only recently.
+  * checkroot.sh: Only run rootcheck on Linux. Neither kFreeBSD nor Hurd
+    have /dev/root and the device ids used here are specific to Linux.
 
  -- Roger Leigh <rleigh@debian.org>  Sat, 04 May 2013 13:13:51 +0100
 
diff --git a/debian/src/initscripts/etc/init.d/checkroot.sh b/debian/src/initscripts/etc/init.d/checkroot.sh
index 3bf506b..4f00eb2 100755
--- a/debian/src/initscripts/etc/init.d/checkroot.sh
+++ b/debian/src/initscripts/etc/init.d/checkroot.sh
@@ -84,7 +84,11 @@ do_start () {
 	# If not we try to use the /dev/root alias device, and if that
 	# fails we create a temporary node in /run.
 	#
-	if [ "$rootcheck" = yes ]
+	# Do this only on Linux. Neither kFreeBSD nor Hurd have
+	# /dev/root and the device ids used here are specific to
+	# Linux.
+	KERNEL="$(uname)"
+	if [ "$rootcheck" = yes ] && [ "$KERNEL" = Linux ]
 	then
 		ddev="$(mountpoint -qx $rootdev)"
 		rdev="$(mountpoint -d /)"
-- 
1.7.10.4


Reply to: