Por que / tmp não usa tmpfs?


17

Tenho muita memória RAM e uso muito pouco. Também gravo alguns screencasts com gtk-recordmydesktop, que por padrão são salvos /tmpdurante a gravação. Presumi que isso significaria armazenar na RAM o máximo possível, mas verifiquei e descobri que /tmpnão é montado com tmpfs. Por que é que?


Respostas:


16

Eu acho que você respondeu sua própria pergunta. Muitos programas são usados /tmppara armazenar arquivos temporários e podem ser enormes.

Por exemplo, o Brasero padroniza esse diretório para armazenar um arquivo de imagem de CD / DVD, que pode ter 4,7 GB de tamanho. Não vale a pena arriscar uma desaceleração séria (ou um bloqueio do sistema) em uma situação de falta de memória se a RAM e a troca ficarem cheias.

Para usuários avançados, não há problema em alterar os padrões de alguns aplicativos e montar /tmpcomo tmpfs. Para uso geral, simplesmente não vale o risco, eu acho.


1
E acho que você pode ficar um pouco irritado e amaldiçoar os desenvolvedores se tiver gravado alguns grandes screencasts e depois, após uma queda de energia ou um problema no sistema, os perderam. ;)
organiza

E o material em / tmp pode até residir na RAM e nunca tocar no disco se você usar ext4.
LasseValentini

@Fraekkert: Como assim? Por que ext4? Porque nunca? Você pode elaborar por favor?
organize

1
Não é exclusivo do ext4, mas é por causa da alocação atrasada . Essencialmente, isso significa que os arquivos não são necessariamente gravados no disco apenas porque um programa diz ao SO para fazê-lo. Em vez disso, é mantido no aríete para acesso rápido. Se o arquivo for excluído relativamente rápido a partir de então, nunca chegará ao disco. Dê uma olhada na wikipedia se precisar de mais informações.
LasseValentini 26/09

1
Para referência, aqui está um comentário explicando o tópico de 5/30 segundos em detalhes: bugs.launchpad.net/ubuntu/+source/linux/+bug/317781/comments/45
lxgr

10

E a compactação zram?

O espaço disponível é superior a 256 MB, depende do tipo de arquivo.

modprobe zram num_devices=1 
# max ram usage = 256 Mbytes
echo 262144 > /sys/block/zram0/disksize
mke2fs -q -m 0 -b 4096 -O sparse_super -L zram /dev/zram0
mount -o relatime,noexec,nosuid /dev/zram0 /tmp

Isso é realmente uma idéia muito interessante ... vai tentar fazer isso :)
Piskvor

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.