내 홈 디렉토리의 모든 항목을 삭제했습니다.

내 홈 디렉토리의 모든 항목을 삭제했습니다.

어제 나는 sudo rm -r *내 홈 디렉터리에서 이 프로그램을 실행하는 중대한 실수를 저질렀습니다. 약 10초 동안 실행된 후 뭔가 잘못되었음을 깨닫고 중지했습니다. 어젯밤에 글을 올렸는데 여전히 문제가 있습니다.

문제 중 하나는 무엇이 삭제되었고 무엇이 삭제되지 않았는지 정확히 알 수 없으며(이에 대한 로그가 있다면 정말 좋을 것입니다) 시스템 백업이 없다는 것입니다. Dell XPS 15 9570에서 LUKS 암호화를 사용하여 Archlinux 배포판을 실행하고 있습니다.이것들지시문이 있으며 DWM, DWMBLOCKS, ST, alacritty, zsh, neovim, SXHKD, emacs에 대한 특정 구성이 있으며 아마도 잊어버린 것일 수도 있습니다.

최선의 해결책을 찾기 위해 온라인에서 찾아보았지만 다른 제안을 찾았으며 어제 여기에서 받은 것보다 더 명확한 지침이 필요하다고 생각합니다. 어제 읽은 내용과 다른 사람들이 나에게 말한 내용을 바탕으로 내가 해야 할 일은...

  1. 현재 파일 시스템의 복사본을 생성하고 시스템에 아직 존재하거나 복구 가능한 구성 및 파일을 백업하려고 시도합니다.
  2. 지난 이틀 동안 삭제된 데이터의 덤프를 만들고 거기에서 중요한 파일을 복구해 보세요.
  3. 이번에는 시스템을 처음부터 다시 설치하고 모든 것을 백업하세요.

삭제 후 당황해서 컴퓨터를 바로 종료하지 않고 손상된 내용을 살펴보았습니다. 나는 를 실행하고 sudo pacman -SYYU, 작동하는지 확인하기 위해 emacs를 열고, emacs가 해당 디렉토리에서 데이터를 삭제하여 버전 오류가 있다고 말했기 때문에 anaconda를 다시 설치했으며, emacs에 필요한 프로그램의 캐시된 버전도 다시 설치했습니다.

포럼에서 조언을 얻은 후 라이브 USB를 통해서만 시스템을 부팅했습니다. 처음에는 slax를 사용해 보았지만 다운로드 및 extundelete를 만들 수 없어서 kali-linux 라이브 부팅 가능 USB를 만들어 다시 시도했습니다. 또 다른 문제는 라이브 부팅 가능한 kali-linux USB를 만들었다고 생각했을 때 실수로 USB 설치 프로그램을 만들고 설치 프로그램을 통해 시스템 언어를 설정했다는 것입니다. 설치를 중단하고 플래시 드라이브를 올바르게 포맷했지만 이것이 크게 변경될지는 잘 모르겠습니다. 라이브 USB를 올바르게 포맷한 후 photorec을 두 번 실행했습니다(extundedelete가 작동하는 방법을 몰랐기 때문에). 한 번은 모든 파일 형식을 간략하게 확인한 다음, 또 한 번은 생성된 모든 PDF 및 텍스트 파일을 추출했습니다. 128Gb SD 카드에 저장했습니다. 이 방법에서는 도트 파일을 찾지 못했습니다. extundelete(및 ext4magic)를 올바르게 빌드하는 방법을 알아냈고 지난 2일 동안 데이터를 저장하기 위한 명령을 실행하려고 노력했지만 계속 분할 오류가 발생합니다. 테스트 플랫폼도 확인해 보았으나 데이터 복구 옵션이 나타나지 않았습니다. 이 모든 것의 또 다른 문제는 kali linux GUI를 사용하여 가장 큰 파티션을 마운트 해제했지만 마운트 해제할 올바른 파티션인지 확실하지 않다는 것입니다. 할당되지 않은 메모리에서 파일을 다시 빌드하는 방법을 살펴봤더니 grep데이터를 덮어쓰고 임시 디렉터리를 만드는 방식으로 언로드하는 것 같습니다. 또한 컴퓨터를 여러 번 종료했다가 다시 시작해야 했기 때문에(항상 라이브 USB에서 부팅) 이것이 상황에 어떤 영향을 미치는지 잘 모르겠습니다.

