Ativando zRAM no Slackware
Neste artigo, veremos como ativar o zRAM no Slackware.
Parte 2: Configurando o zRAM
Esta parte é mais rápida, há um script desenvolvido por Andrei Gliga, disponível aqui, que faz todo o trabalho.
Basta criar o arquivo /etc/rc.d/rc.zram com o seguinte conteúdo:
Dê permissão de execução:
# chmod +x /etc/rc.d/rc.zram
E adicione as linhas no arquivo /etc/rc.d/rc.local, para que o script inicie no boot:
Observações:
Por fim, execute o comando:
# /etc/rc.d/rc.zram start
E pronto, zRAM ativado.
Um screenshot do sistema em uso:
Até a próxima!
Artigo também publicado no Mundo GNU:
Basta criar o arquivo /etc/rc.d/rc.zram com o seguinte conteúdo:
#!/bin/bash
# Script to start zRam (Virtual Swap Compressed in RAM)
# https://github.com/otzy007/enable-zRam-in-Slackware
#
# Size of swap space in MB
# default 1GB
SIZE=1024
start() {
modprobe zram
echo $SIZE*1024*1024 | bc > /sys/block/zram0/disksize
mkswap /dev/zram0
swapon -p 50 /dev/zram0
}
stop() {
swapoff /dev/zram0
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
echo 1 > /sys/block/zram0/reset
;;
*)
echo "Usage: $0 (start|stop|restart)"
esac
# Script to start zRam (Virtual Swap Compressed in RAM)
# https://github.com/otzy007/enable-zRam-in-Slackware
#
# Size of swap space in MB
# default 1GB
SIZE=1024
start() {
modprobe zram
echo $SIZE*1024*1024 | bc > /sys/block/zram0/disksize
mkswap /dev/zram0
swapon -p 50 /dev/zram0
}
stop() {
swapoff /dev/zram0
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
echo 1 > /sys/block/zram0/reset
;;
*)
echo "Usage: $0 (start|stop|restart)"
esac
Dê permissão de execução:
# chmod +x /etc/rc.d/rc.zram
E adicione as linhas no arquivo /etc/rc.d/rc.local, para que o script inicie no boot:
#Iniciando zram
if [ -x /etc/rc.d/rc.zram ] ; then
/etc/rc.d/rc.zram start
fi
if [ -x /etc/rc.d/rc.zram ] ; then
/etc/rc.d/rc.zram start
fi
Observações:
- Por padrão, ele irá disponibilizar 1 GB. Se quiser mudar, altere a linha "SIZE" como preferir.
- Eu alterei o script, acrescentando o parâmetro -p 50 na linha que ativa a nova área SWAP (swapon). Este parâmetro atribui a prioridade 50 à nova área criada, fazendo com que o sistema dê prioridade a ela em detrimento à alguma outra SWAP que esteja habilitada. Assim, o sistema usará primeiro a área SWAP do zRAM, e quando esta estiver esgotada, ele irá buscar a área SWAP no disco (se houver).
Por fim, execute o comando:
# /etc/rc.d/rc.zram start
E pronto, zRAM ativado.
Um screenshot do sistema em uso:
- 4 GB de RAM (3.74 GB "usável");
- zram utilizando 1 GB;
- Swap no disco (/dev/sda3) de 3 GB;
- Nível de swapiness em 70.
- VirtualBox executando: Windows 7, Ubuntu 12.04 e o saudoso Conectiva 6.0;
- Firefox com um vídeo do YouTube executando;
- GIMP;
- LibreOffice Writer;
- E outros menores: lxterminal, Genymotion e Thunar.
Notas finais
- Reparem no consumo de memória RAM (3344 de 3744 MB) e nas partições SWAP (zRAM com 671 MB e /dev/sda3 vazia).
- O sistema só passará a utilizar a partição SWAP do disco (/dev/sda3), quando o dispositivo criado pelo zRAM estiver cheio devido à maior prioridade atribuída ao zRAM.
- Manter uma partição SWAP no disco é útil para quem usa o recurso de hibernação (como o zRAM utiliza a memória RAM para criar a partição SWAP, a hibernação não funcionará).
Até a próxima!
Referências
- Compress RAM with zRAM in Slackware
- Building a Linux Kernel from source « alien.slackbook.org
- SWAP ArchWiki
Artigo também publicado no Mundo GNU: