Pensamentos sobre o layout do sistema de arquivos do servidor Linux

8

Estou pensando e tenho certeza de que muitos por aí também estão se perguntando, qual seria o melhor ou pelo menos o layout ideal do sistema de arquivos para um servidor baseado em GNU / Linux. Estou ciente de que não há layout geral, porque os layouts variam de acordo com o que o usuário final deseja alcançar, por isso reduzirei minha pergunta a uma implementação muito específica. O objetivo do servidor é como servidor de telefonia SIP de tamanho médio. O layout do sistema de arquivos que eu criei é o seguinte:

O tamanho total do disco rígido é de 146 GB

  • Partição primária de 1 GB montada como / boot
  • Partição primária de 16 GB montada como /
  • Partição estendida de 16 GB montada como swap (o servidor tem 8 GB de memória e não aumentará em breve, pelo menos)
  • Partição estendida de 52 GB montada como / var
  • Partição estendida de 16 GB montada como / var / log
  • Partição estendida de 30 GB montada como / usr
  • Partição estendida de 5 GB montada como / tmp
  • Partição estendida de 10 GB montada como / home

Eu coloquei a troca no meio, considerando que permitirá acesso mais rápido, fiz uma grande partição var, porque haverá muitos dados variáveis, como arquivos de banco de dados. Movi o / var / log e / tmp para uma partição diferente para ter certeza de que eles estão cheios, não derrubarão todo o sistema e movi o / usr também para torná-lo somente leitura se houver necessidade de tal medida. Eu criei uma partição pequena / doméstica porque o número de usuários será baixo, portanto não há necessidade de um grande espaço de armazenamento nos diretórios pessoais.

Suponho que haja muitos argumentos a favor e contra esse layout e estou curioso (tentando escolher a mente dos mais experientes ou mais sábios do que eu) sobre o que os outros pensam assim: essa fragmentação e ordem são boas considerando o acesso rápido (que é por isso que coloco a troca quase no meio), segurança e segurança de dados? Alguma ideia? Obrigado!

crazybyte
fonte
8
Não vou postar isso como resposta, mas ... Já fui mordido várias vezes por particionar demais, e sou um grande fã de usar o mínimo de partições necessárias. A lógica por trás do particionamento de um sistema Linux dessa maneira parece bastante antiga.
Boden
6
Por que não usar o LVM e aumentar os sistemas de arquivos necessariamente?
Cristian Ciupitu 10/12/2009
2
Como o LVM é um ponto de falha?
Aaron Brown
3
Eu acho que você está dividindo demais, pessoalmente. Além disso, eu iria com o LVM. Está pronto para produção e ficará lá para sempre ou salvará seu bacon mais tarde.
Pboin
2
Então, eu vou usá-lo.
22779 crazybyte

Respostas:

10

Duas coisas:

  1. / boot precisa ter apenas 256 MB, 512 MB, se você realmente quer estar seguro. De quantos núcleos você realmente precisa?
  2. Pelo amor de [inserir divindade aqui], use LVM

Em geral vou usar:

  • Primeira partição primária de 256 MB / inicialização (ext2)
  • Segunda partição primária como volume físico (PV) no LVM
  • Volume lógico /
  • Volume lógico / home
  • Volume lógico / usr (opcional)
  • Volume lógico / tmp (opcional, prefira hdd sobre ssd)
  • Volume lógico / var (opcional, prefira hdd sobre ssd)
  • Troca de volume lógico (2 * RAM && <= 4 GB)

Os tamanhos dependem do uso, mas deixam algum (a maioria) espaço não utilizado no grupo de volumes (VG) para expandir quaisquer volumes lógicos que sejam preenchidos.

Swoogan
fonte
nenhuma troca então? se você usasse o swap, colocaria isso no LVM ou como uma partição primária separada?
quack quixote
Sim, eu usaria uma troca e a colocaria no LVM.
10119 Swoogan
Eu olhei para o LVM e brinquei um pouco com ele. Permite ter incrível flexibilidade na configuração do sistema. Obrigado Swoogan!
22779 crazybyte
1

Definitivamente, vale a pena criar algo como você definiu, mas eu consideraria usar o LVM e aumentar suas partições conforme necessário.

Pessoalmente, uso algo muito semelhante ao que você tem, mas o menor tamanho de partição possível, pois tenho monitoramento de espaço em disco em todas as minhas caixas em Nagios que conheço com bastante antecedência quando precisar estender uma partição.

Ah, e 1 GB para / boot? Dependendo da sua distribuição, você realmente não precisa mais do que algumas centenas de megas ...

thehatter
fonte
0

Eu geralmente concordo com sua abordagem de dividir o disco em vários sistemas de arquivos. Não tenho certeza se colocar swap no meio realmente faz alguma coisa para você. Eu me concentraria em garantir que todas as partições fossem grandes o suficiente para as tarefas pretendidas. Por exemplo, qual é o risco que o seu 16GB / var / log irá preencher? Em um servidor linux padrão, deve haver muito espaço para logs, mas um servidor especializado pode criar arquivos de log muito maiores com base no uso.

Você pode aumentar o tamanho de / tmp, caso algum software que você está usando queira criar muitos arquivos temporários grandes.

Minha principal recomendação seria usar esse tipo de abordagem para tamanhos de sistema de arquivos, mas concentre-se em fazer o monitoramento adequado e a rotação de arquivos de log para garantir que você não preencha esses sistemas de arquivos críticos / tmp e / var / log.

Phil Hollenback
fonte
Bem, não estou ciente do fato de que o software do servidor SIP usará ou criará muitos arquivos temporários ou grandes arquivos temporários, mas, como você disse, é melhor prevenir do que remediar. Também não haverá muitos registros de log da parte do servidor. Alguns dados, como CDRs ou arquivos de banco de dados, residem em outro diretório em / var e esses podem ser bem grandes, e é por isso que achei que deveria ter um tamanho grande. Examinarei para garantir que o espaço para / tmp e / var / log seja grande o suficiente e também usarei a rotação adequada do arquivo de log, com certeza. Obrigado pelo conselho!
22779 crazybyte
0

Eu próprio provavelmente não o teria dividido tão fortemente; você terá problemas se alguma partição em particular for preenchida, e você a criou para ter ~ 6 que podem ser preenchidas e causar problemas, e é um novo sistema, para que você realmente não saiba certeza de onde o espaço vai ficar apertado.

Certifique-se de configurar alertas para quando o espaço disponível estiver baixo.

Satanicpuppy
fonte
Obviamente, o monitoramento será obrigatório para evitar problemas.
crazybyte
0

Eu não me incomodaria em dividir uma partição de 30 GB para / usr. 16 GB é um tamanho razoável para / e / usr combinado; dê à sua partição raiz 20-30GB se você realmente deseja a sala.

Não tenho muita experiência com LVM, mas com o uso proposto faz sentido.

Parece realmente que você deve fazer uma instalação de teste primeiro, para descobrir exatamente quais serão os requisitos de espaço para o sistema e o software básicos. Especialmente se você estiver evitando uma solução LVM. Depois de fazer isso, você terá uma idéia muito mais sólida de quão grande devem ser suas partições / e / usr . Em seguida, você pode ajustar o tamanho da partição para maximizar o espaço disponível para as áreas que você espera que sejam necessárias - / var, / var / log e / tmp.

charlatão quixote
fonte