Ako pripojiť hostiteľský adresár do virtuálneho počítača KVM
Pri používaní QEMU/KVM existuje mnoho spôsobov zdieľania údajov medzi hostiteľským systémom a hosťovskými virtuálnymi strojmi. V tomto návode sa zameriame na vytvorenie priechodu súborového systému pomocou virt-manager alebo manuálnou úpravou definície virtuálneho počítača a naučíme sa, ako pripojiť hostiteľský adresár do virtualizovaného hosťa.
V tomto tutoriále sa naučíte:
- Ako vytvoriť prechod súborového systému pomocou virt-manager
- Ako vytvoriť prechod súborového systému manuálnou úpravou definície XML virtuálneho počítača
- Ako pripojiť hostiteľský adresár na virtualizovaný hosťovský systém
Zavedenie
O virtuálnych strojoch sme hovorili v predchádzajúcich návodoch, keď sme videli, ako vytvárať a spravovať virtuálne stroje KVM z príkazového riadku a ako vytvárať snímky virtualizovaných systémov. V určitých situáciách môže byť potrebné zdieľať údaje medzi hostiteľským a hosťovským systémom. Existuje mnoho možných riešení tohto problému; Jeden spočíva vo vytvorení prechodu súborového systému. To je však možné len na systéme virtualizovanom prostredníctvom "systémovej" inštancie libvirtd (qemu:///system); Nefunguje na neprivilegovaných inštanciách "relácie" libvirtd (qemu:///session).
Vytvorenie prechodu súborového systému pomocou virt-manager
Aby sme vytvorili priechod súborového systému v už existujúcom hosťovskom systéme QEMU/KVM pomocou virt-manager, klikneme na ikonu "lamp" v paneli nástrojov v okne prehliadača virtuálnych strojov. Získame tak prístup k podrobnostiam o konfigurácii virtuálneho počítača:
Prvá vec, ktorú musíme urobiť, je kliknúť na položku "Pamäť " v ľavom stĺpci, potom začiarknuť políčko "Povoliť zdieľanú pamäť" a vykonať zmenu kliknutím na tlačidlo "Použiť" v pravom dolnom rohu stránky. Ak je virtuálny stroj spustený, virt-manager nás upozorní, že zmeny sa prejavia po ďalšom vypnutí:
Teraz musíme kliknúť na tlačidlo "Pridať hardvér" v ľavej dolnej časti stránky a potom na "Súborový systém " v ľavom stĺpci okna, ktoré sa otvorí. Aby sme vytvorili priechod súborového systému, musíme poskytnúť zdroj a cieľovú cestu. Zdrojová cesta je adresár na hostiteľskom počítači, ktorý chceme pripojiť do hosťovského systému; cieľová cesta nie je v skutočnosti cesta, ale označenie, ktoré používame na odkazovanie na prechod z virtuálneho počítača.
V nižšie uvedenom príklade zdieľame adresár /home/doc/Downloads na hostiteľskom počítači a na odkazovanie naň použijeme označenie "host_doc_downloads ". Ak chceme, aby bol adresár prístupný v režime iba na čítanie, možno z bezpečnostných dôvodov, môžeme zaškrtnúť políčko "Exportovať súborový systém ako pripojenie iba na čítanie". Keď sme pripravení, klikneme na tlačidlo "Dokončiť" a potvrdíme, že chceme zariadenie sprístupniť.
Priechod bude k dispozícii po ďalšom "správnom" vypnutí systému (potrebujeme stroj skutočne vypnúť; reštart nebude účinný).
Vytvorenie prechodu súborového systému úpravou súboru XML virtuálneho počítača
Ak nepoužívame virt-manager, môžeme vytvoriť passthrough súborového systému priamo úpravou XML definície virtuálneho počítača. Aby sme získali zoznam všetkých existujúcich virtuálnych strojov, môžeme použiť skript virsh:
$ sudo virsh list --allV tomto prípade príkaz vráti nasledujúci výstup:
Id Name State
--------------------------
8 debian12 runningNa úpravu definície virtuálneho počítača môžeme použiť príkaz virsh-edit a odovzdať názov virtuálneho počítača ako argument:
$ sudo virsh edit debian12
XML súbor sa otvorí v predvolenom editore. Ak chcete povoliť zdieľanú pamäť, pridáme do sekcie "doména" nasledujúci kód:
<memoryBacking>
<source type="memfd"/>
<access mode="shared"/>
</memoryBacking>
Potom, aby sme pridali priechod adresára, pridáme nasledujúci kód, tentoraz do sekcie "zariadenia":
<filesystem type="mount" accessmode="passthrough">
<driver type="virtiofs"/> <source dir="/home/doc/Downloads"/>
<target dir="host_doc_downloads"/>
<address type="pci" domain="0x0000" bus="0x07" slot="0x00" function="0x0"/>
</filesystem>
Keď je pripravený, uložíme a zatvoríme súbor. Aby bola konfigurácia efektívna, musíme vypnúť hosťovský systém:
$ sudo virsh shutdown debian12Pripojenie hostiteľského adresára
Akonáhle sme vytvorili priechod súborového systému, môžeme pripojiť hostiteľský adresár pomocou príkazu "mount", pričom ako typ súborového systému zadajte "virtiofs" a ako sme už povedali, odkazom na zdieľanú cestu hostiteľa prostredníctvom štítku, ktorý sme použili v konfigurácii. V tomto prípade by sme na pripojenie hostiteľského adresára na /mnt v hosťovskom systéme spustili:
$ sudo mount -t virtiofs host_doc_downloads /mntZávery
V tomto tutoriále sme sa naučili, ako vytvoriť priechod súborového systému a pripojiť hostiteľský adresár do hosťa QEMU/KVM. Videli sme, ako vytvoriť passthrough pomocou virt-manager alebo priamou úpravou XML definície virtualizovaného systému pomocou príkazu virsh edit. Nakoniec sme videli, ako pripojiť zdieľaný adresár do hosťovského systému.



