Я использовал 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
Вам необходимо использовать:
partprobe -s /dev/nbd0