Nota: O seguinte artigo irá ajudá-lo com: Como fazer backup e restaurar um site no Linux
Você já se perguntou como fazer backup de um site no Linux? Jack Wallen mostra como pode ser fácil.
Desastre acontece. Ou, se o desastre ainda não aconteceu, você pode se encontrar em uma situação em que precisa migrar um site de um servidor ou host para outro. Quando qualquer coisa acontece, o que você faz? Pânico? Não. Você segue com seu plano de backup e restauração. Você tem um, certo? Não? Ok, vamos corrigir isso.
Vou orientá-lo no processo de backup e restauração de um site hospedado no Linux. Entenda, esse processo não funcionará para todos os sites (porque todas as coisas não são iguais), mas deve fornecer uma base para trabalhar.
Dito isso, vamos.
O que você precisará
Eu vou assumir que seu site depende de um banco de dados MySQL, roda em Apache e /var/www/html é sua raiz de documento. Para fazer esse backup/restauração acontecer, você precisará de um usuário com privilégios de root.
VEJA: Mais de 40 termos de código aberto e Linux que você precisa conhecer (TechRepublic )
Como fazer backup do seu banco de dados
Primeiro, vou demonstrar usando o WordPress. Digamos que nosso banco de dados seja wordpressdb. Temos que criar um backup disso antes de fazer qualquer outra coisa. Você pode considerar colocar seu site no modo de manutenção (para que os usuários não estejam ativamente no site e menos dados sejam gravados no banco de dados). Você pode colocar seu site WordPress no modo de manutenção com plugins de terceiros, como WP Maintenance Mode ou SeedProd.
Quando seu site estiver em modo de manutenção, faça backup do banco de dados fazendo no servidor de hospedagem e emitindo o comando:
sudo mysqldump wordpressdb > wordpressdb-backup.sql
Você também pode adicionar a data ao nome do arquivo de backup, como wordpress-backup-DEC302021.sql.
Como fazer backup do WordPress
Agora que o backup do seu banco de dados foi feito, é hora de fazer backup do diretório do WordPress. Vamos supor que o diretório seja /var/www/html/wordpress. Para fazer backup desse diretório, emita o comando:
sudo tar -vzf wordpress-backup.tar.gz /var/www/html/wordpress
As opções acima são:
- c – criar um arquivo
- p – preservar permissões
- v – mostrar saída detalhada
- z – compactar o arquivo
- f – criar um arquivo
Neste ponto você tem os dois arquivos:
- wordpressdb-backup.sql
- wordpress-backup.tar.gz
Em seguida, você desejará fazer uma cópia do arquivo de configuração do Apache. Supondo que o arquivo seja wordpress.conf, faça uma cópia dele com:
sudo /etc/apache2/sites-available/wordpress.conf ~/wordpress.conf
Por fim, se você estiver usando certificados SSL em seu servidor, também poderá copiá-los.
Como restaurar o WordPress
Ok, agora é hora da restauração. Vou assumir que estamos restaurando no mesmo servidor. Se você estiver restaurando em um novo servidor, precisará começar certificando-se de ter todas as dependências instaladas (a pilha LAMP completa) com um comando como:
sudo apt install apache2 ghostscript libapache2-mod-php mysql-server php php-bcmath php-curl php-imagick php-intl php-json php-mbstring php-mysql php-xml php-zip -y
Vamos supor que você tenha tudo o que o WordPress requer instalado. A primeira coisa que faremos é restaurar o banco de dados com o comando:
sudo mysql wordpressdb
Em seguida, restauraremos o diretório de backup para a raiz do documento Apache com:
tar -xzvf wordpress-backup.tar.gz
sudo mv wordpress /var/www/html/
Mova seu arquivo de configuração do apache com:
sudo mv wordpress.conf /etc/apache2/sites-available/
Habilite o site com:
sudo a2ensite wordpress
Agora você deve conseguir ar o site WordPress como fazia antes. Se você colocar o site no modo de manutenção antes de fazer backup, será necessário tirá-lo do modo de manutenção para que os usuários possam á-lo.
E isso é tudo para fazer backup e restaurar um site no Linux. Claro, isso é muito básico. Se você tiver um site muito mais complicado, provavelmente haverá mais etapas envolvidas. No entanto, isso lhe dará pelo menos uma compreensão geral de como o processo funciona.