Quando e onde usar rw,nofail,noatime,discard,defaults?

Quando e onde usar rw,nofail,noatime,discard,defaults?

Estou usando OpenStack Cloud e LVM no RHEL 7 para gerenciar volumes. De acordo com meu caso de uso, devo ser capaz de desanexar e anexar esses volumes a diferentes instâncias.

Ao atualizar o fstab, usei- defaults,nofailo agora, mas não tenho certeza do que exatamente devo usar. Estou ciente destas opções:

rw, nofail, noatime, discard, defaults 

Mas não sei como usá-los. Qual deve ser a configuração ideal para meu caso de uso?

Responder1

Como disse @ilkkachu, se você der uma olhada nomount(8)página de manual, todas as suas dúvidas devem desaparecer. Citando as páginas de manual:

-w, --rw, --read-write
   Mount the filesystem read/write. This is the default. A synonym is -o rw.

Significa: Não é necessário, pois rwé o padrão e faz parte da defaultsopção

nofail Do not report errors for this device if it does not exist.

Significa: Se o dispositivo não estiver habilitado após inicializá-lo e montá-lo usando fstab, nenhum erro será relatado. Você precisará saber se um disco pode ser ignorado se não for montado. Bastante útil em drivers USB, mas não vejo sentido em usar isso em um servidor...

noatime
   Do not update inode access times on this filesystem (e.g., for faster access on the 
   news spool to speed up news servers).

Significa: Nenhuma operação de leitura é uma operação de leitura "pura" em sistemas de arquivos. Mesmo que você apenas faça isso cat file, por exemplo, uma pequena operação de gravação atualizará a última vez que inodeeste arquivo foi acessado. É muito útil em algumas situações (como servidores de cache), mas pode ser perigoso se usado em tecnologias de sincronização como o Dropbox. Não sou ninguém para julgar aqui o que é melhor para você, se noatime for definido ou ignorado...

discard/nodiscard
   Controls whether ext4 should issue discard/TRIM commands to the underlying block device 
   when blocks  are  freed.This  is  useful  for  SSD  devices  and  sparse/thinly
   -provisioned LUNs, but it is off by default until sufficient testing has been done.

Significa:Recurso TRIM do SSD. Reserve um tempo para ler sobre esse cara e verifique se o seu SSD suporta esse recurso (praticamente todos os SSDs modernos o suportam). hdparm -I /dev/sdx | grep "TRIM supported"dirá se o trim é compatível com seu SSD.

Hoje, você poderia obter melhor desempenho e integridade dos dadosPoda periódicaem vez de um corte contínuo em seu arquivo fstab. Existe até umlista negra de dispositivos no kernelpara corte contínuo, pois pode causar corrupção de dados devido a operações não enfileiradas.

defaults
  Use default options: rw, suid, dev, exec, auto, nouser, and async.

dr:na sua pergunta, rwpode ser removido ( defaultsjá implica rw), nofaildepende de você, noatimedepende de você, da mesma forma discarddepende dos recursos do seu hardware.

Responder2

Me deparei com informações que dizem que é MUITO IMPORTANTEPARA DESATIVAR A OPÇÃO DE DESCARTAR MONTAGEMem SSDs (-o nodiscard) no Linux. Aqui está a citação e o link:

Link:

https://www.intel.com/content/dam/support/us/en/documents/ssdc/data-center-ssds/Intel_Linux_NVMe_Guide_330602-002.pdf

Citação da página 6:

"Recomendações do sistema de arquivos

IMPORTANTE: Não descarte blocos no uso do sistema de arquivos.

Certifique-se de desligar a opção de descarte ao criar seu sistema de arquivos Linux. Você deseja permitir que o SSD gerencie blocos e sua atividade entre o NVM (memória não volátil) e o host com abordagens mais avançadas e consistentes no controlador SSD.

Sistemas de arquivos principais:

• ext4 – a opção estendida padrão é não descartar blocos no momento da criação do sistema de arquivos, reter isso e não adicionar a opção estendida “descartar” como algumas informações lhe dirão para fazer.

• xfs – com mkfs.xfs, adicione a opção –K para não descartar blocos.

Se você for usar um RAID de software, é recomendado usar um tamanho de bloco de 128k como ponto de partida, dependendo da carga de trabalho que você irá executar. Você deve sempre testar sua carga de trabalho."

Como você pode ver, o próprio fabricante, a Intel, afirma TÃO FORTE que o repete CINCO vezes no texto, QUATRO explicitamente e uma através de uma lógica que os profissionais entendem. Isso é MUITO ENFÁTICO do fabricante. Além disso, este SSD não é desleixado: são os SSDs Intel de US$ 1.200 de alguns anos atrás.

Não sei como a opção "trim" se relaciona com nada disso; Estou repassando as informações do documento. O documento é datado de março de 2015, Revisão 2.0, e está atualizado para o Kernel Linux 3.19 (o documento lista isso na página 2).

Responder3

defaults,(ou ,defaults) nunca é necessário.

Não sei por que o exemplo em man fstabusa isso :-(.

O motivo de usar defaultsé se você não precisa fornecer nenhuma opção. Você precisaalgunspalavra a ser colocada na coluna de opções, se você deseja fornecer valor(es) para a(s) próxima(s) coluna(s).

informação relacionada