Для некоторого проекта у меня должна быть виртуальная машина QEMU/KVM с изображением неструктурированного диска.
Таким образом, я создал это изображение неструктурированного диска, столь же простое как
dd if=/dev/zero of=~/disk.img bs=1M count=3092
и получил 3 Гбита пространства на нем.
Затем у меня есть установка новая виртуальная машина из Диспетчера виртуальных машин (virt-manager
) на Ubuntu 16.04 LTS использование моей нормальной учетной записи. Таким образом, я установил Ubuntu от mini.iso до внутренней части ~/disk.img. Мой пользователь является членом libvirtd
группа. Я могу загрузить VM, когда изображение виртуального диска в моей домашней папке.
Затем я переместил этот файл во внешний FAT32 (vfat) носитель, который является смонтированным чтением-и-записью. Таким образом, это расположено внутри/media/username/FLASH/disk.img. Я указал этот путь в разделе Настройки виртуального диска виртуальной машины.
Но когда я пытаюсь запустить эту машину, я получаю следующее сообщение об ошибке:
Ошибка стартовый домен: внутренняя ошибка: процесс, из которого выходят при соединении с монитором: 2020-01-22T21:45:20.221697Z-qemu-system-x86_64: - управляют файлом =/media/username/FLASH/disk.img, format=raw, if=none, id=drive-ide0-0-1: не Мог открыть '/media/username/FLASH/disk.img': Разрешение отклонено
И это сообщение сохраняется, даже если я запускаю Диспетчера виртуальных машин как корневое использование sudo virt-manager
.
Полномочия этого файла следующие:
$ ls -al /media/username/FLASH/disk.img -rw-r--r-- 1 username username 3221225472 Jan 23 00:18 /media/username/FLASH/disk.img
Также я пытался создать использование символьной ссылки ln -s /media/username/FLASH/disk.img ~/disk.img
и машина набора для использования последнего дискового пути. Но это не работает также.
Как я могу загрузить виртуальную машину QEMU/KVM от образа диска, расположенного на внешнем устройстве хранения данных?
У меня была эта проблема полномочий при выполнении VM's от карты флэш-памяти.
Проблема, которую я имел, состояла в том, что моя система (Fedora 27) автоматически монтирует новые диски (внешние жесткие диски, USB, SD) к
/run/media/(username)/(device name)
(в Вашей системе его/media/username/....)
По любой причине это вызывает проблему полномочий. То, что я сделал для устранения проблемы, было размонтированием диск от того местоположения как корень, и затем смонтируйте его к /mnt
. Моя карта флэш-памяти USB /dev/sdc1
в моей системе, таким образом, я сделал следующее.
# su - (then enter root password)
# umount /run/media/yourusername/devicename
# mount /dev/sdc1 /mnt (mount usb to /mnt)
После этого я просто удостоверился, что имел символьные ссылки от исходного местоположения дисков qcow2 к новому местоположению (все еще как корень)
# cd /var/lib/libvirt/images
# ln -s (new target) (link name)
таким образом, если Ваш vm называют MyVM
# ln -s /mnt/Myvm.qcow2 MyVm.qcow2
После того как я видел, что мои VMs теперь работали, я отредактировал /etc/fstab
автоматически смонтировать диск в /mnt
. Папки и диски qcow2 принадлежали моей стандартной учетной записи пользователя и группе. Я уверен, что существуют лучшие способы сделать это, но это - то, что работало на меня.