Quantas e quais partições devo criar para um servidor linux?

15

As partições são muito importantes no servidor Linux porque oferecem muita flexibilidade, por exemplo, ao atualizar para um disco rígido maior.

Mas, quantas partições eu devo criar ao criar uma caixa do Linux? Qual tamanho devo definir para cada partição?

Por fim, mas não menos importante, que partições devo ter em um disco separado (estou pensando em / home, / var em talvez uma unidade mais rápida, etc) e quais partições posso compartilhar na mesma unidade?

    
por paulgreg 30.04.2009 / 18:04

8 respostas

17

O planejamento de uma boa estrutura de particionamento depende muito do fato de você realmente saber como usar o 'servidor'. Qualquer aconselhamento aleatório que não leve os serviços reais que serão fornecidos não será particularmente útil.

Por exemplo, se for uma caixa baseada no debian que será usada para o mysql, você pode querer uma partição separada para /, / var, e / var / lib / mysql.

Será um servidor de arquivos com muito armazenamento compartilhado? Você pode querer uma partição /, / home e / srv.

Para uma caixa rodando apenas o squid, você pode querer uma partição para / e uma partição em um disco rápido para o spool do squid.

Como você está planejando suas partições, é muito útil ter um bom entendimento do Padrão de Hierarquia do Sistema de Arquivos e se / como sua distro escolhida se desvia do padrão.

Usar o LVM pode facilitar muito a mudança de sua mente no futuro e ajustar suas partições sem ter que reinicializar ., e sua capacidade de criar instantâneos pode ser muito fácil de criar bons backups.

    
por 30.04.2009 / 20:37
8

Eu sempre crio essas partições e, desde o ano passado, sempre no LVM:

/       - a few Gig
/usr    - 24 Gig and mostly empty
/var    - 4 Gig works for me, YMMV
/home   - depends on how many users you will have

Um dos mais importantes é /var - se essa for uma partição separada, quando ela for preenchida, você não irá travar sua partição raiz. Embora eu nunca tenha feito isso, alguns fazem um /usr separado para que possam montá-lo somente leitura.

e às vezes eu crio essas partições:

/boot   - even 1 Gig is way more than enough

O raciocínio é que nem sempre é possível inicializar a partir de uma partição RAID ou LVM. Assim, /boot pode ser uma simples partição ext3, permitindo que / seja mais avançado.

Se eu tiver um grande número de arquivos grandes, às vezes, criarei uma partição específica para esses arquivos grandes, para que o sistema de arquivos possa ser ajustado para ser eficiente no armazenamento de arquivos grandes. Algumas pessoas, se estiverem servindo NFS de um servidor, criarão uma partição separada para seus compartilhamentos NFS ou até mesmo uma partição separada para cada compartilhamento NFS. Isso depende de suas necessidades.

Por que o LVM? Como já mencionei em outras respostas, mas esqueci de mencionar aqui, é muito mais fácil mudar sua mente mais tarde e expandir uma partição. Isso já salvou minha bunda.

Estas são diretrizes gerais. É claro que espero que, se o seu servidor tiver necessidades especiais, você leve isso em conta e faça a partição refletir essas necessidades.

    
por 30.04.2009 / 18:13
7

Supondo que você está construindo uma máquina que vai durar um tempo, seria inconveniente reconstruir, e precisa ser bastante flexível, você pode gostar de um esquema semelhante ao seguinte:

  1. Instale no mínimo duas unidades físicas, do mesmo tamanho; para o Para fins deste exemplo, vou assumir 500GB drives SATA, mas o princípios funcionam bem com outros tamanhos de unidade.

  2. Particione cada unidade da seguinte forma:

    /dev/sda1   500MB
    /dev/sda2   100GB
    /dev/sda3   the rest
    

    O objetivo é ter uma partição de 500MB na frente, um tamanho considerável partição no meio para o sistema operacional e aplicativos, e a maior parte a unidade na parte traseira para dados adicionais.

  3. Crie um conjunto SW RAID 1, /dev/md0 , de /dev/sda1 e /dev/sdb1 ; crie conjuntos SWID 1 de SW adicionais /dev/md1 e /dev/md2 do correspondentes parições.

  4. Formate /dev/md0 como ext3; isso será /boot .

  5. Formate /dev/md1 e /dev/md2 como volumes físicos LVM.

  6. Crie um grupo de volumes LVM, vg_system , que contém /dev/md1 .

  7. Crie volumes LVM apropriados dentro de vg_system para seus vários sistemas operacionais partições; no mínimo, você vai querer swap , /var de um casal GB e / de 10 GB ou mais. NOTA : não aloque todos os vg_system ! Quando você decidir mais tarde que você deseja aumentar o tamanho de \var ou deseja adicionar um /opt ou outros enfeites, então você desejará esse espaço adicional.

  8. Crie um grupo de volumes LVM, vg_data , que contém /dev/md2 .

  9. Crie volumes LVM dentro de vg_data conforme desejado; pelo menos você desejará um /home considerável e talvez queira volumes adicionais para, digamos, spools de correio ou bancos de dados, raízes da Web ou quaisquer outros dados isso não faz parte do sistema operacional. Novamente, não aloque todo o vg_data , por razões semelhantes às aqueles listados acima.

