swapon.bash 758 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/bin/bash
  2. ## Ativa swap no servidor
  3. SWAP_FILE_NAME="swapfile.swap"
  4. SWAP_FILE_PATH="/srv/swap/"
  5. USER=`whoami`
  6. SIZE=1048576
  7. if [ ! -z $1 ]
  8. then
  9. let SIZE=SIZE*$1
  10. echo "Will create a file with ${SIZE} *kibibytes* (${1}GB)"
  11. else
  12. echo "Defaulting to 1GB (${SIZE} kibibytes). Use $0 8 for 8GB (1 gibibyte times 8 in powers of 1024)."
  13. fi
  14. if [ -d $2 ]
  15. then
  16. SWAP_FILE_PATH="${2}"
  17. fi
  18. SWAP_FILE="${SWAP_FILE_PATH}/${SWAP_FILE_NAME}"
  19. echo "Will use ${SWAP_FILE} as swap file."
  20. if [ -f "${SWAP_FILE}" ]
  21. then
  22. sudo swapoff "${SWAP_FILE}"
  23. fi
  24. sudo mkdir -p "${SWAP_FILE_PATH}"
  25. sudo dd if=/dev/zero of="${SWAP_FILE}" bs=1024 count=${SIZE} status=progress
  26. sudo chmod -v 600 "${SWAP_FILE}"
  27. sudo mkswap -c "${SWAP_FILE}"
  28. sudo swapon -v "${SWAP_FILE}"
  29. free -ltw