백업 드라이브 이미지의 크기를 줄이려고 합니다. 원본 디스크에는 다음과 같은 파티션이 있습니다.
Model: ST916082 1A (scsi)
Disk /dev/sde: 160GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 65.7GB 65.7GB primary ntfs boot
2 65.7GB 160GB 94.4GB extended lba
5 65.7GB 160GB 94.4GB logical ntfs
이미지는 다음 명령을 사용하여 논리 파티션에서 생성되었습니다.
> sudo ddrescue /dev/sde5 datapartition logfile
Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued: 0 B, errsize: 0 B, errors: 0
Current status
rescued: 94368 MB, errsize: 0 B, current rate: 23068 kB/s
ipos: 94368 MB, errors: 0, average rate: 28839 kB/s
opos: 94368 MB, time from last successful read: 0 s
Finished
ntfsresize -i -f datapartition
설명하다:
ntfsresize v2012.1.15AR.5 (libntfs-3g)
Device name : datapartition
NTFS volume version: 3.1
Cluster size : 4096 bytes
Current volume size: 26999992832 bytes (27000 MB)
Current device size: 94368605184 bytes (94369 MB)
Checking filesystem consistency ...
100.00 percent completed
Accounting clusters ...
Space in use : 26107 MB (96.7%)
Collecting resizing constraints ...
You might resize at 26106810368 bytes or 26107 MB (freeing 893 MB).
Please make a test run using both the -n and -s options before real resizing!
그러면 데이터에 맞게 파일 시스템의 크기를 조정했지만 장치에는 그렇지 않은 것 같습니다. (2년 전 일이라 잊어버렸네요.) 장치 크기를 조정하려면 fdisk를 사용해야 겠죠? 그러나 fdisk는 파티션을 인식하지 못합니다.
> fdisk -lu datapartition
Disk datapartition: 94.4 GB, 94368605184 bytes
255 heads, 63 sectors/track, 11472 cylinders, total 184313682 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
Disk identifier: 0x69205244
This doesn't look like a partition table
Probably you selected the wrong device.
Device Boot Start End Blocks Id System
datapartition1 ? 218129509 1920119918 850995205 72 Unknown
datapartition2 ? 729050177 1273024900 271987362 74 Unknown
datapartition3 ? 168653938 168653938 0 65 Novell Netware 386
datapartition4 2692939776 2692991410 25817+ 0 Empty
Partition table entries are not in disk order
cfdisk도 마찬가지입니다:
> cfdisk datapartition
FATAL ERROR: Bad primary partition 1: Partition begins after end-of-disk
Press any key to exit cfdisk
그러나 파티션을 마운트하고 거기에서 파일을 복사할 수 있습니다. 장치 크기를 어떻게 조정하나요?
답변1
단지 파티션 덤프인 경우에는 파티션 테이블이 없습니다. 파티션은 파일이므로 파일을 축소하면 됩니다.
truncate -s 27000832000 datapartition
(안전을 위해 27000832000은 26999992832이며 다음 MiB로 반올림됩니다. 이를 일부 qcow2
형식이나 설치 가능한 다른 압축 형식으로 압축하려는 경우)