X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Fboot%2F3020-swapon;h=3df90de0e869b147ca303e6e3e438d2afd2bf4a0;hb=659360c19ad0a28a430545149fc2c4f834d11007;hp=281fd041f38c46afd78307fd91fed375de9569ab;hpb=3b0def1c54e6cd384d1514b26fbf28b091638808;p=live-boot-grml.git diff --git a/scripts/boot/3020-swapon b/scripts/boot/3020-swapon index 281fd04..3df90de 100755 --- a/scripts/boot/3020-swapon +++ b/scripts/boot/3020-swapon @@ -2,25 +2,34 @@ #set -e -Swapon () +Swap () { - if [ "${LIVE_SWAPON}" != "true" ] - then - return 0 - fi + for _PARAMETER in ${_CMDLINE} + do + case "${_PARAMETER}" in + live-boot.swap=*|swap=*) + LIVE_SWAP="true" + LIVE_SWAP_DEVICES="${_PARAMETER#*swap=}" + ;; - LIVE_SWAPON_DEVICES="${LIVE_SWAPON_DEVICES:-/dev/sd* /dev/vd*}" + live-boot.swap|swap) + LIVE_SWAP="true" + ;; + esac + done - if [ -e /run ] - then - # wheezy - _FSTAB="/root/etc/fstab.d/swap" - else - # squeeze - _FSTAB="/root/etc/fstab" - fi + case "${LIVE_SWAP}" in + true) + ;; + + *) + return 0 + ;; + esac + + LIVE_SWAP_DEVICES="${LIVE_SWAP_DEVICES:-/dev/sd* /dev/vd*}" - for _DEVICE in $(echo ${LIVE_SWAPON_DEVICES} | sed -e 's|,| |g') + for _DEVICE in $(echo ${LIVE_SWAP_DEVICES} | sed -e 's|,| |g') do if [ ! -b "${_DEVICE}" ] then @@ -39,15 +48,15 @@ Swapon () done # Remove all auto swap entries - if grep -qs "swap swap" "${_FSTAB}" + if grep -qs "swap swap" /root/etc/fstab.d/swap then - grep -v "swap swap" "${_FSTAB}" > "${_FSTAB}".tmp - mv "${_FSTAB}".tmp "${_FSTAB}" + grep -v "swap swap" /root/etc/fstab.d/swap > /root/etc/fstab.d/swap.tmp + mv /root/etc/fstab.d/swap.tmp /root/etc/fstab.d/swap fi # Add new swap entries for _DEVICE in ${_SWAP_DEVICES} do - echo "${_DEVICE} swap swap defaults 0 0" >> "${_FSTAB}" + echo "${_DEVICE} swap swap defaults 0 0" >> /root/etc/fstab.d/swap done }