0

aws s3 sync 명령을 사용하여 시스템을 백업하려고 시도하지만 심볼릭 링크 (기본 동작) 뒤에 전체 디렉토리를 백업하거나 심볼릭 링크를 전혀 백업하지 않습니다.AWS s3 sync를 사용하여 심볼릭 링크 백업

필요한 경우 S3에서 복원 할 수 있도록 심볼릭 링크를 백업하는 방법이 필요합니다.

전체 디렉토리를 먼저 보관하고 싶지 않습니다. 그렇지 않으면 변경된 파일 만 백업 할 수 없게됩니다.

현재 나의 생각은 dir에서 심볼릭 링크를 검색하고 심볼릭 링크의 대상을 포함하는 메타 데이터 파일을 생성하는 것입니다. 심볼릭 링크의 대상을 복원 한 후에 심볼릭 링크를 다시 작성하기 위해 읽을 수는 있지만 필자는이를 수행하는 방법을 잘 모릅니다.

모든 조언을 매우 환영받을 것입니다. 미리 감사드립니다.

답변

0

마찬가지로 S3에는 심볼릭 링크를 나타내는 표준 방법이 없습니다. 사용자 정의 표현을 결정하고이를 빈 S3 객체의 메타 데이터에 저장할 수는 있지만 사용자가 직접 수행 할 수 있습니다. AFAIK, aws s3은 그렇게하지 않습니다.

이제 S3 (및 빙하)까지 백업하기 위해 OpenDedup을 살펴볼 수 있습니다. rsync에서 사용되는 것과 동일한 유형의 롤링 체크섬을 사용하여 실제 사용 된 저장 공간 (및 대역폭)을 최소화합니다.

내 시스템을 로컬 드라이브에 백업하기 위해 많은 cp -rlrsync 사용자 지정 스크립트를 수행했지만 필자가 가지고있는 많은 중복 파일로 인해 불필요한 추가 저장 장치에 대해 좌절감을 나타 냈습니다. 디렉터리 이름을 바꿀 때 간단한 스키마에서 어떤 일이 일어나는 지 상상해보십시오 (mv dirA dirB). 다음 백업은 일반적으로 해당 디렉터리의 새로운 복사본을 저장합니다.

OpenDedup (및 bup, zpaq 등과 같은 다른 유사한 시스템)에서는 내용이 고유하게 저장됩니다 (롤링 체크섬 방식 덕분에). 나는 그것을 좋아한다.

0

현재 Amazon S3는 심볼 링크를 지원하지 않습니다. 로컬 디스크에서 S3로 업로드 할 때이를 따라갈 것입니다. AWS 문서에 따르면, 심볼릭 링크의 내용은 심볼릭 링크의 이름으로 복사되거나 동기화됩니다.

rsync 명령에는 기호 링크 옵션이 있습니다. 그중 하나 인 --copy-links은 대상을 정확히 복사합니다. 따라서 심볼릭 링크가 절대 경로 (my/absolute/path)를 사용하면 경로가 복사되고 S3의 심볼릭 링크는 로컬 상자의 디렉토리를 가리 킵니다. 상대 경로 (.../.../path)를 사용하면 심볼릭 링크가 S3의 해당 경로를 가리 킵니다.

Rsync는 파일을 로컬 상자로 복원 한 후 사용할 심볼릭 링크를 유지하는 방법입니다.

또 다른 방법은 각 작업과 함께 데이터를 카탈로그 화하는 NetApp의 Cloud Sync과 같은 AWS S3 동기화 또는 백업 서비스를 사용하는 것입니다. 각 서비스 공급자는 서로 다른 기능을 제공하므로 심볼 링크가 처리되는 방식은 선택한 공급 업체에 따라 다릅니다.