마침내 내가 무엇을 하고 있는지 제대로 알기도 전에 나는이 블로그 게시물sudo uname -a, , 를 실행 sudo fdisk -l하고 sudo blkid다음 출력을 얻습니다.

$ sudo uname -a
Linux <redacted> 6. 1.8-arch1-1 #1 SMP PREEMPT_DYNAMIC Tue , 24 Jan 2023 21:07:04 +0000 x86_64 GNU/LinUx
$ sudo fdisk -
Disk /dev/nvmeen1: 238.47 618, 256860514384 bytes, 590118192 sectors
Disk model: KXG50ZNV256G NVMe TOSHIBA 2566B
Units: sectors of 1 * 512 - 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/0 size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk 1dentifier: <redacted>
Device
start
End
size Type
Sectors
2848
/dev/nvmeonip1
10586231848576 5 12N EFI System
/dev/nvmeen1p2 1050624 2099199
1848576 512M Linux filesystem
/dev/nvmebnip3 2999289 598117503 498818384 237.56 Linux filesystem
Disk /dev/mapper/volumegroup: 237.46 618, 254968594432 bytes, 497989536 sectors
Units: sectors of 1 512 - 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/0 size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/volumegroup-root: 58 618, 53687891280 bytes, 184857689 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/0 size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/volumegroup-home: 187.46 618, 281288454656 bytes, 393125888 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/0 size (minimum/optimal): 512 bytes / 512 bytes
$ sudo blkid
/dev/mapper/volumegroup-root: UUID="<redacted>" BLOCK_SIZE="4896" TYPE="ext4"
/dev/nvme@nip3: UUID="<redacted>" TYPE="crypto_LUKS" PARTUUID="<redacted>"
/dev/nvme@n1p1: UUID="<redacted>" BLOCK_SIZE="512" TYPE-"vfat" PARTUUID="<redacted>"
/dev/nvme@n1p2: UUID="<redacted>" BLOCK_SIZE="4096" TYPE-"ext4" PARTUUID="<redacted>"
/dev/mapper/volumegroup-home: UUID="<redacted>" BLOCK_SIZE-"4896" 

다시 한 번 말씀드리지만, 신규 이민자를 위한 명확한 지침에 대한 도움을 주시면 대단히 감사하겠습니다. 감사해요.

답변1

  1. 가능한 한 빨리 이 파일 시스템에 대한 쓰기를 중지해야 합니다. 복구가 완료되었다는 확신이 들 때까지 글을 쓰지 마십시오. 파일 시스템 덤프를 어디에나 저장하고 무한정 재시도할 수 있습니다.
  2. 사용확장 삭제ext3/4의 경우 또는 다른 파일 시스템에 대한 다른 유사한 유틸리티가 있을 수 있습니다. 마운트 해제된 파일 시스템이 필요하므로 이 유틸리티를 사용하여 LiveCD 또는 LiveUSB를 만드십시오.기분 전환(Debian 기반)을 사용하면 런타임에 유틸리티를 쉽게 설치할 수 있습니다. 또한 이 유틸리티는 복구된 데이터가 복구된 동일한 파일 시스템에 저장되는 것을 허용하지 않으며 현재 위치에서 삭제를 취소할 수 없으므로 복구 가능한 데이터를 복사하려면 추가 저장 공간이 필요합니다.
  3. 원하는 것을 저장하거나 덤프를 저장한 후 계속할 수 있습니다. 정말로 자신의 데이터만 삭제 $HOME하고 그 이외의 파일은 건드리지 않았다면 시스템을 다시 설치할 필요가 없습니다. $HOME에 남아 있는 모든 파일(숨겨진 파일 포함)을 삭제(만약을 대비해 어딘가에 백업)하고 "처음부터" 로그인하세요. 그런 다음 복구된 데이터를 복사할 수 있습니다.

나는 덤핑에 대해 언급했습니다. 한 가지 전략은 /home을 마운트 해제하고, 덤프 또는 심지어 블록 수준 스냅샷(LVM의 경우)을 만들고, 실행 중인 시스템에 유틸리티를 설치하고, emacs 및 수정하려는 모든 항목을 복구한 다음 덤프에서 이 유틸리티를 사용하는 것입니다. 또는 스냅샷. 부족하지 않도록 하세요.스냅 사진이 경우에는 공간입니다.

파일 시스템 수준 스냅샷에 의존하지 마십시오. 예를 들어 ZFS인 경우 해당 수준의 스냅샷은 복구에 도움이 되지 않습니다!

관련 정보