Estoy viendo un archivo de imagen que se creó usando dd
una tarjeta SD con Raspbian (con Qt 5.7 que compilé hace un tiempo) como entrada. Al invocar
sudo parted raspbian_jessie_qt5.7_all_modules.img unit s print
yo obtengo
Error: Can't have a partition outside the disk!
Revisé las particiones usando fdisk
usando
sudo fdisk -lu rasp_jessie_qt5.7.img
con la siguiente salida
Disk rasp_jessie_qt5.7.img: 7.8 GiB, 8328838656 bytes, 16267263 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: 0x65a3fac2
Device Boot Start End Sectors Size Id Type
rasp_jessie_qt5.7.img1 8192 131071 122880 60M c W95 FAT32 (LBA)
rasp_jessie_qt5.7.img2 131072 16267263 16136192 7.7G 83 Linux
Cuando miro esto tengo16267263 sectorescomo el límite superior, mientras que el FS donde reside Rasbian termina en el16267263 sector(es decir, en el borde del límite superior disponible). El número total de sectores es16136192.
Puedo usar dd
with if=/dev/zeros
para expandir la imagen y luego expandir Linux FS en ella, pero 1) No estoy seguro de si esto solucionará el problema y 2). Realmente me gustaría ceñirme al tamaño de la imagen original que es de aprox. 7,7 GB.
¿Alguna idea de lo que he pasado por alto y cómo solucionarlo?
Tenga en cuenta que no tengo problemas para escribir la imagen en la tarjeta SD, iniciar mi Rasbian (la tarjeta SD tiene 32 GB en total) y trabajar con ella.
Respuesta1
Su imagen tiene 16267263 sectores, pero los sectores inicial y final cuentan desde 0, por lo que su partición se extiende un sector más allá del final de la imagen. Dado que la imagen parece funcionar bien, probablemente puedas arreglarla agregándole 512 bytes.
Respuesta2
Tuve el mismo problema y lo resolví usando la misma técnica (usando dd
con if=/dev/zeros
para expandir la imagen). Publico los comandos solo para referencia futura:
user@host $ sudo fdisk -l -u=sectors hdd.img
Disk hdd.img: 465.8 GiB, 500107861504 bytes, 976773167 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: 0x8342379a
Device Boot Start End Sectors Size Id Type
hdd.img1 * 2048 718847 716800 350M 7 HPFS/NTFS/exFAT
hdd.img2 718848 210434047 209715200 100G 7 HPFS/NTFS/exFAT
hdd.img3 210434048 211435519 1001472 489M 83 Linux
hdd.img4 211435520 976773167 765337648 365G 8e Linux LVM
user@host $ sudo parted hdd.img unit s print
Error: Can't have a partition outside the disk!
Ignore/Cancel? Ignore
Error: Can't have a partition outside the disk!
Ignore/Cancel? Ignore
Model: (file)
Disk hdd.img: 976773167s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 2048s 718847s 716800s primary ntfs boot
2 718848s 210434047s 209715200s primary ntfs
3 210434048s 211435519s 1001472s primary ext2
4 211435520s 976773167s 765337648s primary lvm
Usando dd
para agregar un sector de 512 bytes:
dd if=/dev/zero bs=512 count=1 >> hdd.img
luego parted
deja de dar errores:
user@host $ sudo fdisk -lu hdd.img
Disk hdd.img: 465.8 GiB, 500107862016 bytes, 976773168 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: 0x8342379a
Device Boot Start End Sectors Size Id Type
hdd.img1 * 2048 718847 716800 350M 7 HPFS/NTFS/exFAT
hdd.img2 718848 210434047 209715200 100G 7 HPFS/NTFS/exFAT
hdd.img3 210434048 211435519 1001472 489M 83 Linux
hdd.img4 211435520 976773167 765337648 365G 8e Linux LVM
user@host $ sudo hdd.img unit s print
Model: (file)
Disk hdd.img: 976773168s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 2048s 718847s 716800s primary ntfs boot
2 718848s 210434047s 209715200s primary ntfs
3 210434048s 211435519s 1001472s primary ext2
4 211435520s 976773167s 765337648s primary lvm