すべてのジョブがリモートサーバーに保存されるので、毎月サーバーを毎週自動的にバックアップしたいと思います。私のサーバーはCentos 5.5を実行しており、オンライン検索中にrsyncというツールを見つけました。端末では、次のコマンドを使用して手動で最初の更新を受け取りました。
sudo rsync -chavzP --stats USERNAME@IPADDRES: PATH_TO_BACKUP LOCAL_PATH_TO_BACKUP
その後、そのユーザーのパスワードを求めるメッセージが表示されます。ボブは私のおじさんです。
これにより、リモートサーバーからローカルデバイスに必要なファイルがバックアップされます。しかし、これを自動化する方法を知っている人はいますか?毎週日曜日にこのスクリプトを自動的に実行するのが好きですか?
編集する
必要なファイルを管理者に直接バックアップし、そのファイルをリモートサーバーからローカルサーバーにコピーするように要求したことを忘れました。
答え1
リモートサーバーで常に機能してアクセスできるローカルシステムにバックアップしているとします。
サーバーに公開鍵認証を設定することから始めます。リモートサーバーから
~# ssh-keygen
デフォルト値を受け入れ、パスワードを入力しないでください。これにより、キーはパスワードなしで機能します。それから
~# ssh-copy-id [email protected]
そして、ローカルサーバーのユーザーパスワードを入力してください。テストしてみてください:
~# ssh [email protected]
パスワードなしでログインする必要があります。
次に、適切なrsyncコマンドを実行しているリモートサーバーにcronジョブを追加します。たとえば、
~# vim /etc/cron.daily/backup
#!/bin/sh
rsync -avq /sourcedir1 /sourcedir2 [email protected]:/destinationdir
~# chmod 755 /etc/cron.daily/backup
まず、-qフラグなしでライブシェルでコマンドをテストして、すべてが正常であることを確認します。クローンジョブは毎晩実行されます。 /etc/cron.weeklyなどに同様のスクリプトを置くことができます。
状況に応じてプロセス全体を再開し、ローカルシステムでスクリプト/クローン操作を設定できます。