디렉토리를 자동으로 보관하는 방법은 무엇입니까?


47

단방향 동기화를 원합니다.

나는 데 Folder A지속적으로 내용으로 업데이트됩니다 내 컴퓨터에.
다른 하나 Folder B는 외장 HDD에있는 백업 목적으로 사용됩니다.

이제 내가 기대하는 것은 폴더 A에 존재하는 추가 항목이 폴더 B로 이동해야한다는 것입니다. 그러나 B에 존재하고 A에 존재하지 않는 것은 ""A에 복사되지 않아야합니다 ""입니다.

간단히 말해서, 백업 폴더는 소스 폴더에서 모든 것을 복사 할 수 있지만 백업 폴더에서 소스로 복사되는 것은 없습니다.


동기화가 아닙니다 ....
Braiam

@Braiam 그때는 무엇입니까? 나는 OP와 같은 단어를 내놓을 수 없었다. 알고 있다면 알려주십시오.
Jo Smo

@JoSmo 사본? 아카이브? 지원?
Braiam

@Braiam 감사합니다. 이제 물어보기가 어리 석습니다. : D
Jo Smo

답변:


63

rsync를위한 완벽한 작업 인 것 같습니다

sudo rsync -az /path_to/A /path_to/B

-아카이브 모드 (재귀, 심볼릭 링크를 심볼릭 링크로 복사, 소유자 유지, 수정 시간, 그룹, 소유자, 특수 및 장치 파일 포함)

-z는 데이터를 압축합니다

B의 파일에서 A에서 삭제 된 파일을 제거하려면 --delete옵션을 사용하십시오.

추가 정보는 다음을 참조하십시오.

https://help.ubuntu.com/community/rsync

cron에서 rsync를 실행할 수 있습니다

sudo crontab -e

시간별 작업에 추가

@hourly rsync /path_to/A /path_to/B

https://help.ubuntu.com/community/CronHowto


7
폴더 내에 폴더가 있으면 -r 옵션을 사용해야합니다.
존 S Gruber

2
나는 파티에 조금 늦었지만 하드 드라이브가 연결되어있을 때 동기화 스크립트를 실행하려면 udev를 사용해야합니다. 얼마 전에이 질문을 확인하십시오. askubuntu.com/questions/25071/…
jackweirdy

1
@JohnSGruber -a 옵션은 재귀적임을 암시합니다. 이에 대한 답변을 편집하겠습니다.
Tomas

1
파일이 같은 컴퓨터에 있다면 -z프로세스 속도를 늦추십시오
Postadelmaga

1
@JoSmo-askubuntu.com/ questions / 476041 / askubuntu.com/questions/609968/… 및 man rsync는 필요한 경우 의견을 묻는 대신 새로운 질문을합니다.
Panther

15

이 목적으로 rsync를 사용하는 것이 좋습니다. Rsync는 매우 빠르고 안정적이며 다목적입니다. http://help.ubuntu.com/community/rsync에 좋은 소개가 있습니다 .

원하는 경우 그래픽 프론트 엔드 옵션이 있습니다 : grsync

 sudo rsync -azv --exclude 'dir1' /home/path/folderA/ /home/path/folderB

위의 명령은 dir1을 제외한 폴더 A에서 폴더 B로 복사됩니다. 깃발은

-a preserves time stamps
-z is to enable compression
-v verbose

더 많은 옵션이 있습니다.


8

나는 항상 Unison이 매우 도움이된다는 것을 알았습니다. 여기에는 텍스트 기반 또는 GUI 기반 인터페이스가 있으며 원하는대로 조정할 수있는 몇 가지 옵션이 있습니다 (조금씩). 첫 번째 동기화를 수행하는 데 약간의 시간이 걸리지 만 그 후에는 훌륭합니다. 원하는대로 단방향으로 동기화 할 수는 있지만 자동으로 거의 얻을 수 있습니다. 또한 선택한대로 백업에서 삭제하거나 삭제할 수 없습니다.

또한 우분투 파일 형식으로 지원되지만 외부 하드 드라이브에서는 지원되지 않는 권한 문제가있을 수 있습니다 (외부 하드 드라이브가 Windows 시스템에서 사용되는지 여부에 따라이 방법이 좋습니다). 권한없이 잠재적으로 동기화하고 싶을 것입니다.

어쨌든, 좋은 점은 튜토리얼을 사용하면 한 번만 설정하는 것이 비교적 간단하며 그 후에는 언제든지 원하는 GUI 인터페이스입니다.

여기에 대한 정보가 있습니다 : http://www.ubuntugeek.com/unison-file-synchronization-tool.html

그리고 여기 튜토리얼이 있습니다 : http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html#tutorial


4
rsync -avPr --ignore-existing /home/username/Research/ /path/to/other/folder/on/hdd/

이것은 존재하지 않는 데이터 만 동기화하고 복사합니다. /other/folder/on/hdd/


2

다른 답변에 동의합니다 . 터미널의 rsync 또는 Grsync , luckyBackup , Conduit 또는 유명한 Unison 인터페이스에서 사용할 수 있습니다 .

또 다른 훌륭한 응용 프로그램은 Krusader (KDE 용 트윈 패널 파일 관리자)이며 도구 메뉴에서 "동기화 디렉토리"를 찾을 수 있습니다.

마지막으로 Wine 을 설치하고 Total Commander 와 같은 또 다른 멋진 트윈 창 파일 관리자를 설치할 수 있습니다 .

어쨌든 많은 옵션이 있으며 모든 옵션이 Ubuntu Software Center에 있습니다.


1

간단한 동기화를 위해 Conduit을 권장합니다. 소프트웨어 시스템을 사용할 수 있습니다. 그것은 당신이 찾고있는 것을 정확하게합니다.


0

로컬 및 원격 시스템의 백업을위한 rsnapshot - http : //www.rsnapshot.org/- 파일 시스템 스냅 샷 유틸리티 라는 매우 편리한 쉘 도구가 있습니다. rsync 및 하드 링크를 사용하여 여러 개의 전체 파일 시스템 백업을 즉시 사용할 수 있습니다. 그냥 sudo apt-get install rsnapshot확인하고info rsnapshot


0

다음과 같은 방법으로 두 가지 디렉터리 내의 파일을 동기화 할 수 있습니다.

rsync -rv /path/to/directory1/ /path/to/directory2

이렇게 rsync -rv /path/to/directory1 /path/to/directory2만들어집니다 directory1안에 directory2같이,/path/to/directory2/directory1/[files]

-n이 스위치를 사용하여 드라이 런을 할 수 있습니다rsync -rnv /path/to/directory1/ /path/to/directory2

참조 : https://www.digitalocean.com/community/tutorials/how-to-use-rsync-to-sync-local-and-remote-directories-on-a-vps


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.