summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/base-files/Makefile2
-rwxr-xr-xpackage/base-files/files/etc/init.d/fstab12
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() {