알아채다:아래 출력 중 일부는 Windows 10에서 나온 것이지만 Linux가 해당 파티션을 마운트하지 못하게 하는 문제를 해결하는 방법에 대한 질문이 남아 있습니다.
묻다:기존 Linux 도구가 작동하지 않을 때 파티션 정렬 문제를 해결하는 방법은 무엇입니까?
흥미로운 문제가 발생했습니다. Windows 10(1903 및 1809)에서 쉽게 액세스할 수 있는 디스크가 Linux Mint(19.2), 다른 Ubuntu 18.04 또는 CD에서 부팅된 PartedMagic에서 인식되지 않습니다.
해당 패키지가 설치되고 나는할 수 있는다른 드라이브에서 NTFS 파티션을 마운트합니다. 그러나 자동 설치 프로그램이나 명시적으로 이를 인식하려고 할 때 mount
.
Paragon Hard Disk Manager 15(Linux 기반 복구 미디어), 16(Windows에서 실행) 및 PartedMagic(예: gparted)과 같은 도구가 파티션을 올바르게 인식하지 못하는 것도 이상합니다.
diskpart
Windows 10에서 보기:
DISKPART> list partition
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 Primary 931 GB 1024 KB
최고의 호환성을 원하고 GPT를 사용하지 않을 만큼 작기 때문에 디스크를 MBR/DOS 파티션 테이블로 초기화했습니다.
이 오프셋은 제게는 조금 이상해 보이지만 제가 아는 한 이것은 일반적으로 볼륨(파티션)을 마운트하려고 할 때 Linux 문제가 아니라 Windows 문제입니다.
그러나 Windows 10에서 실행되는 Paragon Hard Disk Manager 16이것을 보고하다:
Paragon Hard Disk Manager™가 이 파티션에서 문제를 발견했습니다. 이는 잘못된 형상으로 인해 발생했을 것입니다. 문제를 해결하려면 로그 파일을 수집하여 지원팀에 보내주세요.
또한 다음과 같이 보고합니다(이전 메시지와 결합).
Invalid partition
HDD number: 2
Partition number: 0
Sector No: | Cyl: | Hd: | Sec:
-------------------------------------------------|--------|-----|-----
First physical sector: | 0x800 (2048) | 0 | 32 | 33
Last physical sector: | 0x74705FFF (1953521663) | 121601 | 25 | 24
Hard disk geometry: | | 121597 | 255 | 63
따라서 정렬이나 이와 관련된 것이 여기서 문제가 될 수 있습니다.
DISKPART> detail disk
ZALMAN ZM-VE500 USB Device
Disk ID: XXXXXXXX
Type : USB
Status : Online
Path : 0
Target : 0
LUN ID : 0
Location Path : UNAVAILABLE
Current Read-only State : No
Read-only : No
Boot Disk : No
Pagefile Disk : No
Hibernation File Disk : No
Crashdump Disk : No
Clustered Disk : No
Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ----- ---------- ------- --------- --------
Volume 1 D XXXXXX.1TB NTFS Partition 931 GB Healthy
DISKPART> select volume=1
Volume 1 is the selected volume.
DISKPART> detail volume
Disk ### Status Size Free Dyn Gpt
-------- ------------- ------- ------- --- ---
* Disk 2 Online 931 GB 0 B
Read-only : No
Hidden : No
No Default Drive Letter: No
Shadow Copy : No
Offline : No
BitLocker Encrypted : No
Installable : Yes
Volume Capacity : 931 GB
Volume Free Space : 58 GB
따라서 설치를 통해 Windows 10이 현재의 파티션에 상당히 만족하고 있다는 것을 알 수 있습니다.
그렇다면 제가 시도한 Linux 기반 도구가 실패할 때 Linux에서 더 이해하기 쉬운 것으로 일관성을 수정하려면 어떻게 해야 합니까?
지금까지 시도한 도구(gdisk, gparted/parted, sfdisk/cfdisk, fdisk)가 다양한 단계에서 실패하기 때문에 이는 22가지 상황인 것 같습니다. 일부는 손상된 GPT를 보고하고 다른 일부는 문제를 지적하지 않지만 데이터 손실(또는 외부 복사) 없이 파티션을 이동/크기 조정하는 데 필요한 작업을 제공하지 않습니다.
참고:여기서 중요한 점은 (추가) 백업 없음으로 인한 데이터 손실을 방지하는 것이 아니라 이미 존재하는 데이터를 오랫동안 복사하지 않는 것입니다. 예, 답변을 기다리는 것은 임시 저장소에 복사하고 파티션을 복구한 다음 내용을 다시 복사하는 것보다 시간이 더 오래 걸릴 수 있다고 생각합니다. 그러나 파티션 나누기 및 파티션 정렬과 관련하여 Linux 도구에서 이와 같이 실패한 적이 없었기 때문에 외부 복사에 의지하지 않고 이 문제를 해결하는 방법이 궁금합니다.
아래는 다양한 도구의 출력입니다. 출력은 ntfsinfo
해당 파티션을 마운트하려고 할 때와 동일합니다.
$ sudo fdisk -l /dev/sdc
Disk /dev/sdc: 931.5 GiB, 1000172421120 bytes, 1953461760 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x5c742dd9
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 1953521663 1953519616 931.5G 7 HPFS/NTFS/exFAT
$ sudo sfdisk -X dos /dev/sdc
Welcome to sfdisk (util-linux 2.31.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Checking that no-one is using this disk right now ... OK
Disk /dev/sdc: 931.5 GiB, 1000172421120 bytes, 1953461760 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x5c742dd9
Old situation:
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 1953521663 1953519616 931.5G 7 HPFS/NTFS/exFAT
Type 'help' to get more information.
$ sudo ntfsinfo -m /dev/sdc1
Failed to read last sector (1953519614): Invalid argument
HINTS: Either the volume is a RAID/LDM but it wasn't setup yet,
or it was not setup correctly (e.g. by not using mdadm --build ...),
or a wrong device is tried to be mounted,
or the partition table is corrupt (partition is smaller than NTFS),
or the NTFS boot sector is corrupt (NTFS size is not valid).
Failed to mount '/dev/sdc1': Invalid argument
The device '/dev/sdc1' doesn't have a valid NTFS.
Maybe you selected the wrong device? Or the whole disk instead of a
partition (e.g. /dev/hda, not /dev/hda1)? Or the other way around?
Failed to open '/dev/sdc1'.
$ sudo gdisk /dev/sdc
GPT fdisk (gdisk) version 1.0.3
Partition table scan:
MBR: MBR only
BSD: not present
APM: not present
GPT: not present
***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by
typing 'q' if you don't want to convert your MBR partitions
to GPT format!
***************************************************************
Command (? for help): p
Disk /dev/sdc: 1953525168 sectors, 931.5 GiB
Model: USB3.0
Sector size (logical/physical): 512/4096 bytes
Disk identifier (GUID): DCB1968C-54AE-4EBB-9FD8-3899FAF16767
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 1953525134
Partitions will be aligned on 2048-sector boundaries
Total free space is 5485 sectors (2.7 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 1953521663 931.5 GiB 0700 Microsoft basic data