Como fazer backup de um site Drupal no Linux

Usar o Drupal para gerenciar seu conteúdo é uma ótima maneira de tirar o máximo proveito de um site. Especialmente porque possui dezenas de ferramentas, plugins e recursos para oferecer. Apesar de todas as grandes coisas que o Drupal faz, o backup não é uma delas. Esta é uma chatice real para um software CMS estelar. Como não há uma ótima ferramenta que você possa usar para fazer backup de um site Drupal Linux, você precisa fazer isso manualmente.

Pasta de backup

Para fazer backup de um site Drupal no Linux, você precisa criar uma pasta para armazenar os arquivos exportados. No terminal, use o comando mkdir para criar uma pasta de backup.

Primeiro, faça login como root com su.

su -

Como alternativa, use sudo -s para obter root se você não souber a senha do sistema.

sudo -s

Em seguida, crie uma pasta de backup em /.

mkdir -p drupal-backups

Exportar arquivos SQL

Em seguida, você precisa exportar todos os arquivos do banco de dados SQL. Os arquivos SQL devem ser tratados pela conta root. Não tente fazer esse backup com um usuário comum.

  Morrowind no Linux com OpenMW

Na pasta drupal-backups, crie uma subpasta SQL e uma subpasta de instalação.

mkdir -p /drupal-backups/sql

mkdir -p /drupal-backups/installation-files

mkdir -p /drupal-backups/apache2-conf

Use mysqldump para exportar seus arquivos de banco de dados Drupal da instalação SQL no servidor para a pasta de backup.

Nota: antes de usar o comando abaixo, altere “username” e “databasename” para seu nome de usuário SQL e o nome do banco de dados no SQL que o Drupal usa. Na maioria das instalações, o nome padrão do banco de dados SQL é “drupal”.

cd drupal-backups/sql

mysqldump -u username -p databasename > db.drupal_backup-1.sql

Fazer backup dos arquivos de instalação

O backup dos arquivos do banco de dados principal é feito. O próximo passo é fazer backup da instalação real do Drupal. Para fazer isso, você precisará primeiro fazer uma cópia completa de tudo de /var/www//html/. Se você seguiu nosso guia para instalar o Drupal, o núcleo do seu site Drupal no Linux está diretamente dentro de /var/www/html, sem subpastas. Usando o comando cp, faça uma cópia completa da pasta html e coloque-a em /drupal-backups/files.

Nota: se sua instalação for /var/www/html/drupal, ou algo semelhante, altere o comando cp para atender às suas necessidades.

cp -rp /var/www/html/*  /drupal-backups/installation-files/

Fazer o backup da instalação do Drupal é importante. Nesses arquivos estão importantes configurações do site, temas e etc. Ainda assim, não são os únicos arquivos que precisam de backup. Outro arquivo de chave é a configuração do Apache2. Este arquivo de configuração informa ao servidor web Apache onde está sua instalação do Drupal e como carregá-la. Sem este arquivo, o backup é inútil.

  4 melhores distribuições Linux para instalar em um Google Chromebook

Para criar um backup do arquivo de configuração do Apache2, execute o seguinte comando:

cp /etc/apache2/sites-available/drupal.conf /drupal-backups/apache2-conf/

Compactar arquivos de backup

Agora que todos os arquivos necessários do servidor Drupal foram copiados e estão prontos para backup, é hora de criar um arquivo Tar. A compactação tornará a movimentação dos arquivos de backup muito mais fácil. Para criar um arquivo Tar dos seus arquivos de backup do Drupal, execute o seguinte comando:

tar -zcvpf drupal-website-backup.tar.gz /drupal-backups

Compactar os backups é uma boa ideia, mas não é seguro. Se você for salvar seu site Drupal em um site de armazenamento em nuvem pública, carregar o arquivo Tar, não criptografado significa que qualquer pessoa pode mexer nos valores dentro dos arquivos do banco de dados SQL, nos arquivos do site ou pior.

É melhor criptografar este arquivo antes de fazer qualquer outra coisa. Para criptografar, certifique-se de que o GnuPG esteja instalado. Não tem? Procure no gerenciador de pacotes do seu servidor Linux por “gpg” e instale-o. Depois de instalado, execute o seguinte comando para criptografar totalmente seu arquivo de backup do Drupal.

gpg -c drupal-website-backup.tar.gz

A execução de gpg -c dirá ao GnuPG que você deseja criptografar o arquivo Tar e solicitará uma senha para definir o novo arquivo criptografado GPG. Digite uma senha segura e aguarde a conclusão da criptografia. Quando o GPG terminar, sinta-se à vontade para copiar drupal-website-backup.tar.gz.gpg e carregá-lo para onde você planeja manter seu backup.

  Como jogar Stick Fight: The Game no Linux

Restaurar backup

Baixe o arquivo de backup do Drupal GPG para o servidor onde você deseja restaurar o backup. Então, faça o seguinte:

su -

ou

sudo -s

Crie um local para armazenar o backup.

mkdir -p /drupal-restore/

Mova o arquivo GPG para a nova pasta de backup.

mv /folder/where/drupal-website-backup/is/drupal-website-backup.tar.gz.gpg /drupal-restore/

Descriptografar o backup, usando GPG.

gpg drupal-website-backup.tar.gz.gpg

Extraia o backup.

tar -xvpf drupal-website-backup.tar.gz

Digite a pasta de backup extraída.

cd drupal-restore/drupal-backups

Agora é hora de começar a restauração. Comece importando os arquivos do Drupal SQL para o MySQL.

cd sql
mysqldump -u username -p drupal < db.drupal_backup-1.sql

Agora que o banco de dados está instalado no sistema, restaure o restante dos arquivos.

cp /drupal-restore/drupal-backups/apache2-conf/drupal.conf /etc/apache2/sites-available/
sudo ln -s /etc/apache2/sites-available/drupal.conf /etc/apache2/sites-enabled/drupal.conf

cp -rp /drupal-restore/drupal-backups/installation-files/* /var/www/html/

Mover os arquivos para o lugar é a última etapa crítica no processo de restauração.

Quando tudo estiver bem, reinicie o servidor Linux. Embora possa ser irritante reiniciar, é uma boa ideia. Fazer uma reinicialização garantirá que todos os serviços necessários para executar o Drupal corretamente voltem a ficar online. Quando o servidor voltar a ficar online, tudo deve estar como estava.