É possível alterar on-line o ponto de montagem do diretório?

2

Suponha que eu tenha um servidor de produção com uma grande partição raiz que contenha tudo. Eu quero colocar um diretório, por exemplo /var , em uma partição separada, juntamente com todos os dados que ele possui. A maneira óbvia de copiar todos os dados para a nova partição e montá-la pode resultar em inconsistência de dados, já que as alterações em um sistema on-line podem ser imprevisíveis.

Eu estava pensando em algo do tipo:

  1. Monte a partição vazia em algum lugar;
  2. Copie todos os dados de /var para a nova partição;
  3. Iniciar exploração / bloqueio (enfileiramento?) de todos os pedidos de gravação para /var ;
  4. Sincronize as alterações finais com o rsync;
  5. Montar nova partição para /var ;
  6. Solte o bloqueio feito na etapa 3.

Os passos 3 e 6 são o que eu não sei fazer.

É algo assim possível sem tempo de inatividade? Se não sem tempo de inatividade, então pelo menos com um curto tempo de inatividade sem reiniciar o servidor?

    
por Mythoranium 08.02.2013 / 11:30

1 resposta

2

A menos que você já tenha criado seus sistemas de arquivos usando o LVM (e eu acho que você não fez isso porque você provavelmente não estaria perguntando se você fez isso), você realmente terá dificuldades para fazer isso 'on-line'. A árvore / var, por exemplo, tem muitos daemons com arquivos de log abertos continuamente, você achará difícil movê-los sem reiniciar o (s) daemon (es).

Como você vai ter que reiniciar o seu sistema, você pode simplesmente criar uma janela de manutenção e fazer off-line no modo de usuário único, onde ela deve ser tão simples quanto

  • renomear antigo / var para outra coisa
  • monte o novo / var
  • atualize o / etc / fstab para refletir as alterações
  • copiar dados
  • reinicialize para o nível de execução normal
por 08.02.2013 / 12:12

Tags