Calcular tamanho ideal da memória SWAP
Publicado por Xerxes (última atualização em 27/06/2016)
[ Hits: 8.546 ]
Homepage: -
Entre com a RAM e receba o quanto você deve colocar de SWAP (mínimo, com hibernação e máximo).
#!/bin/bash
#
#
# Este script teve como base para calcular o tamanho da Swap as seguintes
# Páginas:
#
# https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Deployment_Guide/ch-swapspace.html
# https://help.ubuntu.com/community/SwapFaq
#
# Principalmente a última que define as regras de cálculo.
#
#
# Em resumo:
#
# Menos de 1GB de RAM? Então mínimo de Swap é igual a RAM e o máximo de Swap
# é igual ao dobro, já considerando sistema de hibernação.
#
# Mais de 1GB de RAM? Então o mínimo de Swap é igual a raiz quadrada da RAM,
# arredondado. Se considerar a hibernação, soma mais a RAM. Já o máximo
# recomendado é o dobro da RAM.
#
#
# Espero que seja útil
#
# Xerxes Lins (www.vivaolinux.com.br/~xerxeslins)
#
# V1.0b (06/06/2016)
#
########################################################################
function _menos_de_1gb {
clear
echo "Quanto de RAM seu computador tem? (em MB)"
read RAM_MB
MIN_RAM=$RAM_MB
MAX_RAM=$(( 2 * $RAM_MB))
HIB_RAM=$MAX_RAM
clear
echo "Para seu computador que tem $RAM_MB MB de RAM..."
echo ""
echo "O mínimo de Swap recomendado é $MIN_RAM MB,"
echo "sem sistema de hibernação."
echo ""
echo "O máximo de Swap recomendado é $MAX_RAM MB,"
echo "incluindo sistema de hibernação".
}
function _mais_de_1gb {
echo "Quanto de RAM seu computador tem? (em GB)"
read RAM_GB
#Com ajuda de Danillo (hellnux) sobre o uso de aspas duplas e barra aqui
MIN_RAM=$(awk "BEGIN { printf \"%.0f\n\", sqrt($RAM_GB) }")
MAX_RAM=$(( 2 * $RAM_GB))
HIB_RAM=$(($MIN_RAM + $RAM_GB))
clear
echo "Para seu computador que tem $RAM_GB GB de RAM..."
echo ""
echo "o mínimo de Swap recomendado é $MIN_RAM GB,"
echo "sem sistema de hibernação."
echo ""
echo "O recomendado é $HIB_RAM GB,"
echo "incluindo sistema de hibernação".
echo ""
echo "E o máximo recomendado é $MAX_RAM GB."
}
function _inicio {
echo "Seu computador tem menos de 1GB de RAM? (s/n)"
read OPT
case $OPT in
s|S) _menos_de_1gb
;;
n|N) _mais_de_1gb
;;
*) echo "Era para escolher S ou N. Saindo..." && exit
;;
esac
}
clear
_inicio
Arquivo em shell criado cleanlogs.sh
Array de números aleatórios não-repetidos de um intervalo em Shellscript (Bashscript)
Calculadora básica em Shell Script
Boas Práticas e Padrões Idiomáticos em Go e C
Vale a pena ter mais de uma interface grafica no seu Linux?
Estrutura e Funcionamento de um Ebuild no Gentoo Linux
Copiar Para e Mover Para no menu de contexto do Nautilus e Dolphin
Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Usando o ble.sh (Bash Line Editor) no lugar do bash completion
Montagem pré automática de HD externo usb em NTFS não funciona no Debian Trixie - Solução
Instalação Dual Boot Linux+Windows 11 (3)
No Ubuntu 26.04, sudo passou a mostrar os asteriscos ao digitar por pa... (5)
Como instalar Warsaw no Gentoo? (0)
Como insiro e excluo um elemento XML e JSON ao código Javascript (1)









