제가 사용하고 있는 하이퍼바이저가 Proxmox 포럼이기 때문에 질문을 Proxmox 포럼에 게시했습니다. 하지만 여기서도 질문을 할 기회를 얻고 있습니다. 더 많은 사람들이 볼수록 내 데이터 일부를 복구할 가능성이 더 높아집니다. 더 큰 것. 현재 상황에 대한 자세한 설명과 함께 시작한 내용을 Proxmox 포럼에 게시하겠습니다.
수년간의 서비스 끝에 Proxmox 호스트는 저를 포기하기로 결정했습니다. 제가 새로운 호스트(새 호스트는 아니지만 여전히 새로운 스토리지)로 변경하려고 계획하고 공격대 구축을 준비하고 있던 바로 그 순간에, 등등. 새 서버에서.
실패한 호스트는 2개의 LUN으로 구성된 P822 RAID 카드가 포함된 DL380 G8 Dual Xeon E5-2430L 64GB RAM이었습니다. 20x 900GB SAS 10K rpm Seagate 디스크(2개의 핫 스페어로 구성) RAID 10(루트 LUN, LVM 로컬 포함) 및 로컬) - 씬, VM, ISO 이미지 및 백업 저장을 위한 기본값) 24x 2TB SAS 7.2K rpm Seagate 디스크(2개의 핫 스페어 포함) 순수 데이터 저장을 위한 RAID 6
Proxmox 7.4에서 실행되며 마지막 업데이트(일주일 정도 전)입니다. 최적의 성능을 위해 SSD용 RAID 10을 구성하기 위해 새 시스템에서 몇 가지 벤치마크를 실행하고 있으며, 캐시 컨트롤러, 물리적 장치 캐시 등을 설정하고 이를 이전 호스트에서 실행한 단 4개의 벤치마크와 비교하고 있습니다. 음, 새로운 시스템이 작동할 겁니다. 저는 다음 2개의 명령을 실행했습니다. 하나는 읽기 작업용이고 다른 하나는 4K 및 1M 블록 크기의 쓰기 작업용입니다.
fio --ioengine=libaio --direct=1 --sync=1 --rw=read --bs=4K --numjobs=1 --iodepth=1 --runtime=60 --time_based --name seq_read --filename=/dev/sda
fio --ioengine=libaio --direct=1 --sync=1 --rw=write --bs=4K --numjobs=1 --iodepth=1 --runtime=60 --time_based --name seq_read --filename=/dev/sda
fio --ioengine=libaio --direct=1 --sync=1 --rw=read --bs=1M --numjobs=1 --iodepth=1 --runtime=60 --time_based --name seq_read --filename=/dev/sda
fio --ioengine=libaio --direct=1 --sync=1 --rw=write --bs=1M --numjobs=1 --iodepth=1 --runtime=60 --time_based --name seq_read --filename=/dev/sda
물론, 빌어먹을 바보처럼, 나는 이전 호스트에서 "쓰기" 벤치마크를 실행했지만 출력 파일 이름 ==> 파일 대신 디스크 자체라는 것을 눈치 채지 못했습니다. , 그리고 마지막으로 새 호스트에 대한 최상의 설정을 찾았을 때 재부팅하고 새로 설치하고 싶었고 이전 호스트를 재부팅했으며 물론 명령이 fio
쓰기 모드에서 실행 중이었기 때문에 To를 종료했습니다. 디스크 및 부팅 파티션(그리고 아마도 그 이상)에는 다음과 같은 설정이 있습니다.
Controller Status OK
Serial Number PDVTF0BRH8Y1RD
Model Smart Array P822 Controller
Firmware Version 8.32
Controller Type HPE Smart Array
Cache Module Status OK
Cache Module Serial Number PBKUD0BRH8V4FT
Cache Module Memory
Logical Drive 01
Status OK
Capacity 5029 GiB
Fault Tolerance RAID 1/RAID 1+0
Logical Drive Type Data LUN
Encryption Status Not Encrypted
Logical Drive 02
Status OK
Capacity 37259 GiB
Fault Tolerance RAID 6
Logical Drive Type Data LUN
Encryption Status Not Encrypted
USB Proxmox 설치를 다시 시작하면 LVM 시작이 손실되고 전혀 감지할 수 없습니다.
감지된 볼륨은 두 번째 볼륨인 데이터 저장소입니다. 볼륨도 감지되지 않아서 어디서부터 시작해야할지 모르겠습니다. testdisk를 실행해 보았지만 이 도구가 파티션 복구에 얼마나 관련성이 있는지 잘 모르겠습니다. 제가 말할 수 있는 것은 내 /dev/sda에서 LVM2 볼륨을 확인했다는 것뿐입니다.
오류를 발견한 후 지금까지 수행한 작업(Proxmox 포럼에도 설명됨)은 fio
명령을 사용하여 다른 호스트에 디스크를 복제하는 것이었습니다 dd
. 이 복사본만 처리하고 더 많은 대상 디스크를 종료하지 않을 계획입니다. 운 좋게도 나는 내 파티션이 어떻게 구성되어 있는지 알고 있으며 이를 추적하고 있습니다. 따라서 문제는 이미 삭제한 것보다 더 많이 삭제하지 않고 어떻게 다시 생성하고 해당 호스트에 남아 있는 것을 복구하려고 하는가입니다. 디스크의 전체 쓰기 속도는 1000MB/s이므로 60초 동안 실행되는 동안 해당 디스크에서 60~70GB의 데이터를 삭제하고 루트 파티션이 약 1.8TB이므로 "데이터" 볼륨을 원한다고 가정해 보겠습니다. LVM 내부 새것 같은 상태입니다. 이에 대해 어떻게 생각하시나요?
도와주신 모든 분들께 감사드립니다. 이 망할 바보를 때리지 마십시오. 현재 상황에 직면하는 대신 오래된 서버를 백업 서버로 재활용하고 싶습니다.
편집: Testdisk는 "데이터" 파티션의 일부 흔적을 찾은 것 같지만 LVM 볼륨이 아닌 Linux 파일 시스템으로 간주합니다(디스크의 다른 볼륨에 주의하지 마세요. 저는 더 큰 dd
디스크 소스를 사용했습니다). .
그래서 뭔가 흔적이 남아있는 것 같아요. (어쩌면) 어리석은 생각, 친구가 grep
메타데이터 파일을 찾기 위해 디스크의 기능을 사용하자고 제안했는데, 항상 같은 텍스트로 시작하나요? 이것이 실현 가능한 일일까요?