Как изменить разделы на виртуальной машине Ubuntu?

Оригинальный вопрос: как изменить размер корневого раздела без live CD?

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

Это моя текущая таблица разделов, и цель состоит в объединении /dev/vda1 и /dev/vda2. vda1 - мой текущий корневой раздел vda2 - это расширенный раздел, содержащий vda5 (swap)

Device Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048    18874367     9436160   83  Linux
/dev/vda2        18876414    20969471     1046529    5  Extended
/dev/vda5        18876416    20969471     1046528   82  Linux swap / Solaris

Это было бы просто с Gparted и live CD, но я могу только ssh to сервер или открыть его в virt-manager, но он все еще является командной строкой. Как я могу изменить размер корневого раздела?

VM - это сервер Ubuntu 12.04.

1
задан 22 August 2013 в 21:07

3 ответа

Вам нужно подключить свою виртуальную машину с помощью iso live CD - файла, который вы можете скачать. Я предполагаю, что вы не используете GUI-инструмент (например, virt-manager), поэтому вам придется делать это из командной строки.

Вы можете использовать virsh для получения XML-файла виртуальной машины config (я назвал свою VM qemu1)

virsh dumpxml qemu1 > qemu1-config.xml

Теперь отредактируйте этот файл, найдите что-то вроде

<disk type='file' device='cdrom'>
  <driver name='qemu' type='raw'/>
  <target dev='hdc' bus='ide' tray='open'/>
  <readonly/>
  <alias name='ide0-1-0'/>
  <address type='drive' controller='0' bus='1' target='0' unit='0'/>
</disk>

и замените его на

<disk type='file' device='cdrom'>
  <driver name='qemu' type='raw'/>
  <source file='/media/data/isos/gparted-live-0.13.0-1.iso'/>
  <target dev='hdc' bus='ide'/>
  <readonly/>
  <address type='drive' controller='0' bus='1' target='0' unit='0'/>
</disk>

Важные моменты:

адаптировать пути и имена файлов, строка <source file=.../> содержит iso-файл, строка <target .../> не должна содержать tray open now

И теперь вы вставляете новые настройки в действие с помощью

virsh define qemu1-config.xml

VM потребуется перезагрузка.

3
ответ дан 24 May 2018 в 18:50

Вы можете использовать gParted и resize из командной строки. Тип ...

sudo -i
parted

Он покажет

GNU Parted 1.7.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)

list покажет много команд ...

(parted) list check NUMBER do a simple check on the file system cp [FROM-DEVICE] FROM-NUMBER TO-NUMBER copy file system to another partition help [COMMAND] prints general help, or help on COMMAND mklabel LABEL-TYPE create a new disklabel (partition table) mkfs NUMBER FS-TYPE make a FS-TYPE file system on partititon NUMBER mkpart PART-TYPE [FS-TYPE] START END make a partition mkpartfs PART-TYPE FS-TYPE START END make a partition with a file system move NUMBER START END move partition NUMBER name NUMBER NAME name partition NUMBER as NAME print [free|NUMBER|all] display the partition table, a partition, or all devices quit exit program rescue START END rescue a lost partition near START and END resize NUMBER START END resize partition NUMBER and its file system rm NUMBER delete partition NUMBER select DEVICE choose the device to edit set NUMBER FLAG STATE change the FLAG on partition NUMBER toggle [NUMBER [FLAG]] toggle the state of FLAG on partition NUMBER unit UNIT set the default unit to UNIT version displays the current version of GNU Parted and copyright information [ ! d3] print отобразит план диска и добавит номер на диск; resize {number} позволит вам изменить размер диска. Это будет работать только на umounted разделах;)

Я никогда не использовал его таким образом, чтобы быть осторожным при выдаче команд.

1
ответ дан 24 May 2018 в 18:50
  • 1
    «Это будет работать только с размонтированными разделами». Это мое зависание. Я не могу размонтировать корневой раздел. – dan08 21 August 2013 в 19:24
  • 2
    Так что все, что вы можете сделать, это создать каталог на втором разделе и символически привязать к нему;) – Rinzwind 21 August 2013 в 19:58

Для этого можно использовать инструмент командной строки parted.

Сначала вам нужно удалить расширенный раздел.

с помощью parted

parted /dev/vda

Запишите свой расширенный раздел no. с помощью starting and ending blocks и удалить его.

(parted) rm 2  ( Where is 2 your extended partition no.)  

Проверьте его, не используя

 (parted) print

Вы удалите свой расширенный раздел. Теперь сделайте первичный раздел в оставшемся пространстве.

(parted) mkpart primary <starting block no.>   <ending block no.>

в качестве начального и конечного блоков нет. Ранее отмечалось.

 (parted) print

перезагрузите свою систему, чтобы принять аффекты.

Измените размер вашего корневого раздела

 resize2fs /dev/vda

Вам нужно просто проверить дисковое пространство, используя .

df -lh

Вы получите расширение вашего корневого раздела.

0
ответ дан 24 May 2018 в 18:50

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

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