Linux에서 Ghost 블로그를 백업하는 방법

Ghost 블로깅 플랫폼은 자동 설치 스크립트로 인해 자신의 소프트웨어를 호스팅하려는 신규 사용자에게 적합합니다. 불행히도 자동 백업 스크립트는 없습니다. 결과적으로 많은 Ghost 설치가 백업 없이 진행됩니다. Ghost 블로그를 백업하는 쉬운 방법은 통합 백업 관리자를 사용하는 것입니다. 이 방법이 그다지 철저하지 않고 자유도가 많지 않은 것은 사실이지만 약간의 경우에 유용합니다.

Ghost 인터페이스에서 Ghost 블로그를 백업하려면 새 브라우저 탭을 열고 다음 URL로 이동하십시오.

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

Ghost 웹 인터페이스의 실험실 페이지에서 “내보내기” 버튼을 찾아 선택합니다. 내보내기를 클릭하면 전체 블로그를 백업할 수 있습니다. 이 유형의 백업을 나중에 복원하려면 동일한 URL로 이동하여 “가져오기”를 클릭하고 백업을 찾아 로드합니다. 가져온 직후 설정과 데이터는 처음 백업했을 때의 상태로 돌아갑니다.

명령줄 백업

Ghost의 소프트웨어에는 적절한 백업 도구가 내장되어 있지만 Linux 명령줄을 통한 백업에서 얻을 수 있는 것과 동일한 유형의 보안, 자동화 및 자유를 제공하지 않습니다. Linux 호스트에서 Ghost 블로그를 백업하려면 새 폴더를 만드십시오. 이 폴더에는 Ghost와 관련된 모든 중요한 백업 파일과 데이터가 들어 있습니다.

서버 터미널에서 mkdir 명령을 사용하여 새 폴더를 만듭니다. 루트로 이 작업을 수행하지 마십시오!

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

mkdir을 실행하면 현재 로그인한 사용자의 /home/ 폴더에 새 디렉토리가 생성됩니다. Linux 파일 시스템의 임의 위치에서 손실되지 않으므로 백업 파일을 보관하기에 좋은 위치입니다.

그런 다음 sqldump를 사용하여 Ghost SQL 데이터베이스를 내보냅니다.

참고: “사용자 이름”에 루트를 작성하고 설치 중에 Ghost에 제공된 데이터베이스 이름을 작성하십시오.

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

CD 명령을 사용하여 Ghost 디렉토리를 입력하십시오.

cd /var/www/ghost

Ghost 소프트웨어 디렉토리 내에서 Ghost stop을 실행하여 Ghost 소프트웨어를 끄십시오.

ghost stop

서버 소프트웨어를 끈 상태에서 ~/ghost-blog-backup에 대한 모든 것의 완전한 사본을 만드는 것이 안전합니다.

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

RP 플래그와 함께 CP 명령을 실행하면 Ghost 설치 소프트웨어에서 설정한 모든 권한이 그대로 유지됩니다. 여기에서 CD를 사용하여 /var/www/ghost에서 나와 /home/username으로 돌아갑니다.

cd ~/

압축 백업

모든 중요한 Ghost 블로그 파일은 ~/ghost-blog-backup에 있으며 권한은 그대로 유지됩니다. 다음 단계는 이러한 파일을 단일 Tar 아카이브로 압축하는 것입니다. Ghost의 Tar 아카이브를 생성하면 서버에서 백업을 전송하거나 Dropbox, NextCloud와 같은 장소로 로드하거나 동료와 공유하기가 훨씬 쉬워집니다.

  Linux에 Darktable을 설치하는 방법

Ghost 백업의 새 압축 아카이브를 만들려면 터미널에서 tar 명령을 사용하십시오.

참고: 명령을 정확히 복사해야 합니다. 그렇게 하지 않으면 압축 프로세스 동안 파일 권한을 유지하지 못할 수 있습니다!

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

암호화 백업

백업 프로세스의 다음 단계는 중요한 단계입니다. 이 단계가 없으면 Ghost 블로그의 데이터베이스, 중요한 시스템 파일 등이 노출되고 Tar 아카이브를 저장한 위치에 액세스할 수 있는 모든 사람이 액세스할 수 있습니다. 운 좋게도 Linux에서 Tar 아카이브를 암호화하는 것은 매우 쉽습니다.

Linux 명령줄에서 암호화하는 가장 빠른 방법은 GnuPG를 사용하는 것입니다. 암호화하려면 “gpg”가 설치되어 있는지 확인하십시오. 거기에서 다음 명령을 실행합니다.

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

c 플래그와 함께 gpg를 실행하면 암호화 프로세스가 즉시 시작됩니다. 프로세스가 완료되면 최종 결과는 ghost-blog-backup.tar.gz.gpg입니다.

이제 백업이 GPG로 암호화되었으므로 암호화되지 않은 Tar 아카이브를 삭제하는 것이 안전합니다. 삭제하려면 rm 명령을 사용하십시오.

rm ghost-blog-backup.tar.gz

백업 복원

새 시스템에서 Ghost 백업 복원은 백업 암호 해독으로 시작됩니다. Ghost-blog-backup.tar.gz.gpg를 서버의 /home/username/으로 이동하고 다음을 사용하여 암호를 해독합니다.

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

다음으로 암호화되지 않은 아카이브를 추출합니다.

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

CD를 사용하여 터미널을 SQL 폴더로 이동하고 mysqldump 명령을 사용하여 데이터베이스를 복원합니다.

cd ~/ghost-blog-backup/sql

sudo -s

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

데이터베이스를 복원한 후 CP를 사용하여 시스템 파일을 제자리로 이동합니다.

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

모든 것이 복원되면 NPM과 함께 Ghost-cli를 다시 설치하십시오.

참고: NodeJS, Yarn 등을 다시 설치해야 할 수도 있습니다. 여기에서 도움말을 보려면 자습서를 참조하세요.

sudo npm i -g ghost-cli

마지막으로 다음을 사용하여 Ghost 서버 소프트웨어를 시작하십시오.

ghost start

고스트 시작 명령을 실행하면 서버에서 고스트 블로깅 서비스가 즉시 켜집니다.