###データ自動でバックアップするシェルスクリプト

データのバックアップと保守のためのスクリプトになります。 このスクリプトはW、ebサイトのバックアップを自動で行うためのものでバックアップに指定されたディレクトリをバックアップ用のディレクトリにrsyncを使用してコピーし定期的にバックアップをする機能となります。 ファイルの定期バックアップを自動化しサーバーの保守効率化を実現します。
auto_backup.zip
[php]
(約6kb)
ダウンロード

###主な機能

- WebサイトのディレクトリをArchiveディレクトリにrsyncコマンドでコピー
- 7日間分の差分バックアップを保持
- 毎月1日に .tar.gz 形式で全体バックアップ
- 50ヶ月分の全体バックアップを保持

###設定

1.バックアップ対象ディレクトリ: スクリプト内のTDIR変数で設定します。デフォルトはホームディレクトリです。
2.バックアップ保存先ディレクトリ: スクリプト内のBDIR変数で設定。デフォルトはホームディレクトリ内のArchiveフォルダ。
3.rsyncコマンドの設定: バックアップに使用するrsyncコマンドのオプションを設定。
4.バックアップ保持期間: RETENTION_DAYS変数で設定。デフォルトは30日。
5.除外設定: バックアップから除外するファイルやディレクトリのリスト。

###実行方法

cronを使用して自動実行を行います。
例えば、毎日午前3時3分に実行する場合cron設定に
3 3 * * * /bin/bash $HOME/Archive/cron_backup.sh

と記述します。
画像はX-serverでの設定例

###スクリプトの内容

-古いバックアップのローテーション:指定した保持期間を超えたバックアップを削除。
-Rsyncによるバックアップ実行:指定されたディレクトリから保存先ディレクトリへのバックアップ。
-月一回の完全バックアップ:月初に実行され、tar.gz形式で保存。

###注意点

-Cronの設定はシステムの環境によって異なる可能性があります。適切な設定を確認してください。
-バックアップデータのサイズに応じて、ディスク容量を適切に管理する必要があります。
-除外設定は、バックアップ不要なファイルやディレクトリに対して適切に行ってください。

###メモ

-rsyncコマンドは効率的なファイル転送・同期ツールで、変更された部分のみを転送し、データのバックアップやミラーリングに広く使われる.
-このスクリプトでは、rsyncはウェブサイトのデータを定期的にバックアップし、古いバックアップを自動的に削除するために使用されている.
-[which rsync]コマンドで各環境のパスを調べて利用.

auto_backup.zip
[php]
(約6kb)
ダウンロード