Назад | Перейти на главную страницу

Монтирование файловой системы ВМ из dom0 в XEN

У меня XEN 4.0.x.x и Cent os 5.5

Файл .image каждой виртуальной машины хранится на dom0 в каталоге / var / lib / xen / images. Это какой-то блок на жестком диске, который я могу смонтировать с dom0 и получить доступ к файловой системе dom0.

Что я действительно хочу сделать, так это смонтировать файловую систему виртуальной машины и получить доступ к каталогу / etc / sysconfig / network-scripts. Есть способ, которым я могу это сделать.

Я попытался напрямую использовать «mount -o loop /var/lib/xen/images/VMname.img», но не смог запросить тип файловой системы. Я не получил никакого типа файловой системы, используя команду «файл» для этого изображения. Является ли этот образ доступным файлом или каким-то двоичным или системным файлом, создаваемым XEN. Если это двоичный файл, я думаю, что мы мало что сможем с ним поделать. Но если он в доступном формате, мы можем что-то с ним сделать. Я хочу знать, как я могу это сделать.

Образ виртуальной машины больше похож на полный жесткий диск, чем на отдельную файловую систему, которую вы можете смонтировать, что означает, что у нее есть таблица разделов. Вы можете использовать kpartx инструмент, чтобы сделать все разделы доступными для монтирования следующим образом:

# kpartx -av /var/lib/xen/images/VMname.img
add map loop0p1 : 0 29333504 linear /dev/loop0 2048
add map loop0p5 : 0 1380352 linear /dev/loop0 29337600
# mount /dev/mapper/loop0p1 /mnt

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

# kpartx -d /var/lib/xen/images/VMname.img

(Обратите внимание, пример взят из http://ppadala.net/blog/2010/09/kpartx-to-mount-vm-disk-images/)

Для более обширных модификаций вы можете взглянуть на Guestfish инструмент.

Как видно из приведенных выше комментариев, мне не удалось смонтировать второй цикл, так как это снова был раздел LVM. Наконец я нашел способ смонтировать файл VM.img и выполнить любую настройку на гостевой машине из Dom-0.

Выполните следующие шаги, чтобы смонтировать файл образа:

  1. Первый огонь vgscan на dom-0, вы получите логические тома, которые в данный момент активны на dom-0. Теперь вы можете с уверенностью предположить, что этот номер тома, показанный командой, принадлежит вашей машине dom-0, а не гостю.

  2. Теперь выполните kpartx -av /var/lib/xen/images/$machine_name.img Эта команда отобразит циклы для файла образа виртуальной машины и активирует группу томов гостевой виртуальной машины.

  3. Теперь снова огонь vgscan вы увидите еще одну VolGroup, отличную от той, которую вы видели на шаге 1. Теперь вы можете быть уверены, что это группа томов вашей гостевой виртуальной машины.

  4. Теперь вы должны знать логические тома в VolumeGroup, чтобы успешно их смонтировать. Для этого запустите команду vgchange -ay / VolGroup00 (недавно созданная группа томов на шаге 2) /

  5. Теперь выполните команду lvs, это даст вам логические тома в VolGroup.

  6. Теперь создайте точку монтирования и смонтируйте любой логический том, который вы хотите подключить, как показано ниже.

    монтировать / dev / VolGroup00 / LogVol00 $ mount_path

  7. Теперь вы можете получить доступ к любому каталогу гостевой виртуальной машины таким образом и изменить любую конфигурацию, которую хотите. Как только вы закончите, вы можете выполнить обратную процедуру, например

    а) Размонтировать $ mount_path

    б) vgchange -an VolGroup00

    в) kpartx -d /var/lib/xen/images/$machine_name.img

И вы сделали