
Ubuntu/Debian マシンを使用しています。
専用の Web サーバーを社内のローカル ロケーションにバックアップしたいと考えています。これにはさまざまな理由があります。Web ホストが適切にバックアップすることはわかっていますが、新しい Web サイトをリリースし、クライアントが古いデータにアクセスしたい場合や、サイトを以前のバージョンにロールバックしたい場合など、さまざまな状況が発生することがあります。
これを実行するには rsync と cron を使用する必要があることはわかっていますが、それ以上のことはよくわかりません。目的は、最新のバックアップを社内サーバーに取得し、そのバックアップを、以前のバックアップも保存されているネットワーク接続ストレージ デバイスにプッシュすることです。
rsync を使用すると、社内サーバーに常に最新バージョンが保存されることになりますか? rsync は更新されたファイルのみを転送します。その後、そこから cron を実行して、rsync または SMB 経由で NAS ボックスにプッシュできますか?
そこで質問なのですが、私の方法が正しいと仮定すると、rsync を使用してリモート サーバーの /home ディレクトリをプルダウンするにはどうすればよいでしょうか? これは簡単なプロセスですか? rsync の初心者向けガイドはありますか?
ローカル マシンから rsync を実行できますか? 静的 IP アドレスがないので、これを cron して、毎晩 (または、かかる時間と占有するスペースに応じて毎週) 自動的にバックアップを実行したいと思います。
答え1
一般的に、あなたの考えはすべて正しい方向に向かっています。あなたの質問に対する具体的な答えは次のとおりです。
「rsync または SMB 経由で NAS ボックスにプッシュする cron を実行できますか?」
そのとおり。
/home
「rsync を使用してリモート サーバーのディレクトリをダウンロードするにはどうすればよいですか? 簡単ですか?」はい、私が使用するコマンドは次のとおりです。チェックrsync ドキュメント説明:
rsync -vrltpz --force --delete -e ssh [email protected]:/home/ /backups/myserver
初心者向けガイドはありますか?
多くの、ここに良い料理本があります
ローカルマシンから rsync を実行できますか?
はい。上記のコマンドをローカルマシンから実行します。
(cron でそれを実行するにはどうすればよいですか)?
これも難しくありません。cron
crontab
テーブルを編集するには、次を使用します。$ crontab -e
エディターが表示されます。1 日に 1 回バックアップするには、次のように入力します。
[email protected] @daily rsync -vrltpz --force --delete ...
Cronは実行タイミングを非常に強力に制御します。Googleで検索すると、たくさんの例が見つかります。crontab ドキュメント。