GNU/LINUX
파티션이 LUKS
암호화되고 포맷된 시스템에서 파일로 가득 찬 폴더를 "삭제 취소"하는 방법은 무엇입니까 btrfs
*
?
내 Debian Stable (currently Bullseye)
컴퓨터에서는 모든 데이터가 LUKS
암호화된 파티션에 있습니다( /boot
. 암호화된 파티션에서 LVM을 사용하여 **
실제 데이터가 있는 btrfs를 사용하여 포맷된 다양한 볼륨을 구성합니다.
그래서 내 디스크 설정은 다음과 같습니다.
lsblk -o path,type,fstype,mountpoint
PATH TYPE FSTYPE MOUNTPOINT
/dev/sda disk
/dev/sda1 part ext2 /boot
/dev/sda2 part
/dev/sda5 part crypto_LUKS
/dev/sr0 rom
/dev/mapper/sda5_crypt crypt LVM2_member
/dev/mapper/vg-root lvm btrfs /
/dev/mapper/vg-var lvm btrfs /var
/dev/mapper/vg-swap lvm swap [SWAP]
/dev/mapper/vg-tmp lvm btrfs /tmp
/dev/mapper/vg-home lvm btrfs /home
내 파티션 중 하나에서 이메일( - 형식을 사용했기 때문에 텍스트 파일)로 가득 찬 폴더()를 ***
실수 로 삭제했습니다 ./home/USERNAME/mail/somefolderfullofimportantmessages
maildir
손실된 파일을 복구하는 몇 가지 도구를 찾을 수 있었지만 모두 extX
-filesystems로만 작업하는 등의 제한 사항이 있습니다(예:extundelete
) 또는 이미지나 전체 파티션(예:foremost
) 또는 특정 파일 형식(예:testdisk
그리고photorec
).
제 경우에는 가장 적합한 도구는 앱입니다btrfs restore
-주문하다 ****
꽤 오랫동안 사용 방법에 어려움을 겪은 후regex
(또는 사용 btrfs-undelete
- 도구여기), 그러나 이 방법을 사용하면 폴더 경로에서 삭제되지 않은 일부 파일만 "재검색"할 수 있고 삭제된 파일은 검색할 수 없습니다.
왜 이런 일이 발생합니까? LUKS
암호화 때문일까요 ? 그렇다면: 또 무엇을 해야 합니까/할 수 있습니까?
*
면책 조항: 백업이 있고 거기에서 모든 것을 복원할 수 있었지만 이 백업이 존재하지 않는다는 것을 증명해 보겠습니다. 네, 알아요백업이 없으면 본인 책임입니다.
**
예, 알고 있습니다. 사용할 수 있었지만 btrfs subvolumes
시스템을 설치하는 데 사용한 자동 설치 프로그램은 해당 옵션을 제공하지 않았습니다. 하지만 다음 설치에서는 LVM
.
***
isync/mbsync
기술적으로 저는 원격 IMAP
폴더(내 관리 제어 범위 밖)를 로컬 폴더와 동기화 하곤 했습니다 . 그러나 어떤 이유로(제가 이해하지 못하는) 도구는 내 로컬 폴더가 비어 있다고 생각하고 원격 폴더에 "모든 항목 제거" 명령을 보냅니다. 다음에 동기화를 수행했을 때 도구는 원격 IMAP
폴더가 최신이라고 가정했기 때문에 로컬 폴더를 삭제했습니다.
****
외부 부팅 드라이브 없이 이 작업을 수행하는 것은 까다롭습니다. 로 전환 tty
하고 액세스하는 모든 프로세스를 종료한 다음 /home
(을 사용하여 lsof /home
) 제거한 다음 /home
( systemd
계속 액세스하고 /home
중지하고 싶지 않은 일부 서비스를 차단한 후) btrfs restore -Dv /dev/mapper/vg-home --path-regex '^/(|home(|/USERNAME(|/mail/(|/.*))))$' /tmp
명령을 실행할 수 있도록 -D
is --dry-run
, 삭제한 경우에만 확인하세요. 실수로 시스템을 폭파하는 일은 없을 것입니다.)