Se /var e /srv estiverem no mesmo sistema de arquivos, você poderá mover atomicamente o diretório www de um para o outro:
mv /var/www /srv/
Quando você faz isso, qualquer processo que tenha um arquivo aberto em www manterá esse arquivo aberto.
Se /var e /srv estiverem em sistemas de arquivos diferentes, é melhor parar os serviços que usam os arquivos em www antes de fazer a mudança, porque haverá um período de transição durante o qual os arquivos serão copiado e depois apagado.
Nesse caso, se você quiser minimizar o tempo de inatividade:
-
Copie os arquivos, respeitando as permissões:
cp -a /var/www /srv/
- Edite os arquivos de configuração para apontar para
/srv/www em vez de /var/www .
- Remova os arquivos de
/var/www .
Se você copiar e depois remover, haverá um período de transição durante o qual existem duas cópias dos arquivos. Portanto, você deve certificar-se de que nada seja escrito no diretório www durante o período de transição; caso contrário, as duas cópias ficarão fora de sincronia e alguns dados poderão ser perdidos.
Para ver o que precisa ser alterado:
-
Pesquise arquivos em /etc e, talvez, em /var/www , para encontrar referências a /var/www :
grep -r '/var/www' /etc /var/www
-
Procure por qualquer link simbólico absoluto que faça referência a /var/www .
find /etc /var/www -lname '/var/www*'