Я использовал qemu-nbd для монтирования жестких дисков виртуальной машины .vdi . Однако qemu-nbd внезапно * перестал работать.

Мой обычный рабочий процесс был

# modprobe --verbose nbd
insmod /lib/modules/4.4.0-127-generic/kernel/drivers/block.nbd.ko max_part=15
# qemu-nbd -c /dev/nbd0 /path/to/vm.vdi
# mount -o loop /dev/nbd0p1 /mnt/
... do stuff to /mnt/ content ...
# umount /mnt/
# qemu-nbd -d /dev/nbd0
# rmmod nbd

Этот процесс больше не работает. qemu-nbd -c ... больше не создает nbd0p1 и поэтому не может быть смонтирован.

Использование --verbose приводит к тому, что qemu-nbd не заканчивается после строки

NBD device /dev/nbd0 is now connected to /path/to/vm.vdi

Тот же процесс используется для работы на компьютере без ошибок. Тот же процесс работает на другом компьютере без ошибок, используя тот же .vdi (проверено через md5sum). Данный компьютер работает под управлением Ubuntu 16.04.

Как я могу восстановить процесс в рабочем состоянии?

Я старался:

  • перезагрузка компьютера
  • apt-get purge qemu-utils && apt-get install qemu-utils
  • передача max_part=16 в modprobe (как предлагают некоторые онлайн-источники)

* внезапно означает, что я успешно выполнил сценарий, и в следующий раз nbd0p1 был создан, хотя я не устанавливал обновления или вносил какие-либо изменения конфигурации, о которых мне известно.

1 ответ1

0

вам нужно использовать:

partprobe -s /dev/nbd0

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .