[arch-projects] [INITSCRIPTS][PATCH 2/2] fix /forcefsck logic with initcpio fsck hook

Sébastien Luttringer seblu at seblu.net
Sat May 19 23:21:28 EDT 2012


Currently, using "shutdown -F -r now" with fsck initcpio hook doesn't make a
full fsck on reboot.

Initscripts hook check if /run/initramfs/root-fsck is present to add -M option
to fsck which disable check of mounted filesystem. Initcpio doesn't check
/forcefsck file and create root-fsck file with a simple fsck check.

Signed-off-by: Sébastien Luttringer <seblu at seblu.net>
---
 functions |   10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/functions b/functions
index 7516345..b9bfffc 100644
--- a/functions
+++ b/functions
@@ -494,13 +494,11 @@ NETFS="nfs,nfs4,smbfs,cifs,codafs,ncpfs,shfs,fuse,fuseblk,glusterfs,davfs,fuse.g
 
 # Check local filesystems
 fsck_all() {
-	[[ -f /forcefsck ]] || in_array forcefsck $(< /proc/cmdline) && FORCEFSCK="-f"
-
-	if [[ ! -n $FORCEFSCK ]] && { [[ -f /fastboot ]] || in_array fastboot $(< /proc/cmdline); }; then
+	if [[ -f /forcefsck ]] || in_array forcefsck $(< /proc/cmdline); then
+		FORCEFSCK="-f"
+	elif [[ -f /fastboot ]] || in_array fastboot $(< /proc/cmdline); then
 		return 0
-	fi
-
-	if [[ -e /run/initramfs/root-fsck ]]; then
+	elif [[ -e /run/initramfs/root-fsck ]]; then
 		IGNORE_MOUNTED="-M"
 	fi
 
-- 
Sebastien "Seblu" Luttringer



More information about the arch-projects mailing list