Como fazer backup de um blog do Ghost no Linux

A plataforma de blogs Ghost é maravilhosa para novos usuários que desejam hospedar seu próprio software, devido ao seu script de instalação automática. Infelizmente, não há script de backup automático. Como resultado, muitas instalações do Ghost ficam sem backups. Uma maneira fácil de fazer backup de um blog do Ghost é usar o gerenciador de backup integrado. Embora seja verdade que esse método não seja tão completo e não dê tanta liberdade, é útil em um piscar de olhos.

Para fazer backup de um blog do Ghost a partir da interface do Ghost, abra uma nova guia do navegador e acesse o seguinte URL:

https://myghostblog.com/ghost/settings/labs/

Na página Labs na interface da Web do Ghost, procure o botão “Exportar” e selecione-o. Clicar em Exportar permitirá que você faça um backup de todo o blog. Para restaurar esse tipo de backup posteriormente, vá para a mesma URL, clique em “Importar”, procure o backup e carregue-o. Logo após a importação, as configurações e os dados devem voltar ao que eram quando você fez o backup pela primeira vez.

Backup de linha de comando

O Ghost tem uma ferramenta de backup decente embutida em seu software, mas não oferece o mesmo tipo de segurança, automação e liberdade que pode vir de um backup por meio da linha de comando do Linux. Para fazer backup de um blog do Ghost em um host Linux, crie uma nova pasta. Essa pasta conterá todos os arquivos de backup e dados importantes pertencentes ao Ghost.

  Como instalar o Discord no Linux

No terminal do servidor, use o comando mkdir para criar uma nova pasta. Não faça isso como Root!

mkdir -p ~/ghost-blog-backup
mkdir -p ~/ghost-blog-backup/sql

A execução de mkdir cria um novo diretório na pasta /home/ do usuário conectado no momento. Este é um bom local para armazenar arquivos de backup, pois eles não serão perdidos em locais aleatórios no sistema de arquivos Linux.

Em seguida, use sqldump para exportar o banco de dados SQL do Ghost.

Observação: escreva Root em “username” e o nome do banco de dados fornecido ao Ghost durante a instalação.

mysqldump -u username -p databasename > db.ghost_blog.sql

Entre no diretório do Ghost usando o comando CD.

cd /var/www/ghost

Dentro do diretório do software Ghost, execute o ghost stop para desligar o software Ghost.

ghost stop

Com o software do servidor desligado, é seguro fazer uma cópia completa de tudo para ~/ghost-blog-backup.

cp -rp /var/www/ghost/* ~/ghost-blog-backup

A execução do comando CP com os sinalizadores RP garantirá que todas as permissões definidas pelo software de instalação do Ghost permaneçam intactas. A partir daqui, use o CD para sair de /var/www/ghost e voltar para /home/username.

cd ~/

Compactar backup

Todos os arquivos importantes do blog do Ghost estão em ~/ghost-blog-backup, com suas permissões intactas. A próxima etapa é compactar esses arquivos em um único arquivo Tar. Criar um arquivo Tar do Ghost torna muito mais fácil transportar backups de servidores, carregar para locais como Dropbox, NextCloud ou compartilhar com colegas de trabalho.

  3 maneiras fáceis de criptografar arquivos no Linux

Para criar um novo arquivo compactado do backup do Ghost, use o comando tar no terminal.

Nota: certifique-se de copiar o comando exatamente. Não fazer isso pode não preservar as permissões do arquivo durante o processo de compactação!

tar -zcvpf ghost-blog-backup.tar.gz /home/username/ghost-blog-backup

Criptografar Backup

A próxima etapa no processo de backup é crítica. Sem essa etapa, o banco de dados do seu blog do Ghost, os arquivos críticos do sistema e muito mais ficam expostos e acessíveis a qualquer pessoa que possa acessar onde você armazenou o arquivo Tar. Felizmente, é muito fácil criptografar um arquivo Tar no Linux.

A maneira mais rápida de criptografar a partir da linha de comando do Linux é usar o GnuPG. Para criptografar, certifique-se de que “gpg” esteja instalado. A partir daí, execute o seguinte comando:

sudo gpg -c ghost-blog-backup.tar.gz

A execução do gpg com o sinalizador c iniciará instantaneamente o processo de criptografia. Quando o processo termina, o resultado final é ghost-blog-backup.tar.gz.gpg.

  Como executar aplicativos Android no Linux

Agora que o backup está criptografado com GPG, é seguro excluir o arquivo Tar não criptografado. Para excluí-lo, use o comando rm.

rm ghost-blog-backup.tar.gz

Restaurar backup

A restauração de um backup do Ghost em um novo sistema começa com a descriptografia do backup. Mova ghost-blog-backup.tar.gz.gpg para /home/username/ no servidor e descriptografe com:

gpg ghost-blog-backup.tar.gz.gpg

Em seguida, extraia o arquivo não criptografado.

tar -xvpf ghost-blog-backup.tar.gz

Usando o CD, mova o terminal para a pasta SQL e use o comando mysqldump para restaurar o banco de dados.

cd ~/ghost-blog-backup/sql

sudo -s

mysqldump -u username -p databasename <  db.ghost_blog.sql
rm -rf /home/username/ghost-blog-backup/sql

Após restaurar o banco de dados, mova os arquivos do sistema para o local, com CP.

cp -rp /home/username/ghost-blog-backup/* /var/www/

Depois que tudo estiver restaurado, reinstale o Ghost-cli com o NPM.

Nota: pode ser necessário reinstalar o NodeJS, Yarn, etc. Consulte nosso tutorial para obter ajuda aqui.

sudo npm i -g ghost-cli

Por fim, inicie o software do servidor Ghost com:

ghost start

A execução do comando ghost start deve ativar instantaneamente o serviço de blog do Ghost no servidor.