![추가 읽기](https://linux55.com/image/139049/%EC%B6%94%EA%B0%80%20%EC%9D%BD%EA%B8%B0.png)
방금 3TB 디스크를 외부 USB 인클로저에서 컴퓨터 내부로 옮겼는데 거기에 있어야 할 유일한 ext4 파티션이 보이지 않습니다. 디스크에는 잃어버려서는 안 될 매우 중요한 데이터가 있습니다. 진행 방법을 알려주십시오. 자세한 내용은 다음과 같습니다.
$ sudo mount -vvv -t ext4 /dev/sdb1 /mnt/
mount: /mnt: /dev/sdb1 is not a valid block device.
$ sudo fdisk -l /dev/sdb
GPT PMBR size mismatch (732566645 != 5860533167) will be corrected by w(rite).
Disk /dev/sdb: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sdb1 1 732566645 732566645 349.3G ee GPT
Partition 1 does not start on physical sector boundary.
$ sudo parted /dev/sdb print
Error: /dev/sdb: unrecognised disk label
Model: ATA WDC WD30EZRX-00D (scsi)
Disk /dev/sdb: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: unknown
Disk Flags:
lshw 출력(발췌):
*-scsi:1
physical id: 2
logical name: scsi1
capabilities: emulated
*-disk
description: ATA Disk
product: WDC WD30EZRX-00D
vendor: Western Digital
physical id: 0.0.0
bus info: scsi@1:0.0.0
logical name: /dev/sdb
version: 0A80
serial: WD-WCC1T1561951
size: 2794GiB (3TB)
capabilities: partitioned partitioned:dos
configuration: ansiversion=5 logicalsectorsize=512 sectorsize=4096
*-volume UNCLAIMED
description: EFI GPT partition
physical id: 1
bus info: scsi@1:0.0.0,1
capacity: 349GiB
capabilities: primary nofs
답변1
댓글 응답자가 귀하의 질문에 대한 출력을 읽지 않았습니다. 출력은 다음을 알려줍니다.
GPT PMBR 크기 불일치(732566645 != 5860533167)는 w(rite)로 수정됩니다.
fdisk
소위 "보호" 레거시 MBR 파티션 레코드가 포함된 EFI 파티션 테이블이 있음을 알려줍니다. 하지만 파티션 기록을 보호해도 디스크가 실제로 끝나기 전에 디스크 내용이 끝나서 몇 TiB의 여유 공간이 남게 되므로 디스크 내용이 제대로 보호되지 않습니다.fdisk
그러면 문제가 해결될 것이라고 말했습니다. 이것을 시도하지 마십시오fdisk
.fdisk
틀렸다.디스크 레이블 유형: dos 디스크 식별자: 0x00000000 장치 부팅 시작 및 끝 섹터 크기 ID 유형 /dev/sdb1 1 732566645 732566645 349.3G ee GPT
그래서fdisk
EFI 파티션 테이블을 전혀 표시하지 않기로 결정했습니다. 이것이 보여주는 것은 마치 "보호적인" 기존 MBR 파티션 테이블입니다.저것디스크를 분할하는 방법입니다. 여기에는 실제로ee
EFI 파티션 테이블을 포함하여 전체 디스크를 포함해야 하는 가상 항목인 항목이 포함되어 있습니다. 하지만 길이는 732566645 섹터에 불과하며 이는 2.7TiB가 아닌 약 349GiB입니다.이것은 이것에 반대하는 여러 가지 이유 중 하나입니다
fsck
. 포맷된 파일 시스템이 포함된 디스크 볼륨이 아닙니다. 이는 전체 디스크에 걸쳐 있어야 하는 가상 레거시 파티션입니다.파티션 1은 물리적 섹터 경계에서 시작되지 않습니다.
이것은 붉은 청어입니다. 가상 보호 파티션은 다음과 같습니다.~해야 한다섹터 1부터 시작합니다. 섹터 1은 EFI 파티션 테이블이 시작되는 곳입니다. 그 정렬은진짜파티션은 읽혀지지 않는 새 EFI 파티션 테이블에 기록됩니다.fdisk
이는 성능상의 이유로 중요합니다. 정렬되지 않은 볼륨을 마운트할 수 있어야 합니다. 하지만 아직 올바른 파티션 테이블을 사용하지 않고 있으므로 이것이 문제인지 확실하지 않습니다.그러나 그렇지 않을 수도 있습니다. 얼라이먼트가 가능하다완전히여기 붉은 청어가 있어요. 당신이 겪고 있는 일은 잘 알려져 있고다른 것.
$ sudo 별도 /dev/sdb 인쇄 오류: /dev/sdb: 인식할 수 없는 디스크 레이블
parted
EFI 파티션 테이블도 읽을 수 없습니다. 이와 달리fdisk
디스크를 레거시 파티션으로 취급하고 하나의 큰 가상 파티션을 보고하는 방식으로 대체되지 않습니다. 완전히 실패했습니다.크기: 2794GiB(3TB) … 설명: EFI GPT 파티션 실제 ID: 1 버스 정보: scsi@1:0.0.0,1 용량: 349GiB
lshw
내가 보는 것은 3TB(2.7TiB) 디스크입니다. 이것은반품EFI 파티션 테이블을 봅니다. 그러나 EFI 파티션 테이블에서는 이것이 349GiB 디스크라고 주장합니다.
2.7TiB가 349GiB가 된 이유는 무엇입니까?
349GiB에 8을 곱하면 어떤 결과가 나오는지 확인하세요.
USB 디스크 카트리지에 있는 경우 시스템은 디스크에 4KiB 섹터가 있다고 생각하고 모든 것이 해당 섹터 크기를 사용하여 디스크에 액세스합니다. USB 셸에서 시스템의 나머지 부분은 디스크와 기본 디스크를 볼 수 있습니다.진짜, 섹터 크기. 또한 4KiB 섹터에는 732566645개의 섹터가 있습니다.물론전체 디스크의 2.7TiB가 포함되어 있으며 레거시 보호 파티션과 실제 EFI 파티션 테이블 모두 올바른 번호를 가지고 있습니다.
USB 디스크 케이스가 없으면 디스크는 "512e" 호환 모드로 읽혀지며, 대부분의 시스템에서는 디스크에 0.5KiB 섹터가 있는 것으로 가정합니다. (USB 액세서리의 경우 첫 번째 역변환을 취소하는 두 번째 역변환과 관련된 더 복잡한 설명이 있지만 이 답변의 범위를 벗어나므로 여기서는 이에 대해 얼버무립니다.) 파티션 시작 및 파티션 테이블의 크기 번호 실제로 디스크의 논리 블록 주소를 가리키는 다른 모든 것은 잘못된 것입니다.
4KiB는 0.5KiB보다 8배 더 큽니다.
기본 4KiB 섹터 크기에서 "512e"로 다운그레이드하는 것이 가능하지만 마음이 약한 사람에게는 적합하지 않습니다. 디스크를 더 간단한 작동 절차에 넣는 것이 좋습니다뒤쪽에셸로 이동하여 읽으면 나머지 시스템에서 실제 4KiB 섹터 크기를 확인하고 숫자가 올바르게 표시됩니다.