As vantagens desta estratégia incluem o seguinte:

  • É tolerante a falhas de hardware; qualquer uma das unidades pode falhar sem causando uma falha no sistema, e se você investir em um controlador hot-swap, você pode recuperar sem tempo de inatividade.

  • É à prova do futuro e expansível; quando você compra 2TB unidades há alguns anos na estrada, você pode colocá-los na máquina, transformá-los em outro conjunto SW RAID, formate-o como um volume físico LVM, adicione-o a qualquer grupo de volumes precisa de mais espaço (provavelmente lv_data ), então use pvmove para migrar seus dados das unidades antigas para a nova. Além disso, as principais atualizações do SO podem ser renderizadas de forma doloroso; se você precisar reinstalar o sistema operacional para uma atualização importante (ahem Red Hat :(), você pode fazer isso preservando os diretórios home (e spools de correio e tudo o que você colocar em vg_data ).

As desvantagens desta estratégia são poucas; Eu suponho que seja um pouco complexo, e você toma um golpe de desempenho em gravações por causa do RAID 1. No entanto, tenho construído estações de trabalho e servidores autônomos de acordo com esses princípios há alguns anos, e na minha experiência cada vez que eu não construo uma máquina ao longo destas linhas, em pouco tempo eu desejo Eu tive.

-steve

P.S. Devo acrescentar que, se você tem a infra-estrutura no local para provisão rápida e indolor de uma nova máquina, então um sistema como este é um exagero; ao invés de mexer com conjuntos RAID e LVM, apenas reconstruir a máquina se você precisar de algo mudou.

    
por 28.05.2009 / 17:23
2

Por anos, todo computador que usei era um sistema de dual boot, e no lado do Linux eu fiquei muito preso a esse esquema (estou falando de estações de trabalho pessoais aqui, nada de servidores, então sua milhagem pode variar)

/     - main thing
/boot - not that relevant, since cylinder being < 1024 and 
        exotic filesystems are no longer an issue
/home - handy if you upgrade your laptop with each new distro :-)

Para minha última atualização, fiz uma instalação do zero, eliminando a partição / . Isso me fez pensar que uma partição /opt ou /usr/local separada teria sido legal, me poupando do incômodo de reinstalar todas as coisas que eu coloquei lá (java, eclipse ... eu normalmente não ligo para os pacotes em distro ).

    
por 30.04.2009 / 18:39
2

Além das partições mencionadas por Eddie, eu normalmente crio mais duas partições separadas

/ tmp - pelas mesmas razões que você criou uma partição / var separada (tive o espaço temporário todo preenchido antes). Eu normalmente vou com 1-2 GB

/ usr / local - Isso permite que você atualize e limpe / usr conforme necessário, sem dissipar todo o software instalado separadamente. O tamanho aqui depende de quanto software externo você instala. Eu costumo ir com cerca de 10 GB, mas estou achando que é um pouco pequeno nos dias de hoje.

Eu sempre faço / home por último e preencho o resto do disco com ele.

Na partição / boot, nunca consegui maior que 100 Mb e nunca enfrentei problemas de espaço (acabo limpando os kernels antigos). Realmente pode ser muito pequeno.

Também não esqueça de uma partição swap também.

    
por 30.04.2009 / 18:24
1

Para a maioria das máquinas, eu faço

100MB /boot
1GB * NUMBER_OF_USERS /home
10GB /var/log
10GB /var
REST /

Em alguns casos, isso precisará ser alternado, mas estou bastante convencido de que os usuários não obtêm mais de 1 GB de espaço em um servidor. Se precisarem de mais, eles podem usar o / tmp, com o entendimento de que ele será excluído via cron todas as noites.

    
por 30.04.2009 / 20:41
1

Supondo que você não use um RAID de hardware - no Linux eu sempre usaria o LVM sobre o RAID. Mesmo para uma configuração de disco único. Razão é que você tem a opção de adicionar mais espaço de armazenamento (estendendo o grupo LVM) ou alterar as opções de redundância (por exemplo, transformando uma configuração de um único disco raid1 em um espelhado ou mesmo RAID10 com algum trabalho pesado). p>

Para responder à sua pergunta, eu geralmente tenho algo semelhante a isso para um servidor genérico. Começando com 2 discos (digamos, um 1RU Dell), ambos particionados como:

  • ~ 100 MB RAID1 para / boot
  • LVM sobre o RAID1 para o restante do disco

Em seguida, criamos todo o volume como volumes LVM:  * /  * / var  * / tmp  * /casa  * / opt

Eu evitaria criar muitos sistemas de arquivos, pois é difícil de gerenciar. Se você estiver com pouco disco, acabará tendo espaço livre em vários sistemas de arquivos, mas não o suficiente para trabalhar.

/ home e / tmp em um sistema de arquivos separado é sempre uma boa ideia; geralmente eu não separo / opt a menos que eu esteja planejando colocar um monte de coisas nele. (NFS pode ser uma opção melhor para / opt se você tiver muitos servidores que exigem a mesma pilha de software)

Em suma, use o LVM para tudo, a menos que você tenha uma razão para não fazê-lo - dessa forma, você tem a opção de alterar.

Além disso, use um servidor de log para que os logs não preencham o seu / var!

    
por 30.10.2009 / 02:55
0
  • / boot - 128MB

Grupo de volume - rootvg

  • / var - 5GB (depende se for usado como servidor de e-mail. Você também pode redimensionar para capturar arquivos principais)
  • / tmp - 2 GB
  • / opt - 10GB (usado para software que não vem com a distro)
  • / - 6 GB - minumum

Grupo de volume - datavg

  • / home - o resto

Você pode fazer um / usr separado para o seu software, mas no meu caso a caixa é reinstalada, portanto não há necessidade de obter sua própria partição.

    
por 01.05.2009 / 04:07