etc-gentoo/init.d/swapfiles

40 lines
804 B
Plaintext
Executable File

#!/sbin/openrc-run
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.
depend()
{
need localmount
keyword -jail -openvz -prefix -systemd-nspawn -vserver -lxc
}
start()
{
ebegin "Activating additional swap space"
case "$RC_UNAME" in
NetBSD|OpenBSD) swapctl -A -t noblk >/dev/null;;
*) swapon -a >/dev/null;;
esac
eend 0 # If swapon has nothing todo it errors, so always return 0
}
stop()
{
ebegin "Deactivating additional swap space"
case "$RC_UNAME" in
Linux)
if [ -e /proc/swaps ]; then
while read filename type rest; do
case "$type" in
file) swapoff $filename >/dev/null;;
esac
case "$filename" in
/dev/loop*) swapoff $filename >/dev/null;;
esac
done < /proc/swaps
fi
;;
esac
eend 0
}