From: Matteo Croce Date: Tue, 20 May 2008 19:02:19 +0000 (+0000) Subject: create /etc/fstab on boot (closes #3458) X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=ac8bf03f8eaa2b784777d932ef829917c406fd17;p=openwrt%2Fstaging%2Fnbd.git create /etc/fstab on boot (closes #3458) SVN-Revision: 11225 --- diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 7fbeb6f330..b80fee3ff7 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -161,7 +161,7 @@ define Package/base-files$(TARGET)/install rm -f $(1)/var ln -sf /tmp $(1)/var mkdir -p $(1)/etc - ln -sf /tmp/resolv.conf $(1)/etc/resolv.conf + ln -sf /tmp/resolv.conf /tmp/fstab $(1)/etc/ $(call Package/base-files/install-target,$(1)) for conffile in $(1)/etc/config/*; do \ if [ -f "$$$$conffile" ]; then \ diff --git a/package/base-files/files/etc/init.d/fstab b/package/base-files/files/etc/init.d/fstab index 2d2976ffcb..f661b9d15f 100755 --- a/package/base-files/files/etc/init.d/fstab +++ b/package/base-files/files/etc/init.d/fstab @@ -15,9 +15,8 @@ do_mount() { [ -n "target" ] || return 0 mkdir -p $target config_get_bool enabled "$cfg" "enabled" '1' - [ "$enabled" -gt 0 ] && { - mount -t $fstype -o $options $device $target - } + [ "$enabled" -eq 0 ] && options="noauto,$options" + echo "$device $target $fstype $options 0 0" >> /tmp/fstab } do_swapon() { @@ -25,8 +24,8 @@ do_swapon() { config_get device "$cfg" device [ -n "device" ] || return 0 config_get_bool enabled "$cfg" "enabled" '1' - [ "$enabled" -gt 0 ] && type swapon >/dev/null && { - swapon $device + [ "$enabled" -gt 0 ] && { + echo "$device none swap ${noauto}sw 0 0" >> /tmp/fstab } } @@ -52,8 +51,11 @@ do_swapoff() { start() { config_load fstab + echo '# WARNING: this is an auto generated file, please use uci to set static filesystems' > /tmp/fstab config_foreach do_mount mount config_foreach do_swapon swap + mount -a + swapon -a } stop() {