Bom sistema de arquivos para / tmp?

31

Estou pensando em ter o / tmp em sua própria partição ... o que seria um bom sistema de arquivos para formatá-lo?

A razão pela qual eu pergunto é porque os dados armazenados em / tmp não são permanentes, então eu não preciso de registro no diário, um índice sofisticado ou qualquer coisa.

    
por Nathan Osman 08.08.2010 / 03:49

8 respostas

27

Às vezes, acho que mover /tmp para ram ( tmpfs ) é a melhor solução (especialmente em minhas configurações que usam muita coisa de IO intensiva em disco - MySQL, etc) se você tiver RAM suficiente para alimentá-lo. / p>     

por Marco Ceppi 08.08.2010 / 04:47
25

Existem várias boas escolhas aqui:

  1. tmpfs : é um sistema de arquivos que armazena seus arquivos na RAM. Isso não significa que o sistema de arquivos consuma toda a sua memória RAM. Em vez disso, leva apenas a quantidade que realmente precisa. Geralmente apenas alguns MB são necessários. Se você usá-lo, adicione uma linha como: none /tmp tmpfs size=64M,mode=1777 0 0 ao seu /etc/fstab . Você pode alterar o size para um valor que você gosta. Se você achar que, em algum momento, ele é muito menor, use mount para aumentar o tamanho: mount -t tmpfs tmpfs /tmp -o size=128M,mode=1777,remount . O tamanho será aumentado sem excluir os arquivos existentes.
  2. ext2 / 3 : Você disse em sua pergunta que não precisa de recursos sofisticados. No entanto, eu aconselharia o uso de um diário. Porque se você usar ext2 e tiver um /tmp bastante grande, levaria algum tempo para verificá-lo. O ext3 inicializa muitos casos mais rapidamente. Portanto, eu sugeriria o uso de journalling.
  3. ext4 , reiserfs etc .: Alguns softwares usam /tmp para armazenar grandes quantidades de arquivos pequenos. Então, em alguns casos, não há mais blocos livres e o sistema de arquivos está cheio. ext4 e também reiserfs armazenam arquivos de uma maneira diferente. Por isso, pode ser uma boa escolha usá-las para o seu /tmp .

Se o seu computador funcionar por um longo tempo, é uma boa ideia excluir arquivos não utilizados em /tmp . tmpreaper é uma solução que faz isso para você.

No entanto, minha primeira escolha seria usar tmpfs .

    
por qbi 08.08.2010 / 10:30
6

Se você não quiser que ele consuma RAM, eu acabei de executá-lo como ext2 . Não há razão para comer o pequeno desempenho de registro no diário de um sistema de arquivos cujos dados você não deve (não) se importar com as reinicializações.

Na verdade, você deve usar o ext4 e desabilitar seu diário, ele deve ser mais rápido que o ext2. Formate-o ext4 e cole-o em fstab com a opção de montagem data=writeback .

    
por Nicholas Knight 08.08.2010 / 04:59
6

Usar tmpfs deve ser bom para suas necessidades, desde que você tenha RAM suficiente instalada .

Dito isto ... algo que deve ser considerado no que diz respeito ao uso de um disco virtual para /tmp (tirado de um post anterior em outro lugar ):

  • O / tmp deveria estar em uma área de disco real ou ter permissão para ser implementado basicamente na área de SWAP (ou tmpfs)?

Quando é muito usado, isso é uma tentação - "colocaremos / tmp em um disco RAM, isso acelerará o acesso e, quando o sistema for reinicializado / desligado, não há nada para limpar". No entanto, se você estiver pensando em implementar o espaço temporário como um disco RAM que será trocado, considerarei as ramificações do uso do espaço de troca do seu sistema por outros programas. Se swap estiver lá como uma forma de "estouro de emergência" para quando o sistema estiver em retas e precisar dele, a última coisa que você precisa é ter espaço de swap consumido por um processo de fuga / tmp, consumindo memória, causando pressão sobre o sistema. Subsistema VM para trocar para o disco. Entre a atividade de troca e o fluxo adicional de E / S no disco de RAM (que, por sua vez, pode fazer entradas de página adicionais para satisfazer um seek() ), seu sistema rapidamente se tornará vinculado à E / S.

    
por Avery Payne 08.08.2010 / 20:02
5

O uso do ext4 com opções de montagem específicas deve ser bom. Use as seguintes opções de montagem:

barrier=0 : Significantly improves file write operations in some scenarios
noatime : Don't update file last access time, you don't need this on /tmp files and it should help with write operations performance.
    
por João Pinto 08.08.2010 / 10:11
3

Estou feliz com o ext4. Você pode jogar com algumas opções de montagem se quiser ajustá-las ou usar tmpfs se tiver muito memória ram.

    
por Michał Šrajer 07.08.2011 / 19:03
2

Em resposta àqueles perguntando por que você gostaria de uma partição / tmp separada, tenho certeza que existem muitas razões, como algumas já afirmaram, mas uma que eu acho particularmente importante hoje é que se você está rodando / on um SSD, você quer minimizar as gravações nessa unidade, portanto, mover / tmp é uma boa idéia, já que é uma área do sistema de arquivos que tende a mudar muito.

    
por Matt Smith 21.07.2012 / 05:33
0

Eu acho que o tmpfs pode ser uma opção ruim, porque geralmente o / tmp é mundialmente gravável, então qualquer um pode preenchê-lo e, se ele for preenchido, ele levará toda a sua memória e seu servidor ficará lento.

    
por Christian DeKonink 28.06.2012 / 04:59