원격 Linux 서버를 Windows에 백업

원격 Linux 서버를 Windows에 백업

원격 Linux 서버를 Windows 워크스테이션에 백업하고 싶습니다.

나는 이와 비슷한 것을 찾고 있지만 Windows에서는 다음과 같습니다.원격 서버에서 백업

사용할 수 있는 Windows rsync 클라이언트가 있습니까? 아니면 내부적으로 rsync를 사용하는 GUI 애플리케이션이 있습니까? SSH 키를 사용하여 연결하고 매일 실행하여 원격 파일을 Windows 시스템에 동기화할 수 있어야 합니다.

답변1

Cygwin에는 openssh(클라이언트 및 서버)와 rsync가 있으므로 Linux에서와 마찬가지로 이를 사용하여 rsync 대상을 생성할 수 있습니다.

나의 주요 관심사는 파일 시스템 문제입니다. Rsync는 메타데이터를 별도의 위치에 캡처하는 대신 동기화를 시도 tar합니다 zip. 이는 메타데이터가 대상 파일 시스템과 호환되지 않으면 문제가 발생한다는 것을 의미합니다.

  • 두 컴퓨터의 사용자가 동일하지 않을 수 있습니다.
  • NTFS 파일 이름은 대부분의 Linux 파일 시스템보다 더 제한적입니다.
  • rsync가 NTFS에서 장치 특수 파일을 요청하면 어떻게 될지 모르겠습니다.

이상한 이름이 없고 소유권/권한이 큰 문제가 아닌 웹 폴더에서 동기화를 시도하고 있다면 제대로 작동할 것입니다. 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

https://rsnapshot.org/

http://www.mikerubel.org/computers/rsync_snapshots/

rsnapshot은 rsync 기반 파일 시스템 스냅샷 유틸리티입니다. rsnapshot을 사용하면 SSH를 통해 로컬 시스템과 원격 시스템의 정기적인 스냅샷을 쉽게 찍을 수 있습니다. 코드는 필요한 디스크 공간을 크게 줄이기 위해 가능한 한 광범위하게 하드 링크를 사용합니다. Rsnapshot은 완전히 Perl로 작성되었습니다.모듈 종속성이 없으며 버전 5.004~5.16.3에서 테스트되었습니다. 이는 합리적으로 현대적인 UNIX 호환 운영 체제에서 실행되어야 합니다.

rsnapshot은 Linux에 설치하고 Linux에서 백업하는 경우 유용합니다.원천도착하다목적지소스는 기본적으로 무엇이든 가능합니다.리눅스에 설치됨. Linux에 마운트하는 경우 로컬 디스크가 필요하지 않습니다.

관련 정보