summaryrefslogtreecommitdiff
path: root/scripts/live-bottom/12fstab
diff options
context:
space:
mode:
authorDaniel Baumann <daniel@debian.org>2009-04-09 09:43:43 +0200
committerDaniel Baumann <daniel@debian.org>2011-03-09 17:48:04 +0100
commit836bfeaa36798b065260ca0b4ecd195f5650ca66 (patch)
treec53e0ae68a9039908cec9a248b526aaf6a5a4be8 /scripts/live-bottom/12fstab
parent3cd34c818ca9695d0b5a8bab80c0ef08544acfbf (diff)
downloadlive-boot-836bfeaa36798b065260ca0b4ecd195f5650ca66.tar.gz
live-boot-836bfeaa36798b065260ca0b4ecd195f5650ca66.zip
Merging swap live-bottom script into fstab script; there is no other sane possibility to prevent appending again and again in persistent mode.
Diffstat (limited to 'scripts/live-bottom/12fstab')
-rwxr-xr-xscripts/live-bottom/12fstab31
1 files changed, 31 insertions, 0 deletions
diff --git a/scripts/live-bottom/12fstab b/scripts/live-bottom/12fstab
index d246a59..be78e77 100755
--- a/scripts/live-bottom/12fstab
+++ b/scripts/live-bottom/12fstab
@@ -55,6 +55,37 @@ then
echo "tmpfs /tmp tmpfs nosuid,nodev 0 0" >> "${FSTAB}"
fi
+if [ -z "${NOSWAP}" ]
+then
+ devices=""
+
+ for device in /dev/[hs]d[a-z][0-9]*
+ do
+ if ! [ -b "${device}" ]
+ then
+ continue
+ fi
+
+ /lib/udev/vol_id ${device%%[0-9]*} 2>/dev/null | grep -q "^ID_FS_USAGE=raid" && continue
+
+ magic=$(/bin/dd if="${device}" bs=4086 skip=1 count=1 2>/dev/null | /bin/dd bs=10 count=1 2>/dev/null) || continue
+
+ if [ "${magic}" = "SWAPSPACE2" -o "${magic}" = "SWAP-SPACE" ]
+ then
+ #log "Found ${device}"
+ devices="${devices} ${device}"
+ fi
+ done
+
+ for device in ${devices}
+ do
+ if ! grep -qs "^${device} swap" "${FSTAB}"
+ then
+ echo "${device} swap swap defaults 0 0" >> "${FSTAB}"
+ fi
+ done
+fi
+
# disabled for now
#rm -f /root/etc/rcS.d/S*checkroot.sh