
전체 시스템의 백업을 생성했고 dd
이를 새(암호화된) 드라이브에 복원하고 싶습니다. 새로 생성된 ext4 파일 시스템에 대한 파일 및 권한을 성공적으로 복원했지만 rsync -ad
(성공적으로 부팅했고 이를 사용하여 이 글을 작성하고 있습니다) 마운트된 장치에 액세스할 수 없습니다 /media/username
(파일 관리자에서 일부 파티션을 클릭하여 마운트한다고 가정해 보겠습니다). it), 이 디렉토리와 마운트 지점은 의 소유입니다 root:root
. 알려진 파일(예: 의 항목)의 권한이 올바르게 설정되었으므로 백업 전에도 에서 소유한 것으로 /home
가정합니다 . 문제가 있는 것 같아요/media/*
root
ACL에스.
- 복원하는 방법이 있나요ACL두 번째로 모든 것을 복사할 필요가 없나요? (나는 발견했다이것안내해 주지만 신뢰할 수 없다고 합니다. 이것이 내 사용 사례에 적합한지 모르겠습니다. 또한 Linux 소유권과 권한을 복원할 필요가 없습니다. 이는 이미 정확해야 하며 이를 깨고 싶지 않습니다. 어쩌면
-s
옵션이getfacl
나에게 필요한 것일 수도 있습니다.) - 그 밖에 누락된 부분이 있어
rsync
복원해야 합니까? - 저장할 수 없고 모든 내용을 다시 복사해야 한다면 무엇을 사용해야 합니까? 가이드 사용한 명령을 따랐
tar
지만 두tar
명령을 파이프하는 것은 정말 느렸습니다.
나는 사용한다리눅스 민트 19.3.
편집: 백업( )을 확인했는데 /mnt/
, 맞습니다. ACL이 설정되었습니다.
sudo getfacl /mnt/media/username/
getfacl: Removing leading '/' from absolute path names
# file: mnt/media/username/
# owner: root
# group: root
user::rwx
user:username:r-x
user:libvirt-qemu:--x
group::---
mask::r-x
other::---
edit2: 모든 것을 복사한 이후로 몇 가지 사항을 변경했으므로 파일 내용을 덮어쓰지 않는 방법을 선호합니다.
답변1
나에게 도움이 된 솔루션(ACL 및 권한만 복원하고 파일을 변경하고 싶지 않은 경우):
cd /path/to/backup # so that saved paths would be relative to backed up root
getfacl -R . > ~/facl.bak
cd /
setfacl --restore=/root/facl.bak
답변2
rsync -avX
대신에 사용할 수 있습니다 rsync -ad
. 파일 콘텐츠를 다시 복사하지 않고 누락된 ACL을 적용해야 합니다.
-u
변경된 파일 업데이트를 방지하고 --existing
새 파일 생성(예: 대상에서 파일을 삭제한 경우)을 방지하려면 플래그를 추가하세요 .