diff options
-rw-r--r-- | package/base-files/Makefile | 2 | ||||
-rwxr-xr-x | package/base-files/files/etc/init.d/fstab | 12 |
2 files changed, 8 insertions, 6 deletions
diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 7fbeb6f33..b80fee3ff 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 2d2976ffc..f661b9d15 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() { |