CronでのWordPressサイトのバックアップ結果報告

Posted by Akkey on 2026/03/29

昨日、WordPressのファイルとDBをバックアップするCronを作成しました。

その時の記事はこちら

本日、Cronによって実行されたと思いますので結果を見ていきます。

EC2にログが出ているはずなので、EC2にSSMで接続します。

そしてログを見てみます。

tail -n 50 /opt/wordpress-backup/backup.log

すると、

=== Backup start: 20260329_030001 ===
[1/4] Dump database...
[2/4] Compress database dump...
[3/4] Archive wordpress files...
tar: Removing leading `/' from member names
[4/4] Upload to S3...
upload: ../../opt/wordpress-backup/20260329_030001/db_20260329_030001.sql.gz to s3://akkeys-lifework-lab-backup/wordpress/db/db_20260329_030001.sql.gz
upload: ../../opt/wordpress-backup/20260329_030001/wp_files_20260329_030001.tar.gz to s3://akkeys-lifework-lab-backup/wordpress/files/wp_files_20260329_030001.tar.gz
=== Backup complete: 20260329_030001 ===

というログで最後に「Backup complete」と出ていた通り、ログをみる限りは成功している模様。しかし、肝心なのはS3にバックアップファイルが保存されていることなので、S3側も確認してみます。

aws s3 ls s3://akkeys-lifework-lab-backup/wordpress/db/
aws s3 ls s3://akkeys-lifework-lab-backup/wordpress/files/

akkeys-lifework-lab-backup はバックアップ用S3バケットの名前。wordpress/db/とかwordpress/files/はシェルの中でつけているバックアップ用のプレフィックスです。で、コマンド実行結果が・・・

sh-4.2$ aws s3 ls s3://akkeys-lifework-lab-backup/wordpress/db/
2026-03-28 10:31:40     490089 db_20260328_103115.sql.gz
2026-03-29 03:00:35     503502 db_20260329_030001.sql.gz
sh-4.2$ aws s3 ls s3://akkeys-lifework-lab-backup/wordpress/files/
2026-03-28 10:31:40  329376481 wp_files_20260328_103115.tar.gz
2026-03-29 03:00:35  334599141 wp_files_20260329_030001.tar.gz

でした。無事S3に転送されいてるようです!これにてバックアップスクリプトの作成と自動化は完了・・と言いたいところですが、まだ気になる点があります。

  • Cronの実行がUTCの時間になってる
  • EC2に作成したバックアップファイルがずっと残っちゃう
  • S3に作成したバックアップファイルがずっと残っちゃう
  • S3のコストってどんな感じ?

今日は疲れたのでここまでとして、あとはまた来週やりたいと思います。

・・・と思ったんだけど!

そもそも来週までEC2の容量が持つか?が気になる・・・ギリギリスペックで運用してるし。

のでこちらのコマンドで確認。

df -h

でEC2のディスクの状態を確認してみると、

sh-4.2$ df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        954M     0  954M   0% /dev
tmpfs           963M     0  963M   0% /dev/shm
tmpfs           963M  360K  962M   1% /run
tmpfs           963M     0  963M   0% /sys/fs/cgroup
/dev/nvme0n1p1  8.0G  6.8G  1.2G  86% /

上のほう4つはメモリなので、肝心なのは一番下の「/dev/nvme0n1p1 8.0G 6.8G 1.2G 86% /」。

つまり、1.2Gしか空いてなくて86%が使用中ってわけですね。結構ギリギリ。ではバックアップファイルのサイズはどのくらいなのか?

du -sh /opt/wordpress-backup/20260329_030001

で、今日できたファイルのサイズをみてみますと。

320M    /opt/wordpress-backup/20260329_030001

ってわけで一撃320MBと結構大きい。画像が多いからかな。とにかくこれが7日溜まると想定すると、余裕で空き容量を超えますね・・。今日はもうちょっと頑張らないとダメか。。

とりあえず、昨日分と今日分はS3転送済みなのでEC2から消します。

rm -rf /opt/wordpress-backup/20260328_* /opt/wordpress-backup/20260329_*

これで多少、容量が開いたけどもこのままではおそらく10日と持たないので、S3に転送が終わったファイルはEC2から削除するようシェルに追記します。

echo "[5/5] Remove local backup files..."
rm -rf "${WORK_DIR}"

これをS3へのコピーコマンドの後に追加してバックアップシェルを保存します。

これでEC2の容量はしばらく大丈夫のはず!しかし、思ったよりEC2の容量がないな・・。やっぱり画像をEC2に保存している弊害ですかね。ここら辺もちょっと考えていかないと。というわけで今日はここまで。ではまた。