SpectreOS/scripts/btrfs-swapon
2022-10-04 19:01:31 +02:00

39 lines
578 B
Bash
Executable file

#!/bin/sh
#
# Copyright (C) Sebastian Philipp
#
set -e
swapsize="$1"
swapname="$2"
if [ -f /$swapname ]
then
rm /$swapname
fi
if [ -z "$swapsize" -o -z "$swapname" ]
then
cat <<EOF
Usage: $0 <size> <file>
size: the size of the file, like "8G"
file: path to the new swap file. This file should not exists.
EOF
exit 1
fi
swapfile=$(losetup -f) #free loop device
# set NOCOW
touch $swapname
chmod 0600 $swapname
chattr +C $swapname
head -c $swapsize /dev/zero >> $swapname
losetup $swapfile $swapname #mount file to loop
mkswap $swapfile
swapon $swapfile