From 034f6554dd7b548777406140f3d1222c22572481 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Tue, 22 Apr 2014 09:54:18 -0400 Subject: [PATCH] Add script to easily make a swapfile --- scripts/mk_swapfile | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 scripts/mk_swapfile diff --git a/scripts/mk_swapfile b/scripts/mk_swapfile new file mode 100755 index 0000000..f287199 --- /dev/null +++ b/scripts/mk_swapfile @@ -0,0 +1,44 @@ +#!/bin/bash -e +# This script adds a 512MB swapfile to the system + +function do_err() { + code=$? + echo "Command failed with code $code: $BASH_COMMAND" + exit $code + +} +trap do_err ERR + + +function set_swappiness() { + if ! grep -q '^vm.swappiness' /etc/sysctl.conf; then + echo -n 'Setting ' + sysctl -w vm.swappiness=10 + echo vm.swappiness = 10 >> /etc/sysctl.conf + fi +} + +function get_new_swapfile() { + for i in `seq 0 99`; do + if [ ! -e /swapfile.$i ]; then + echo /swapfile.$i + return + fi + done + # Seriously? 100 swapfiles already exist? + echo "too many swapfiles" + exit 1 +} + +[ `id -u` -eq 0 ] || { echo "You must be root to run this script"; exit 1; } +set_swappiness + +SWAPFILE=$(get_new_swapfile) + +umask 077 +dd if=/dev/zero of=$SWAPFILE bs=1k count=512k conv=excl +mkswap $SWAPFILE +swapon $SWAPFILE +echo "$SWAPFILE swap swap auto 0 0" >> /etc/fstab + +echo 512MB swapfile successfully added -- 2.25.1