Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7), РУСБ.10015-10
Подготовка хост-машины
Предполагается, что на хост-машине установлена система виртуализации QEMU/KVM и создана по крайней мере одна виртуальная машина (ВМ).
Для предоставления доступа из ВМ к каталогу на хост-машине (т.н. "проброс каталога в ВМ") выполнить на хост-машине следующие действия:
Создать каталог, к которому будет предоставляться доступ. В примере ниже это каталог kvm_share, который создается в домашнем каталоге текущего пользователя:
mkdir ~/kvm_shareВ зависимости от места размещения каталога может потребоваться предоставить права доступа к нему.- При работе в Astra Linux Special Edition с включенным МРД добавить в параметры загрузчика параметр parsec.ccnr_relax=1 (см. Параметры модуля ядра Parsec, задаваемые в загрузчике) и перезагрузить ОС.
- Настроить виртуальную машину, для чего:
- Запустить графический менеджер виртуальных машин (virt-manager): "Пуск" - "Системные" - "Менеджер виртуальных машин".
- Выбрать виртуальную машину.
- В настройках виртуальной машины:
- Для использования драйвера virtiofs в разделе "Память" включить разделяемую память, отметив соответствующий чек-бокс.
- Нажать кнопку "Добавить оборудование".
- Выбрать вариант оборудования "Файловая система"
- Выбрать драйвер virtip-9p или virtiofs.
- Ввести путь к созданному каталогу (для примера - /home/user/kvm_share) ("Путь на хосте"). Если созданный каталог недоступен - создать пул с этим каталогом.
- Ввести название ресурса, например, hostfs. Это не название каталога монитирования, это имя ресурса. Каталог монтирования выбирается при монтировании ресурса в виртуальной машине.
- При необходимости указать, что монтирование выполняется в режиме "только чтение":
- Применить сделанные изменения. Если ВМ в это время запущена - то изменения можно сохранить, но применены они будут после выключения ВМ.
Также возможно напрямую отредактировать файл настроек виртуальной машины:
Для драйвера virtip-9p:
<filesystem type='mount' accessmode='mapped'> <source dir='/home/user/kvm_share'/> <target dir='hostsfs'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/> </filesystem>
Для драйвера virtiofs:
<filesystem type="mount" accessmode="passthrough"> <driver type="virtiofs"/> <binary path="/usr/lib/qemu/virtiofsd"/> <source dir="/home/user/kvm_share"/> <target dir="hostfs"/> <alias name="fs1"/> <address type="pci" domain="0x0000" bus="0x08" slot="0x00" function="0x0"/> </filesystem>
Настройка виртуальной машины
На виртуальной машине:
Создать каталог, куда будет монтироваться каталог хост-машины:
sudo mkdir /hostfiles
Примонтировать в нее каталог хост-машины:
или:sudo mount -t 9p -o trans=virtio hostfs /hostfiles/
sudo mount -t virtifs hostfs /hostfiles/
Для автоматического монтирования добавить запись в файл /etc/fstab, например:
hostfs /hostfiles 9p trans=virtio,version=9p2000.L,rw 0 0
hostfs /hostfiles virtiofs rw 0 0
Устранение возможных ошибок
При возникновении ошибок при загрузке виртуальной машины добавить в файл /etc/initramfs-tools/modules следующие модули
9pnet 9pnet_virtio
После чего обновить initramfs