aboutsummaryrefslogtreecommitdiffstats
path: root/package/system/utils/e2fsprogs/files/e2fsck.sh
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2013-01-29 10:48:46 +0000
committerFelix Fietkau <nbd@openwrt.org>2013-01-29 10:48:46 +0000
commit483dfb483e12e660267721a99bf97c572cb72795 (patch)
tree84490c282740e3c0c90ae98baf5d0091b25049cd /package/system/utils/e2fsprogs/files/e2fsck.sh
parentab1287beadc3396709bef189459bb5a3059bb6be (diff)
downloadupstream-483dfb483e12e660267721a99bf97c572cb72795.tar.gz
upstream-483dfb483e12e660267721a99bf97c572cb72795.tar.bz2
upstream-483dfb483e12e660267721a99bf97c572cb72795.zip
move a few packages to system/utils
SVN-Revision: 35375
Diffstat (limited to 'package/system/utils/e2fsprogs/files/e2fsck.sh')
-rw-r--r--package/system/utils/e2fsprogs/files/e2fsck.sh38
1 files changed, 38 insertions, 0 deletions
diff --git a/package/system/utils/e2fsprogs/files/e2fsck.sh b/package/system/utils/e2fsprogs/files/e2fsck.sh
new file mode 100644
index 0000000000..22031edb67
--- /dev/null
+++ b/package/system/utils/e2fsprogs/files/e2fsck.sh
@@ -0,0 +1,38 @@
+#!/bin/sh
+# Copyright 2010 Vertical Communications
+# Copyright 2012 OpenWrt.org
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+fsck_e2fsck() {
+ set -o pipefail
+ e2fsck -p "$device" 2>&1 | logger -t "fstab: e2fsck ($device)"
+ local status="$?"
+ set +o pipefail
+ case "$status" in
+ 0|1) ;; #success
+ 2) reboot;;
+ 4) echo "e2fsck ($device): Warning! Uncorrected errors."| logger -t fstab
+ return 1
+ ;;
+ *) echo "e2fsck ($device): Error $status. Check not complete."| logger -t fstab;;
+ esac
+ return 0
+}
+
+fsck_ext2() {
+ fsck_e2fsck "$@"
+}
+
+fsck_ext3() {
+ fsck_e2fsck "$@"
+}
+
+fsck_ext4() {
+ fsck_e2fsck "$@"
+}
+
+append libmount_known_fsck "ext2"
+append libmount_known_fsck "ext3"
+append libmount_known_fsck "ext4"