Sua melhor opção é adicionar pelo menos duas unidades grandes (por exemplo, 4 TB ou mais) e usar alguma forma de RAID-1 ou RAID-10 - se você não tiver nenhuma redundância de armazenamento em sua missão crítica serviço, você está fazendo errado.
Se você adicionar apenas duas unidades, use o RAID-1. para quatro ou mais, use o RAID-10. Eu aconselharia contra o uso de RAID-5 ou RAID-6 para e-mail porque o armazenamento de mensagens precisa de muita largura de banda de I / O, e o RAID-5 é muito mais lento que o RAID-1 / RAID-10 (e o RAID-6 é ainda mais lento) .
Existem várias formas de implementar o RAID-1 / RAID-10, incluindo mdadm
e lvm
. Com qualquer um desses, você pode criar uma matriz RAID, formatá-la com seu sistema de arquivos preferido e montá-la no lugar de /var/mail
. Você também pode adicionar mais unidades conforme necessário no futuro, contanto que seu sistema de arquivos suporte o crescimento (por exemplo, xfs tem xfs_growfs
, ext2 / 3/4 tem resize2fs
).
Outra opção é usar btrfs
. Isso tem suporte embutido para recursos semelhantes a RAID e aumenta automaticamente o sistema de arquivos quando você adiciona mais unidades de armazenamento a ele. Ele também suporta detecção e correção de erros, snapshots, sub-volumes, compressão de arquivos transparente e muito mais.
O ZFS tem recursos semelhantes ao btrfs (e é o que eu pessoalmente uso) mas tem a desvantagem de não ser (e provavelmente nunca será devido a incompatibilidade de licenças entre CDDL e GPL) uma parte do kernel da linha principal. Está disponível apenas como patch ou módulo DKMS. Isso não é grande coisa hoje em dia, mas é mais trabalho.
Minha recomendação seria usar btrfs ou zfs. IMO não há realmente nenhum bom motivo para usar mdadm ou lvm antigo, a menos que você já esteja usando e tenha experiência e investimento significativos na tecnologia.
Existem várias perguntas e respostas neste site que detalham como configurar o mdadm, lvm, btrfs e / ou zfs e outros.
De qualquer forma, não importa como você implementa o seu sistema de arquivos RAID ou RAID, você terá que transferir seus e-mails antigos para o novo sistema de arquivos com o mínimo de tempo de inatividade. Em todos os casos, o procedimento será muito parecido com isto:
-
instale as novas unidades. Se você não tem baias hot swap, isso exigirá algum tempo de inatividade.
-
configure o novo raid e / ou sistema de arquivos
- monte como
/var/mail.new
-
rsync /var/mail/
para /var/mail.new/
-
Você pode repetir a etapa 4 quantas vezes quiser até ter tempo de concluir esse procedimento (provavelmente o melhor feito fora do horário comercial). Além de algum tempo de inatividade possível na etapa 1, não deve haver nenhum tempo de inatividade visível ao usuário até este ponto .... no máximo, eles podem ter notado que o sistema está um pouco mais lento que o normal enquanto os trabalhos rsync
estão em execução. / p>
-
pare seu MTA (sendmail, exim, postfix ou qualquer outro) e seus daemons pop / imap e qualquer outra coisa que grave em /var/mail/
. Se você tiver usuários que fazem login em um shell para ler e-mails (por exemplo, com o mutt), peça para eles fazerem logout e não permitirem que façam login novamente até que você tenha terminado.
Em suma, você precisa parar qualquer coisa e tudo que grava em qualquer arquivo em /var/mail
. Você os reinicia mais tarde no passo 13.
-
execute uma% finalrsync
de /var/mail/
a /var/mail.new/
para sincronizar as alterações desde a última execução.
-
mv /var/mail /var/mail.old
-
mkdir /var/mail
- desmonte
/var/mail.new
e monte-o novamente como /var/mail
(talvez com mount --move /var/mail.new /var/mail
como mencionado por Austin Hemmelgarn)
-
examine a propriedade e as permissões de /var/mail.old
e certifique-se de que /var/mail
tenha exatamente o mesmo.
Isso é feito facilmente com:
chmod --reference=/var/mail.old /var/mail
(nota --reference
requer a versão GNU do chmod
, que é padrão no linux)
-
edite /etc/fstab
para que o novo sistema de arquivos seja sempre montado como /var/mail
após uma reinicialização
-
agora você pode reiniciar seus serviços MTA, pop e imap e permitir que os usuários façam o login novamente. monitore-o bem de perto para verificar se ele está funcionando corretamente.
-
como quiser, quando tiver certeza de que a nova configuração está funcionando bem e você não precisará mais do diretório de e-mail antigo, é possível excluir /var/mail.old
e todo o seu conteúdo.
BTW, você terminará com mais de 1TB em /var
depois de fazer isso. Isso pode ser excessivo para as suas necessidades.