
システム全体のバックアップを作成しdd
、それを新しい(暗号化された)ドライブに復元したいと思います。rsync -ad
新しく作成した ext4 ファイルシステムにファイルと権限を正常に復元できました(正常に起動し、これを使用してこれを書いています)が、マウントされたデバイスにアクセスできません/media/username
(ファイルマネージャーでパーティションをクリックしてマウントするとします)。このディレクトリとマウントポイントは が所有していますroot:root
。既知のファイル(たとえば 内のファイル)の権限は正しく設定されているため、バックアップ前もが所有していた/home
と想定しています。 に問題があると思います。/media/*
root
ACLs。
- 復元する方法はありますかACLすべてを2度コピーしなくてもいいのですか?(私はこれガイドにはありますが、信頼性がないと書かれています。これが私の使用例に適しているかどうかはわかりません。また、Linux の所有権と権限を復元する必要はありません。すでに正しいはずなので、それを壊したくありません。おそらく、
-s
のオプションがgetfacl
必要なのでしょうか?) rsync
他に省略されていて復元する必要があるものはありますか?- これを保存できず、すべてを再度コピーする必要がある場合、何を使用すればよいですか。ガイドに従って
tar
コマンドを使用しましたが、2 つのコマンドをパイプするのは非常に時間がかかりました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::---
編集2: すべてをコピーしてからいくつか変更を加えたので、ファイルの内容を上書きしない方法を希望します。
答え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
新しいファイルの作成 (たとえば、ターゲットでファイルを削除した場合) を回避するには、フラグを追加します。