Измените размер образа диска

Я испытываю затруднения при попытке увеличить размер образа диска человечности. Я знаю, что должен выполнить следующие шаги - по крайней мере:

$ # 1. resize the image using qemu-img
$ qemu-img resize linux-x86.img +12G
$ # this step succeeded
$ # 2. mount, chroot
$ sudo mount -o loop,offset=32256 linux-x86.img /mnt
$ sudo mount --bind /proc /mnt/proc
$ sudo mount --bind /dev /mnt/dev
$ cd /mnt
$ sudo chroot .

Теперь следующие шаги выполняются в chroot:

$ df -h
df: cannot read table of mounted file systems: No such file or directory
$ # fix this error 
$ cp /proc/mounts /etc/mtab
$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/loop0            496M  458M   13M  98% /
udev                  2.0G  4.0K  2.0G   1% /dev

Вы видите, что свободное место только 13M, даже при том, что я увеличил размер изображения к еще 12 ГБ.

Я пытался запустить fdisk, но таблица разделов была пуста:

$ fdisk /dev/loop0
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xa95b4787.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.


The number of cylinders for this disk is set to 1631.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Command (m for help): p

Disk /dev/loop0: 13.4 GB, 13421609472 bytes
255 heads, 63 sectors/track, 1631 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa95b4787

      Device Boot      Start         End      Blocks   Id  System

Command (m for help): 

Вот/etc/mtab для Вашей информации:

/dev/loop0 / ext2 rw,relatime 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
udev /dev devtmpfs rw,relatime,size=2010936k,nr_inodes=502734,mode=755 0 0

Кроме того, вот вывод "uname-a":

Linux ubuntu 4.2.0-27-generic #32~14.04.1-Ubuntu SMP Fri Jan 22 15:32:26 UTC 2016 x86_64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz GenuineIntel GNU/Linux

Кто-либо может помочь?

1
задан 15 October 2016 в 21:38

2 ответа

Ну, Вы получили дисковую часть изменения размер вниз. То, что Вы не сделали, было, изменяют размер раздела в, который является отдельным шагом от изменения размеров файловой системы. Причина fdisk не находит, что любые разделы - то, потому что она не имеет доступа к целому "диску". В основном то, что Вы сделали, было fdisk/dev/sd? 1, когда Вам нужно к fdisk/dev/sd?, или, в Вашем случае, fdisk linux-x86.img. Необходимо сделать это прежде chrooting также.

Что-то, что поможет Вам объединить изменение размер раздела и файловой системы в один шаг...

$ sudo udisksctl loop-setup -f linux-x86.img
Mapped file linux-x86.img as /dev/loop0.
$ sudo gparted /dev/loop0

можно затем также смонтировать/dev/loop0p1, или что бы то ни было, вместо того, чтобы найти байт запуска раздела и смонтировать то смещение.

2
ответ дан 7 December 2019 в 13:40

Удалите циклическое устройство с этим

sudo udisksctl loop-delete -b /dev/loop0
0
ответ дан 7 December 2019 в 13:40

Другие вопросы по тегам:

Похожие вопросы: