Design adequado
Eu suponho que você é incapaz de simplesmente estender o sistema de arquivos em questão (usando lvextend && ext2online
), porque você não usa o LVM ou usa o tipo de sistema de arquivos errado.
Sua abordagem
O que você propôs pode funcionar se você sinalizar os daemons com SIGHUP (kill -1 pid). Obviamente, você precisaria mais tarde "mount -o bind / / somewhere" e limpar o que foi deixado abaixo do / var / log montado. Mas tem um cheiro ruim para mim, especialmente para a produção.
Evite tempo de inatividade, tenha um resultado limpo (mas complicado)
Esqueça a ideia "mount -o bind", crie uma nova partição LV /, mas não a monte ainda.
lsof | grep /var/log # lists open files in /var/log
Para cada daemon que tenha algum arquivo aberto (eu esperaria pelo menos syslog, inetd, sshd):
- reconfigure o daemon no para logar em / var / log
- atualize o daemon (
kill -1
ou/etc/init.d/script reload
) - confirme com
lsof | grep /var/log
que o daemon fechou seus arquivos
Monte sobre / var / log. Restaure configurações antigas, SIGHUP / recarregue daemons novamente.
Modo fácil (tempo de inatividade)
Crie uma nova partição LV / e monte-a corretamente em / var ou / var / log. A maneira mais fácil é derrubar o servidor no modo de manutenção (modo de usuário único) e usar o console real (não o ssh) para a operação.