btrfs 전송 재개 가능 전송

btrfs 전송 재개 가능 전송

btrfs 스냅샷을 온라인 스토리지로 보내 데이터를 백업할 계획입니다. 스토리지는 LUKS 암호화된 컨테이너 파일로 cifs 공유에 마운트됩니다.

이후 전송은 매우 빠르지만, tc를 사용하여 합리적인 양의 업스트림을 남겨두면 1.3TB의 첫 번째 전송에는 23일이 소요됩니다. 이제 이론적으로는 내 연결이 이를 처리할 수 있지만 다시 연결하는 것은 가능합니다. 내가 이해한 바에 따르면, 그냥 사용하면 다시 시작해야 합니다.

 btrfs send ... | btrfs receive ...

이를 수행하는 저장 및 복원 방법이 있습니까? uttersink를 찾았지만 S3 복원만 허용하는 것 같습니다.

어떤 아이디어가 있나요?

완전히 다른 솔루션을 제안하려면 의견을 자유롭게 활용하십시오. 헤츠너 수납박스 입니다 (https://www.hetzner.de/de/hosting/storagebox/bx40). FTP, FTPS, SFTP, SCP(SSH는 아님, paramiko도 작동하지 않음), Samba/CIFS, HTTPS, WebDAV 액세스 권한이 있습니다. 암호화되지 않은 데이터는 저장용으로 신뢰해서는 안 됩니다. 두 사이트 모두 사용 가능한 공간이 과도하지 않습니다. 변경되는 작은 파일이 많이 있으므로 정기적인 전체 백업(한 달에 한 번) 없이 이중화하는 것은 불가능해 보입니다. 같은 이유로 로컬 버전을 원격 위치에서 로컬로 설치된 버전과 비교할 때 rsync가 느릴 가능성이 높습니다. 다른 당사자가 시간이 지남에 따라 단일 파일의 여러 버전을 수집할 수 있으므로 EncFS는 저장할 수 없는 것으로 보입니다.

답변1

btrbk지원하다:

백업 복원(일정 기간 동안 백업 대상에 액세스할 수 없는 경우)

buttersink 지원하다:

로컬 btrfs 파일 시스템, SSH를 통한 원격 btrfs 파일 시스템 또는 S3 버킷.

또는 수동으로 이 작업을 수행할 수 있습니다.

  1. stdout을 통해 쉘 파이프에 쓰는 대신 -f옵션을 사용하여 send파일에 데이터를 씁니다.
    btrfs send -f outfile
  2. 선호하는 재개 가능한 전송 방법을 사용하여 rsync파일을 전송합니다 (예:
  3. btrfs receive -f outfilestdin 대신 outfile에서 데이터를 읽는 데 사용됩니다 .

답변2

내가 아는 바로는 원격 저장소가 파일 시스템으로 노출됩니다. 나는 나 자신을 사용하지 않지만 btrfs나는생각하다스냅샷은 하나의 큰 "전체 백업" 파일 뒤에 여러 개의 작은 "증분" 파일이 오는 것과 같습니다.

이를 바탕으로 재부팅이 가능하기 때문에 계속 사용하겠습니다 rsync. 원격 호스트에 사용 가능한 서버가 없으면 rsync펑키 증분 diff 알고리즘을 사용할 수 없지만 rsync소스 파일이 변경되지 않았다고 가정하고 도달한 바이트 오프셋에서 벗어난 후 계속할 수 있습니다.

test -t 2 && progress=--progress
rsync -av $progress --partial --append --sparse /path/to/source.img /path/to/remote/storage/

gzip소스 파일을 전송하기 전에 유용한 작업을 수행 할 수 있다면 그렇게 하십시오. (둘 다 로컬에서 로컬로의 파일 전송과는 아무런 관련이 없습니다. --rsyncable)rsync -zrsync

관련 정보