Files
dotfiles/installer/03-install-swap.sh
T
2026-06-16 03:54:27 +00:00

27 lines
784 B
Bash
Executable File

#!/bin/sh -e
if [[ $UID != 0 ]]; then
echo "need to be root"
exit 0;
fi
MOUNT_DIR=$(mktemp -d)
mount $(df --output=source / | tail -n 1) $MOUNT_DIR
btrfs subvolume create $MOUNT_DIR/@swap
chmod 700 $MOUNT_DIR/\@swap
mkdir /swap
echo $(df --output=source / | tail -n 1)" /swap btrfs rw,noatime,compress=none,ssd,space_cache,subvol=@swap 0 0" | tee -a /etc/fstab
systemctl daemon-reload
mount /swap
truncate -s 0 /swap/swapfile
chattr +C /swap/swapfile
# error btrfs property set /swap/swapfile compression none
fallocate -l $(free --giga | awk 'NR == 2 {print $2}')G /swap/swapfile
chmod 600 /swap/swapfile
mkswap /swap/swapfile
swapon /swap/swapfile
echo "/swap/swapfile none swap defaults 0 0" | tee -a /etc/fstab
systemctl daemon-reload
umount $MOUNT_DIR
rmdir $MOUNT_DIR