2026年8月11日

2026年8月11日

バックアップの圧縮・暗号化・転送を一括自動化する方法

ステップ1: 必要なツールと環境の準備

まず、バックアップを圧縮・暗号化・転送するためのツールが必要です。この記事ではtar, gpg, rsyncを使用します。

# tar, gpg, rsyncがインストールされていない場合にインストール
sudo apt-get update && sudo apt-get install -y tar gpg rsync

ステップ2: バックアップの準備と圧縮

ステップ2-1: WordPressデータのバックアップ

WordPressサイトのデータを安全にバックアップするために、/var/www/htmlディレクトリからファイルをコピーします。

# ディレクトリ内の全ファイルをtarで圧縮
tar -czvf /path/to/backup.tar.gz /var/www/html

ステップ2-2: 圧縮されたファイルの暗号化

圧縮されたバックアップファイルは、その後の転送や保存の安全性のために暗号化します。

# GPGを使用してファイルを暗号化
gpg --output /path/to/backup.tar.gz.gpg --symmetric /path/to/backup.tar.gz

ステップ2-3: 暗号化されたファイルの削除

圧縮ファイルは不要になったため、その場で削除します。

# 圧縮ファイルを削除
rm -f /path/to/backup.tar.gz

ステップ3: 転送と保存

ステップ3-1: サーバー間のファイル転送

サーバー間で暗号化されたバックアップファイルを転送するにはrsyncを使用します。ここでは、別のサーバーにファイルをコピーします。

# rsyncを使ってファイルをリモートサーバーに転送
rsync -avz /path/to/backup.tar.gz.gpg user@remote.server:/path/to/destination/

ステップ3-2: ファイルの保存

バックアップが成功したら、目的の場所にファイルを保存します。

# ディレクトリ作成(必要であれば)
mkdir -p /path/to/backup/destination/

# 転送されたファイルを移動させる
mv /path/to/backup.tar.gz.gpg /path/to/backup/destination/

ステップ4: 自動化と監視

ステップ4-1: シェルスクリプトの作成

一連の手順を自動化するために、シェルスクリプトを作成します。

#!/bin/bash

# バックアップディレクトリ
BACKUP_DIR="/path/to/backup"

# WordPressデータディレクトリ
WP_DIR="/var/www/html"

# 保存先ディレクトリ
REMOTE_BACKUP_DIR="user@remote.server:/path/to/destination/"

# ファイル名とパス
TAR_FILE="${BACKUP_DIR}/backup.tar.gz"
GPG_FILE="${BACKUP_DIR}/backup.tar.gz.gpg"

# バックアップ実行
tar -czvf $TAR_FILE $WP_DIR

# 圧縮ファイルの暗号化
gpg --output $GPG_FILE --symmetric $TAR_FILE
rm -f $TAR_FILE  # 圧縮ファイル削除

# 転送先のディレクトリ作成
mkdir -p $(dirname "$REMOTE_BACKUP_DIR")

# rsyncを使ってファイルを転送
rsync -avz --progress $GPG_FILE $REMOTE_BACKUP_DIR

rm -f $GPG_FILE  # ダイナミックに生成された暗号化ファイル削除

ステップ4-2: シェルスクリプトの実行と定期実行設定

シェルスクリプトを実行し、バックアップを作成します。

# シェルスクリプトを実行
/path/to/backup_script.sh

定期的にこのスクリプトを実行するように設定するためにcronを使用します。

# crontabに追加
echo "0 2 * * * /path/to/backup_script.sh" | sudo tee -a /etc/crontab > /dev/null

# cronサービスの再起動
sudo service cron restart

注意事項

  • セキュリティ上の注意: GPGキーの安全性を確保し、適切なアクセス制御を設定してください。
  • パフォーマンス/運用上の注意: 重要なデータは頻繁にバックアップし、一貫性のある検証を行うことが推奨されます。

まとめ

1. 必要なツールのインストール: tar, gpg, rsyncがインストールされていることを確認します。

2. WordPressデータのバックアップ: WordPressのデータを安全なフォルダからコピーして圧縮します。

3. ファイルの暗号化と転送: 圧縮されたファイルは暗号化され、サーバー間で転送されます。

4. 自動化と定期実行: シェルスクリプトを作成し、定期的にバックアップを作成します。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