저는 지난 몇 년 동안 Rysnc를 사용하여 파일을 백업하고 버전 등을 유지 관리하는 백업 프로그램을 사용해 왔습니다. 문제의 시스템은 Rsync-time-backup입니다.https://github.com/laurent22/rsync-time-backup
XXGB 크기의 기본 백업을 생성한 후 관련 파일을 변경하지 않고 후속 백업을 위해 다수의 심볼릭 링크를 수행합니다.
지난 4년을 예로 들면, 데이터 파일 백업의 총 크기는 850GB, 소스 파일의 크기는 180GB였습니다. 이는 연간 백업, 12개월 백업 등을 유지하는 것입니다.
어쨌든 이제 전체 장치를 새 하드 드라이브로 옮기고 싶습니다(기존 MDADM 어레이를 새 어레이의 새 드라이브로 교체).
이 백업 데이터를 새로 마운트된 드라이브에 Rysnc'ing하려고 시도했지만 각 심볼릭 링크를 실제 파일로 확장하여 많은 디스크 공간을 차지하는 것처럼 보였습니다. rsynch에게 전체 구조를 복사하고 심볼릭 링크를 확장하는 대신 구조 내에서 유지하도록 지시하는 방법이 있습니까?
크레이그
답변1
rsync
전체 구조를 복사하고 확장하는 대신 해당 구조 내에서 심볼릭 링크를 유지하는 방법이 있습니까?
전적으로. 또한 rsync
각 파일과 관련된 확장 속성에 넣은 메타데이터를 유지해야 합니다 . 루트로 실행(또는 사용 sudo
):
rsync -avXXH /path/to/source/ /path/to/target
이는 반복 가능한 명령입니다. 즉, 중간에 중지되면 다시 실행할 수 있으며 중단된 부분부터 계속됩니다.
답변2
tar
심볼릭 링크를 보존하는 데 매우 좋습니다. 어떤 링크에서도 잘 작동합니다. 다음과 같은 것을 시도해보세요
tar c . | ssh <target> tar x
로컬에 설치되어 있으면 할 수 있습니다
(cd <source> ; tar c . ) | (cd <destination> ; tar x)