Meu servidor Ubuntu não tem mais que 512 MB de memória. Não é suficiente para executar o Node.js + MongoDB.
Por isso, decidi adicionar um arquivo de troca:
# dd if=/dev/zero of=/root/myswapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 4.69263 s, 229 MB/s
# mkswap /root/myswapfile
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=3c64da32-d0b4-49e5-92db-fba961b8ae28
# swapon /root/myswapfile
Nenhuma mensagem de erro => bem-sucedida!
O novo arquivo de troca agora deve estar listado, mas não é :
# swapon -s
Filename Type Size Used Priority
(lista vazia)
Como posso fazer isso funcionar? Qual pode ser o motivo da troca ausente?
/
chmod 600 /root/myswapfile
swapon /root/myswapfile
free
mostrar qualquer uso swap?Respostas:
Primeiro, apague seu arquivo de troca original:
Em seguida, execute os seguintes comandos, um por um:
A saída deve ser semelhante à seguinte:
Agora, execute os seguintes comandos:
Agora, edite o / etc / fstab para tornar as alterações permanentes:
e adicione a seguinte linha ao final do arquivo:
Pressione CTRL+ oe, em seguida, pressione ENTERpara salvar o arquivo.
Pressione CTRL+ xpara sair do nano.
fonte: https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04
Se isso ainda não funcionar, convém verificar a swappiness:
Este comando deve retornar um número. O padrão deve ser 60.
Se não houver saída, execute os seguintes comandos, um por um:
O
-a
é importante depoistee
ou você substituirá o arquivo inteiro !!!fonte
Use
fdisk
para criar uma troca. Adicione uma nova partição, selecione Linux swap, escreva as alterações.mkswap /dev/sd?
Você precisa adicioná-lo ao seu/etc/fstab/
. Altere XXX para o UUID de troca.Execute
swapon -a
para disponibilizá-lo em/etc/fstab
.fonte
O arquivo de troca deve estar em / swapfile com 600 direitos.
adicionar arquivo de troca. Eu acho que você esquece esse comando
fonte
sudo chmod 600...
. Também pode ser tomada de valor que possuía pela raiz:sudo chown root:root ...
.makeswap
→mkswap
você poderia fazer isso:
e escreva onde swap é este:
e então isso:
execute o gpart, defina a unidade swap como swap e monte-a na unidade raiz dev, e pode funcionar bem dessa maneira.
fonte
sudo umount -a
desmonta TUDO? (que pode quebrar coisas se estiver em uso) Se você estiver tentando desmontar as coisas de troca existentes primeiro, talvez seja melhor encontrá-lasmount
e desmontá-las especificamente ou usá-lassudo swapoff -a
.umount -a
é realmente uma ideia muito idiota. Desmonte o que você precisa desmontar, nem tudo.