sysadmin向けPowershellスクリプト:サーバーからPCへバックアップを定期的にダウンロード

良い点ですね。スクリプトありがとうございます。rsyncのバージョンを共有します :slight_smile: 。

以下の例では、sqlと添付ファイルは別々に同期されます。添付ファイルをバックアップファイルに含める必要はありません。古いバックアップを削除する必要もありません。

cwrsync をインストールするために Chocolatey を使用しています。インストール後、cmdファイルに数行を追加し、スケジュールを作成するだけで済みます。

C:\ProgramData\chocolatey\lib\rsync\tools\cwrsync.cmd

例:

rsync -rvm --delete --ignore-errors --ignore-existing --size-only --chmod=ugo=rwX -e "ssh -i /cygdrive/c/Users/user1/.ssh/id_rsa" login@host:/var/discourse/shared/standalone/backups/default/ /cygdrive/d/backup/forum/db/

rsync -rvm --delete --ignore-errors --ignore-existing --size-only --chmod=ugo=rwX -e "ssh -i /cygdrive/c/Users/user1/.ssh/id_rsa" login@host:/var/discourse/shared/standalone/uploads/ /cygdrive/d/backup/forum/uploads/

注1:C: の代わりに /cygdrive/c/ を使用してください。参照と構文については、cmdファイルをお読みください。

注2:sshキー(PEM形式)の代わりにパスワードを使用するようにコマンドを変更できます。

注3:dump/ の後にスラッシュを付けないと、rsyncはフォルダ全体をコピーしますが、付けるとフォルダの内容のみをコピーします。

注4:chocolateyがcwrsyncをアップグレードすると、以前のcmdのバックアップが同じフォルダに作成されます。バックアップを継続するには、手動で新しいcmdにコマンドをコピーする必要があります。

重要:OPが書いたのと同じルールをスケジューラに設定してください。スケジューラインは次のとおりです。

C:\ProgramData\chocolatey\lib\rsync\tools\cwrsync.cmd >> d:\backup\cwrsync.txt 2>&1

これにより、出力がファイル cwrsync.txt に追加されます。以上です。

「いいね!」 3