リモートサーバーからのバックアップ

リモートサーバーからのバックアップ

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 でそれを実行するにはどうすればよいですか)?

    これも難しくありません。croncrontabテーブルを編集するには、次を使用します。

    $ crontab -e
    

    エディターが表示されます。1 日に 1 回バックアップするには、次のように入力します。

    [email protected]
    @daily rsync -vrltpz --force --delete ... 
    

    Cronは実行タイミングを非常に強力に制御します。Googleで検索すると、たくさんの例が見つかります。crontab ドキュメント

関連情報