リモートLinuxサーバーをWindowsワークステーションにバックアップしたいと思います。
私はこのようなものを探していますが、Windowsでは次のようになります。リモートサーバーからのバックアップ
利用可能なWindows rsyncクライアントはありますか?それとも内部的にrsyncを使用するGUIアプリケーションはありますか? SSHキーを使用して接続し、毎日実行してリモートファイルをWindowsシステムに同期できる必要があります。
答え1
Cygwinにはopenssh(クライアントとサーバー)とrsyncがあるため、Linuxと同じようにrsyncターゲットを作成できます。
私の主な関心事はファイルシステムの問題です。 Rsyncはメタデータを別の場所にキャプチャする代わりに同期を試みtar
ますzip
。これは、メタデータがターゲットファイルシステムと互換性がないと問題が発生することを意味します。
- 両方のコンピュータのユーザーが同じでない可能性があります。
- NTFSファイル名は、ほとんどのLinuxファイルシステムよりも制限的です。
- rsyncがNTFSからデバイス特殊ファイルを要求するとどうなるかわかりません。
奇妙な名前がなく、所有権/権限が大きな問題ではなくWebフォルダから同期しようとしている場合は、うまく機能します。 Linuxのルートファイルシステムを同期し、すべてのデバイスと権限を維持したい場合は、Windowsのrsyncがより大きな問題になる可能性があると思います。
別のアプローチは、Windowsサーバー内でLinux仮想マシンを実行することです。その後、必要に応じて仮想マシンを構成できます。これが行う唯一の作業は、勤務時間外にファイルを転送するだけで、RAMが十分な場合、Windowsサーバーのパフォーマンスにはまったく影響しません。
答え2
rsnapshot.conf
#################################################
# rsnapshot.conf - rsnapshot configuration file #
#################################################
config_version 1.2
# All snapshots will be stored under this root directory.
#
# what ron uses
snapshot_root /bkup/private/
# If no_create_root is enabled, rsnapshot will not automatically create the
# snapshot_root directory. This is particularly useful if you are backing
# up to removable media, such as a FireWire or USB drive.
#
no_create_root 1
#################################
# EXTERNAL PROGRAM DEPENDENCIES #
#################################
# LINUX USERS: Be sure to uncomment "cmd_cp". This gives you extra features.
# EVERYONE ELSE: Leave "cmd_cp" commented out for compatibility.
#
# See the README file or the man page for more details.
#
cmd_cp /bin/cp
# uncomment this to use the rm program instead of the built-in perl routine.
#
cmd_rm /bin/rm
# rsync must be enabled for anything to work. This is the only command that
# must be enabled.
#
cmd_rsync /usr/bin/rsync
# Uncomment this to enable remote ssh backups over rsync.
#
#cmd_ssh /usr/bin/ssh
# Comment this out to disable syslog support.
#
cmd_logger /bin/logger
# Uncomment this...
# Uncomment that...
#########################################
# BACKUP LEVELS / INTERVALS #
# Must be unique and in ascending order #
# e.g. alpha, beta, gamma, etc. #
#########################################
# retain alpha 6
# retain beta 7
# retain gamma 4
# retain delta 3
# what ron uses, daily non-incremental backup via cron at 2am,
# crontab entry: * 2 * * * /usr/local/bin/rsnapshot daily
retain daily 1
############################################
# GLOBAL OPTIONS #
# All are optional, with sensible defaults #
############################################
# Verbose level, 1 through 5.
# 1 Quiet Print fatal errors only
# 2 Default Print errors and warnings only
# 3 Verbose Show equivalent shell commands being executed
# 4 Extra Verbose Show extra verbose information
# 5 Debug mode Everything
#
verbose 2
# Same as "verbose" above, but controls the amount of data sent to the
# logfile, if one is being used. The default is 3.
#
loglevel 3
# If you enable this, data will be written to the file you specify. The
# amount of data written is controlled by the "loglevel" parameter.
#
logfile /var/log/rsnapshot
[... bunch of stuff removed to post on stackexchange easier...]
###############################
### BACKUP POINTS / SCRIPTS ###
###############################
# LOCALHOST
# backup /home/ localhost/
# backup /etc/ localhost/
# backup /usr/local/ localhost/
# backup /var/log/rsnapshot localhost/
# backup /etc/passwd localhost/
# backup /home/foo/My Documents/ localhost/
# backup /foo/bar/ localhost/ one_fs=1, rsync_short_args=-urltvpog
# backup_script /usr/local/bin/backup_pgsql.sh localhost/postgres/
# You must set linux_lvm_* parameters below before using lvm snapshots
# backup lvm://vg0/xen-home/ lvm-vg0/xen-home/
# EXAMPLE.COM
# backup_exec /bin/date "+ backup of example.com started at %c"
# backup [email protected]:/home/ example.com/ +rsync_long_args=--bwlimit=16,exclude=core
# backup [email protected]:/etc/ example.com/ exclude=mtab,exclude=core
# backup_exec ssh [email protected] "mysqldump -A > /var/db/dump/mysql.sql"
# backup [email protected]:/var/db/dump/ example.com/
# backup_exec /bin/date "+ backup of example.com ended at %c"
# CVS.SOURCEFORGE.NET
# backup_script /usr/local/bin/backup_rsnapshot_cvsroot.sh rsnapshot.cvs.sourceforge.net/
# RSYNC.SAMBA.ORG
# backup rsync://rsync.samba.org/rsyncftp/ rsync.samba.org/rsyncftp/
# what ron uses, very simple, local disks
# /data is /dev/sdb1 an N tb drive
# snapshot root folder /bkup is /dev/sdc1 an n tb volume
# this will copy everything under /data to /bkup/private/mybackup/
backup /data mybackup/
サービスが設定されていてSSHが優先サービスであると思いますが、RSHまたは他のものである可能性がある場合は、カスタムrsnapshot.confファイルを介してソースからターゲットにコピーするのと同じくらい簡単です。
https://wiki.archlinux.org/index.php/Rsnapshot
http://www.mikerubel.org/computers/rsync_snapshots/
rsnapshotはrsyncベースのファイルシステムスナップショットユーティリティです。 rsnapshotを使用すると、SSHを使用してローカルシステムとリモートシステムの定期的なスナップショットを簡単に撮影できます。コードは、必要なディスク容量を大幅に減らすために、できるだけ広範囲にハードリンクを使用します。 Rsnapshotは完全にPerlで書かれています。モジュールの依存関係はなく、バージョン5.004〜5.16.3でテストされました。これは合理的に現代的なUNIX準拠のオペレーティングシステムで実行する必要があります。
rsnapshot は、Linux にインストールして Linux からバックアップする場合に便利です。源泉到着目的地ソースは基本的に何でも可能です。Linuxにインストール済み。 Linux にマウントする場合、ローカルディスクは不要です。