Configuration de VM
Setting up a VM on Unraid is a flexible way to run full operating systems - such as Windows, Linux, or other platforms - alongside your containers and native apps. Whether you want to test new software, run legacy applications, host a desktop environment, or utilize hardware passthrough for gaming or creative work, Unraid's VM Manager makes the process approachable for all skill levels.
Unraid 7.x brings significant enhancements to VMs, including:
- Clones et instantanés des VM
- Modèles de VM créés par l'utilisateur
- Edition/visualisation XML en ligne
- Fonctionnalités avancées de partage et de passage GPU
Consultez la section fonctionnalités du gestionnaire de VM pour plus de détails.
Une fois votre système préparé et vos préférences définies, vous pouvez créer une nouvelle machine virtuelle (VM) en utilisant le WebGUI.
Créer vos propres machines virtuelles
With your system prepared and preferences set, you can create a new VM using the WebGUI.
- Cliquez sur Ajouter une VM dans la page Machines Virtuelles.
- Téléchargez votre ISO d'installation du système d'exploitation et, pour les VMs Windows, l'ISO des derniers pilotes VirtIO sur le partage
isos. - Décidez si vous utiliserez le GPU passthrough ou le VNC pour les graphiques.
Pour créer une VM basique :
- Cliquez sur Ajouter une VM dans la page Machines Virtuelles.
- Définissez le Modèle sur Personnalisé, ou sélectionnez un modèle de système d'exploitation prédéfini pour les distributions courantes.
- Entrez un Nom et, si vous le souhaitez, une Description pour votre VM.
- Basculez Démarrage automatique si vous souhaitez que le VM démarre automatiquement avec le array.
- Sélectionnez le type de Système d'Exploitation. Cela ajustera également l'icône VM.
- Affectez des cœurs CPU à la VM. Vous pouvez affecter jusqu'au nombre de cœurs physiques disponibles sur votre hôte.
- Spécifiez la Mémoire Initiale (RAM) pour la VM. Consultez la documentation de votre OS invité pour obtenir les valeurs recommandées.
- Choisissez l'ISO d'installation de l'OS dans votre partage isos.
- Configurez le disque vDisk principal (emplacement, taille, et type).
- Sélectionnez une Carte Graphique :
- Attribuez une Carte Son (optionnel, mais nécessaire pour l'audio HDMI via GPU).
- Assignez des Périphériques USB selon les besoins.
- Les dispositifs doivent être attachés avant de démarrer la VM (le branchement à chaud USB n'est pas supporté).
- Le périphérique USB Unraid n'est pas disponible pour l'affectation.
- Cliquez sur Créer la VM. La VM démarrera automatiquement à moins que vous ne décochiez Démarrer la VM après la création.
Modèles VM utilisateur
Unraid 7.1+ introduit des modèles d'utilisateur VM, simplifiant la sauvegarde et la réutilisation de vos configurations personnalisées VM. Les modèles d'utilisateur rationalisent le déploiement VM et assurent la cohérence des configurations.
Pour créer un modèle utilisateur :
- Modifiez la VM que vous souhaitez modéliser.
- Sélectionnez Créer/Modifier un modèle et entrez un nom.
- Votre modèle sera maintenant disponible dans l'espace des modèles utilisateur sur l'écran Ajouter une VM.
Pour utiliser un modèle utilisateur :
- On the VMs page, click Add VM and select your template from the User Templates section.
Importation/exportation :
- Survolez un modèle utilisateur et cliquez sur la flèche pour l'exporter vers votre serveur ou le télécharger.
- Sur un autre système Unraid, utilisez Importer à partir d'un fichier ou Télécharger pour ajouter le modèle.
Nouveautés dans Unraid 7.x : Gestionnaire de VM
Unraid 7.x introduces a range of powerful enhancements to the VM Manager, streamlining the process of running and managing VMs. These features cater to beginners and advanced users, making deploying, customizing, and optimizing your VMs simpler.
:::tip[Highlights]
- Gagnez du temps avec des clones de VM, instantanés, et des modèles réutilisables
- Ajustez finement la performance et la compatibilité avec des options avancées de passage et de stockage
- Profitez de la visibilité et du contrôle améliorés avec des statistiques d'utilisation et une édition
XMLen ligne
:::
Améliorations des graphismes et du partage GPU
- VM clones & snapshots: Duplicate VMs or quickly save/restore their state for testing or backup.
- User VM templates: Save your custom VM configurations and deploy new VMs with just a few clicks.
- Edition/visualisation XML en ligne : Visualisez ou copiez instantanément le
XMLgénéré par le WebGUI ; passez en modeXMLpour des éditions avancées. - Désactivation du démarrage automatique : Choisissez quels VMs démarrent automatiquement avec votre array.
- Options de configuration du Timer/décalage
Améliorations du flux de travail
- PCI multifonction/autre : Assignez des dispositifs PCI complexes ou des groupes pour des scénarios avancés de passage.
- Passage en ligne de commande QEMU : Ajoutez des arguments QEMU personnalisés pour un réglage expert des VM.
- Remplacement de stockage : Spécifiez l'emplacement de stockage pour chaque disque virtuel de VM.
- Indicateur SSD & deslocage : Optimisez la performance des vDisques pour les SSD et activez le support discard/unmap.
SR-IOVpour iGPU Intel : Partagez les graphiques intégrés Intel entre plusieurs VMs.- Validation du nom de VM pour ZFS : Empêchez l'utilisation de caractères non pris en charge dans les noms de VM pour les pools ZFS.
Options matérielles et de stockage avancées
Améliorations des graphismes et du partage GPU
- View all graphics cards and VM-assigned IP addresses in the VM tab
- Support pour la cible QEMU ppc64 et
qemu:override - Support hypervclock pour les VMs Windows
- "Migratable" activé/désactivé pour le CPU émulé
- Options de configuration du Timer/décalage
- Pas d'options de keymap/nogpu disponibles pour des cas d'utilisation spécifiques
- Amélioration de la sélection et de l'édition des icônes de VM
- Avertissements lors de l'affectation du GPU principal comme passage (peut nécessiter
vBIOS) - Démarrez les VMs Unraid en mode GUI avec le pilote vidéo
QXL - Divers correctifs pour les problèmes de chemin et d'icône dans la vue
XML
VM snapshots
VM snapshots allow you to save the current state of your VM at a specific point in time. You can revert to that state if something goes wrong or use snapshots to test changes safely. This is particularly useful before installing new software, making configuration changes, or performing system updates.
When you create a snapshot, Unraid generates an "overlay file" that captures all changes made to your VM after that point. You can think of it like this:
- Original VM disk: This represents your VM's current state (similar to a photograph).
- Snapshot overlay: This is a separate file that records all changes made after the snapshot (like a list of edits).
- VM continues running: Your VM uses both the original disk and the overlay file together.
This setup allows you to create multiple snapshots, with each one generating its own overlay file. This means you can easily revert to any previous state.
Example scenario:
- You create a snapshot called "Clean Windows Install."
- You install some software and make changes.
- You create another snapshot called "After Software Install."
- You can now revert to either the clean install or the state after the software installation.
- You can also use Block Commit or Block Pull to make changes permanent.
- Creating snapshots
- Managing snapshots
- Reverting to snapshots
To create a snapshot of your VM:
- Go to the VMs page in the WebGUI.
- Click on the VM name to expand its details.
- Look for the Snapshots section and click Create Snapshot.
- Enter a descriptive name for your snapshot (for example, "Before Windows Update" or "Clean Install State").
- Memory dump option: In current Unraid builds, the "Memory dump" checkbox is not preselected by default. Checking it includes the VM's RAM for a full memory-backed snapshot (captures the live running state, but is larger and slower to create/restore). Leaving it unchecked creates a disk-only, crash-consistent snapshot (smaller and faster, but any unsaved in-memory data will be lost). Choose based on whether you need full live state preservation or just disk recovery.
- Click Create to save the snapshot.
- Create snapshots before making significant changes to your VM.
- Use descriptive names that help you remember what the snapshot contains.
- Choose Memory dump based on your needs: enable it for full live state preservation, or leave it off for faster disk-only recovery.
- Keep snapshots for important milestones, but delete old ones to save storage space.
Once you have snapshots, you can see them listed in the VM's details section. Each snapshot shows:
- Name: The name you gave the snapshot.
- Date: When the snapshot was created.
- Size: How much storage space it uses.
To manage snapshots:
- Allez à l'onglet VMs dans le WebGUI.
- Click on the VM name to expand its details.
- Navigate to the Snapshots section.
- Use the available buttons for Revert, Block Commit, Block Pull, or Remove.
Revert snapshot: This restores your VM to exactly how it was when you created the snapshot. Any changes made after the snapshot will be lost. The VM will use the original disk file as if the snapshot never existed.
Block Commit: This process copies all changes from the snapshot overlay back into the original VM disk file. By default, it shows "Pivot" and "Delete" options selected:
-
Pivot: This option switches your VM from using the overlay file back to using the original disk file. After the commit, your VM will use the original disk (which now contains the changes) instead of the overlay file.
-
Delete: This option removes the snapshot overlay file after the changes have been committed to the original disk.
-
Together ("Pivot" + "Delete"):
-
With both selected: Changes are committed to the original file, your VM switches back to using the original disk, and the overlay file is deleted. This is the most common choice.
-
With both unchecked: Changes are committed to the original file, but your VM continues using the overlay file, and the overlay file remains to capture future changes.
-
Use Block Commit when you are satisfied with the changes and want to make them permanent.
Block Pull: This merges the original disk data into the snapshot overlay file, making the overlay file complete and independent. Your VM continues using the overlay file, but it no longer depends on the original disk. Use this when you want to keep your current state and make the snapshot permanent.
Remove snapshot: This simply deletes the snapshot overlay file without affecting your VM. Your VM continues using the original disk file, and any changes made after the snapshot are lost.
If you need to go back to a previous state:
- Stop the VM if it's currently running.
- Allez à l'onglet VMs dans le WebGUI.
- Click on the VM name to expand its details.
- Navigate to the Snapshots section.
- Find the snapshot you want to restore and click the Revert button.
- Confirm that you want to revert (this will lose any changes made after the snapshot).
- Start your VM - it will now be exactly as it was when you created the snapshot.
Reverting to a snapshot permanently deletes any changes made after that snapshot was created. Make sure you really want to lose those changes before reverting.
Snapshot storage
Snapshots use storage space on your system. Each snapshot saves only the differences between the current state and the snapshot state; however, these differences can still accumulate over time.
Here are some points to consider:
- QCOW2 disks support snapshots and work well with this feature.
- Storage location: Snapshots are stored with your VM files, so make sure you have enough space on your cache pools or array.
Snapshot storage location:
- Snapshot metadata is stored in
/etc/libvirt/qemu/snapshotdb/VM_name/. - Actual snapshot data is stored alongside your VM files on cache pools or array.
For more detailed technical information about how VM snapshots work, including block diagrams and advanced scenarios with multiple snapshots, see the QEMU snapshots documentation.
- Before system updates: Create a snapshot before installing Windows updates or Linux package updates. If something goes wrong, you can quickly revert to a previous version.
- Testing software: Install new applications or make configuration changes. If you're not satisfied with the results, revert to your clean VM snapshots from before the changes.
- Development work: Create snapshots at different stages of your project. This lets you experiment freely and return to known good states.
- Backup strategy: While not a replacement for proper backups, snapshots provide quick recovery for recent changes.
Utilisation des GPUs virtuels et partage GPU
Unraid supporte désormais le partage avancé de GPU via VirGL et QXL pour les VMs Linux (et certains GPUs Nvidia avec le driver Nouveau).
- Pour utiliser
VirGL: définissez la Carte Graphique sur Virtuel et le pilote vidéo de la console VM sur VirtIO(3D). - Pour utiliser
QXL: définissez la Carte Graphique sur Virtuel et le pilote vidéo de la console VM surQXL(meilleur). VirGLn'output pas vers un moniteur physique et n'est pas compatible avec les VMs Windows ou les plugins Nvidia standard.QXLsupporte le multi-écran et une mémoire vidéo configurable.
Options avancées
Développez cette section pour voir des conseils sur les options plus avancées
Passez à la Vue Avancée sur la page Ajouter une VM pour accéder à des paramètres supplémentaires.
Voici les options avancées les plus importantes, réparties en sections ciblées :
Mode CPU :
- Passage de l'hôte : Expose toutes les caractéristiques du CPU hôte à la VM pour des performances maximales.
- Émulation : Utilise un modèle CPU générique, réduisant les problèmes de compatibilité mais limitant les performances.
Ballonnement de mémoire :
- Définissez une valeur de Mémoire Max pour activer l'allocation dynamique de mémoire (ballonnement de mémoire).
- Non disponible pour les VMs avec des appareils PCI assignés (par exemple, GPU passthrough).
Type de machine :
i440fx: Défaut pour les VMs Windows. Modifiez uniquement si vous avez des problèmes de GPU passthrough.Q35: Par défaut pour les VMs Linux et recommandé pour la plupart des systèmes d'exploitation modernes, surtout avec GPU passthrough.
Type de BIOS :
- SeaBIOS : BIOS traditionnel pour les OSes hérités.
- OVMF : BIOS UEFI requis pour Windows 8+, la plupart des distributions Linux modernes, et GPU passthrough.
Le type de BIOS peut uniquement être défini lors de la création d'une nouvelle VM.
Extensions Hyper-V :
- Pour les VMs Windows, activez les extensions Hyper-V pour améliorer la compatibilité et les performances.
ISO des pilotes VirtIO :
- Remplacez l'ISO VirtIO par défaut si nécessaire, surtout pour tester ou utiliser des pilotes plus récents.
Type de vDisk :
RAW: Meilleures performances, moins flexible pour les instantanés.QCOW2: Supporte les instantanés mais offre une performance légèrement inférieure.
Mappages VirtFS (VMs Linux) :
- Ajoutez plusieurs partages VirtFS (
9p) pour l'intégration du système de fichiers entre l'hôte et l'invité. - Voir la documentation QEMU 9p pour plus de détails.
Paramètres réseau :
- Modifiez l'adresse MAC du réseau ou sélectionnez un pont réseau alternatif.
- Cliquez sur le symbole de rafraîchissement pour générer automatiquement une nouvelle adresse MAC.
- Ajoutez des interfaces réseau virtuelles supplémentaires selon besoin.
- Si votre VM ne démarre pas, vérifiez vos chemins ISO et vDisk.
- Pour GPU passthrough, assurez-vous que votre matériel et vos paramètres BIOS prennent en charge IOMMU/VT-d/AMD-Vi.
- Certains périphériques USB peuvent ne pas fonctionner de manière fiable avec le passage - testez et consultez les forums Unraid pour des conseils spécifiques aux périphériques.
Attachement des appareils PCI pour le passage
Before you can assign a GPU or any PCI device to a VM, it's important to "bind" the device to the vfio-pci driver. This process hides the device from Unraid and dedicates it solely to your VM.
Pour lier un dispositif PCI (GPU, contrôleur USB, NVMe, etc.) pour le passage :
- Naviguez vers Outils → Périphériques système dans le WebGUI.
- Passez en revue la liste de tous les appareils PCI détectés et leurs groupes IOMMU.
- Cochez la case à côté de chaque appareil que vous souhaitez lier à vfio-pci (pour le masquer d'Unraid).
- Notez que les appareils déjà utilisés par Unraid (tels que les contrôleurs de disque et les cartes réseau) ne peuvent pas être sélectionnés.
- Si vous sélectionnez un GPU, choisissez le périphérique sonore associé.
- Cliquez sur Lier les sélectionnés à VFIO au démarrage pour sauvegarder vos modifications.
- Redémarrez votre serveur pour que le lien prenne effet.
Le GPU passthrough vous permet d'assigner une carte graphique physique directement à une machine virtuelle (VM), offrant des performances quasi-native pour les jeux, le travail créatif ou l'apprentissage automatisé.
Après liaison, les appareils liés apparaîtront dans le menu déroulant Autres Périphériques PCI lors de l'édition ou de la création d'une VM.
Chercher des problèmes
- Si vous avez précédemment utilisé le plugin
VFIO-PCIConfig, désinstallez-le - cette fonctionnalité est maintenant intégrée. - Pour réinitialiser toutes les liaisons, supprimez
/boot/config/vfio-pci.cfget redémarrez votre système. - Après redémarrage, utilisez le bouton Voir le journal
VFIO-PCIsur la page des Périphériques système pour un dépannage avancé. - N'oubliez pas que si vous liez votre seul GPU, Unraid pourrait ne pas démarrer en mode GUI. Assurez-vous de prévoir cela.
- Pour plus d'informations, consultez le guide officiel sur les forums Unraid.
Passerelle GPU pour machines virtuelles
GPU passthrough allows you to assign a physical graphics card directly to a VM, providing near-native performance for gaming, creative work, or machine learning.
- Performance : Accès direct au matériel pour des applications exigeantes.
- Compatibilité : Exécutez des charges de travail intensives en graphique nécessitant une carte graphique dédiée.
- Flexibilité : Transformez votre serveur Unraid en une station de travail polyvalente.
Prérequis
Matériel :
- CPU supportant Intel VT-d ou AMD-Vi (IOMMU activé dans le BIOS).
- GPU compatible avec le passage (voir matériel testé par la communauté).
- Une carte mère qui isole correctement les périphériques PCIe.
Pour injecter un ROM :
- Unraid 6.9+ avec la virtualisation activée.
- Le BIOS OVMF (UEFI) est recommandé pour les VM sur SeaBIOS).
To set up GPU passthrough:
- Assurez-vous que votre matériel prend en charge IOMMU et est activé dans votre BIOS.
- Activez les fonctionnalités de virtualisation dans le BIOS (Intel VT-x/VT-d ou AMD-v/AMD-vi).
- Mettez à jour Unraid à la dernière version stable.
- Attribuez la carte graphique à la VM lors de la création ou de l'édition depuis l'écran sous la section carte graphique.
- Assignez un clavier et une souris USB au VM si vous utilisez le GPU passthrough.
- Utilisez le BIOS OVMF pour le VM pour une meilleure compatibilité avec le GPU passthrough.
- Démarrez la VM et vérifiez que le GPU est bien passé.
Certaines cartes graphiques peuvent nécessiter une configuration supplémentaire ou une injection ROM pour un passage correct.
Bloqué à l'UEFI shell
Certaines GPU, en particulier certains modèles NVIDIA, nécessitent qu'un fichier ROM soit manuellement fourni à la VM pour s'initialiser correctement. Cela est souvent nécessaire lorsque le firmware embarqué du GPU n'est pas correctement transmis par défaut, causant des problèmes comme des écrans noirs ou des échecs de démarrage. L'injection manuelle de ROM est un dernier recours après avoir essayé des ajustements de BIOS et de configuration VM.
Pour injecter un ROM :
-
Télécharger le ROM de la carte graphique :
- Visitez la base de données VGA BIOS de TechPowerUp.
- Recherchez le modèle de votre carte graphique et téléchargez le fichier ROM correct.
- Stockez la rom dans votre partage
isosoudomainssur Unraid.
-
Éditez le VM XML :
-
Arrêtez la VM et ouvrez sa configuration XML (Éditer l'XML depuis le menu contextuel de la VM).
-
Localisez le bloc
<hostdev>du GPU et ajoutez le tag<rom>:
<hostdev mode='subsystem' type='pci' managed='yes'>
<driver name='vfio'/>
<source>
<address domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
</source>
<rom file='/mnt/user/isos/gpu_roms/your_gpu.rom'/> <!-- Update path -->
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</hostdev>
-
-
Enregistrez et testez : Cliquez sur Mettre à jour et démarrez la VM.
Problèmes courants
This section covers advanced topics and solutions for common issues when managing VMs on Unraid. Expand the sections below for step-by-step instructions and troubleshooting tips.
Agrandir un vDisk
Cliquer pour développer/réduire
If your VM is running low on disk space, you can increase the size of its vDisk directly from the WebGUI.
Pour agrandir un vDisk :
- Allez à l'onglet VMs dans le WebGUI.
- Assurez-vous que la VM est arrêtée.
- Cliquez sur le nom de la VM pour développer ses détails.
- Localisez le vDisk que vous souhaitez agrandir. Cliquez sur la valeur dans le champ Capacité pour la rendre modifiable.
- Entrez la nouvelle taille souhaitée (par exemple,
100Gpour 100 gigaoctets) et appuyez sur Entrer. - La nouvelle capacité est maintenant définie.
Vous ne pouvez pas réduire un vDisk depuis l'interface graphique d'Unraid ; seule l'expansion est prise en charge.
Extension de la partition dans votre système d'exploitation invité
Après avoir redimensionné le vDisk, démarrez votre VM. Vous devez étendre la partition dans le système d'exploitation invité pour utiliser le nouvel espace:
-
Windows : Utilisez l'outil intégré de gestion des disques pour étendre votre partition.
-
Linux (LVM) : Utilisez des outils comme
fdisk,pvresize,lvextend, etresize2fspour étendre les partitions et volumes logiques.Exemple :
sudo fdisk /dev/vda
sudo pvresize /dev/vda3
sudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lvAjustez les noms de périphériques selon vos besoins.
Toujours sauvegarder votre VM avant de modifier les disques.
Bloqué à l'UEFI shell
Cliquer pour développer/réduire
Si votre VM démarre sur un UEFI shell au lieu de votre système d'exploitation, vous pouvez démarrer le processus de démarrage manuellement :
À l'invite de commande du UEFI shell, entrez :
fs0:
cd efi/boot
bootx64.efi
La VM devrait maintenant continuer à démarrer dans votre système d'exploitation.
Si cela se produit fréquemment, vérifiez l'ordre de démarrage de votre VM et assurez-vous que le bon vDisk ou ISO est défini comme périphérique de démarrage principal dans les paramètres de la VM.
Écran noir après le démarrage de la VM
Cliquer pour développer/réduire
Si votre VM démarre mais que l'écran reste vide :
-
Vérifiez les paramètres BIOS :
- Réglez la carte graphique principale sur le GPU intégré (iGPU), pas sur le GPU de passage.
- Mettez à jour le BIOS de la carte mère et de la carte graphique aux dernières versions.
-
Ajustez les paramètres de la VM :
-
Injection ROM manuelle (dernier recours) : Injectez un ROM GPU manuellement.
Erreur : "Impossible de définir IOMMU pour container : opération non autorisée"
Cliquer pour développer/réduire
Cette erreur indique généralement des conflits de groupe IOMMU ou un manque de remappage d'interruptions :
-
Activer le remplacement PCIe ACS :
- Allez à Paramètres → Gestionnaire de VMs.
- Réglez remplacement PCIe ACS sur Downstream ou Both.
- Redémarrez Unraid.
-
Autoriser les interruptions non sécurisées (avancé) :
-
Éditez
syslinux.cfgsur votre clé USB Unraid :append vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot -
Utilisez ceci uniquement si vous faites entièrement confiance à vos invités VM.
-
Pour des explications détaillées sur les groupes IOMMU, nous vous recommandons de consulter le blog d'Alex Williamson.