From 58b80606f696868a119fddbfdab748afca6086cb Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Fri, 18 Oct 2013 19:43:12 +0300 Subject: [PATCH] dp not enable swap when /storage is on net (nfs/iscsi/cifs) closes #1916 --- .../initramfs/sysutils/busybox-initramfs/scripts/init | 9 +++++++++ packages/sysutils/util-linux/scripts/mount-swap | 6 ++++++ 2 files changed, 15 insertions(+) diff --git a/packages/initramfs/sysutils/busybox-initramfs/scripts/init b/packages/initramfs/sysutils/busybox-initramfs/scripts/init index b3748da48e..4b66716e0d 100755 --- a/packages/initramfs/sysutils/busybox-initramfs/scripts/init +++ b/packages/initramfs/sysutils/busybox-initramfs/scripts/init @@ -80,6 +80,11 @@ ;; disk=*) disk="${arg#*=}" + case $disk in + CIFS=*|SMB=*|ISCSI=*|NBD=*|NFS=*) + STORAGE_NETBOOT=yes + ;; + esac ;; textmode) INIT_ARGS="$INIT_ARGS --unit=textmode.target" @@ -615,6 +620,10 @@ if [ "$UPDATE_DISABLED" = "yes" ] ; then echo "" > /sysroot/dev/.update_disabled fi +# swap can not be used over nfs.(see scripts/mount-swap) + if [ "$STORAGE_NETBOOT" = "yes" ] ; then + echo "" > /sysroot/dev/.storage_netboot + fi # switch to new sysroot and start real init exec /bin/busybox switch_root /sysroot /lib/systemd/systemd $INIT_ARGS diff --git a/packages/sysutils/util-linux/scripts/mount-swap b/packages/sysutils/util-linux/scripts/mount-swap index 16c2996553..a603e8a086 100755 --- a/packages/sysutils/util-linux/scripts/mount-swap +++ b/packages/sysutils/util-linux/scripts/mount-swap @@ -20,11 +20,17 @@ ################################################################################ . /etc/swap.conf +. /etc/profile if [ -f /storage/.config/swap.conf ]; then . /storage/.config/swap.conf fi +if [ -e /dev/.storage_netboot ] ; then + logger -t Boot "### netbooting... swap disabled ###" + exit 0 +fi + SWAP=`blkid -t TYPE="swap" -o device` case $1 in