→ [root tip] [How To] Use systemd to mount ANY device
→ [root tip] [How To] systemd mount unit samples
It appears you have a need to store your virtual machine images on a removable disk, am I correct in the assumption?
If yes, then - to avoid the error message about the volatile path /run/.... - I recommend creating two systemd mount units to handle mounting the device on a static mount file system folder.
The units will serve the function of defining the folder to use for mounting and mount only when accessing the folder.
Es scheint, dass Sie die Bilder Ihrer virtuellen Maschine auf einer Wechseldiskette speichern müssen. Liege ich mit meiner Annahme richtig?
Wenn ja, dann - um die Fehlermeldung über den flüchtigen Pfad /run/... zu vermeiden - Ich empfehle die Erstellung von zwei systemd-Mount-Einheiten, um die Montage des Geräts in einem Systemordner mit statischer Mount-Datei zu übernehmen.
Die Einheiten dienen dazu, den für die Montage zu verwendenden Ordner zu definieren und nur beim Zugriff auf den Ordner zu mounten.
Das habe ich übersehen – als Däne sollte ich besser Deutsch können, bin es aber nicht – Sie verwenden keine externe Festplatte, sondern eine interne.
Das macht es einfacher - erstellen Sie einen Eintrag in fstab, der auf einen festen Ordner verweist.
Wenn der Ordner `/var/lib/libvirt/images` leer ist
Berechtigungen für den Ordner festlegen
sudo chown root:$USER /var/lib/libvirt/images
sudo chmod g+w /var/lib/libvirt/images
Legen Sie eine Beschriftung auf der Partition fest – Beispiel /dev/sda1
sudo e2label /dev/sda1 qemu_libvirt
Fügen Sie die Zeile hinzu zu /etc/fstab
LABEL=qemu_libvirt /var/lib/libvirt/images ext4 defaults,rw 0 1
Dann lauf
sudo mount -a
Wenn der Ordner `/var/lib/libvirt/images` nicht leer ist
sudo mkdir /a/qemu_libvirt
Berechtigungen für den Ordner festlegen
sudo chown root:$USER /a/qemu_libvirt
sudo chmod g+w /a/qemu_libvirt
Legen Sie eine Beschriftung auf der Partition fest – Beispiel /dev/sda1
sudo e2label /dev/sda1 qemu_libvirt
Fügen Sie die Zeile hinzu zu /etc/fstab
LABEL=qemu_libvirt /a/qemu_libvirt ext4 defaults,rw 0 1
Dann lauf
sudo mount -a
Anleitung für abnehmbares Gerät
Erstellen Sie zunächst den Ordner
sudo mkdir -p /a/qemu_libvirt
Then set permissions on the folder
Legen Sie dann Berechtigungen für den Ordner fest
sudo chown root:$USER /a/qemu_libvirt
sudo chmod g+w /a/qemu_libvirt
Attach your removable disk to the system, locate the device and set a file system label. Using a unique label will help when writing the mount unit targeting the partition, as it is easier when you have a name instead of the UUID.
In the example the device is /dev/sdc1 and the disk is already labelled.
Schließen Sie Ihre Wechseldatenträger an das System an, lokalisieren Sie das Gerät und legen Sie eine Dateisystembezeichnung fest. Die Verwendung einer eindeutigen Beschriftung ist beim Schreiben der Mount-Einheit hilfreich, die auf die Partition abzielt, da es einfacher ist, wenn Sie einen Namen anstelle der UUID haben.
Im Beispiel ist das Gerät /dev/sdc1 und die Festplatte ist bereits beschriftet.
$ lsblk -f
...
sdc
└─sdc1 ext4 1.0 seagate-usb b925148a-0729-447a-ad95-4d9e27dcb442
...
To set a name for a partition formatted with ext (continuing the <example)
So legen Sie einen Namen für eine mit ext formatierte Partition fest (Fortsetzung des Beispiels)
sudo e2label /dev/sdc1 qemu_libvirt
Listing the device again
Das Gerät erneut auflisten
$ lsblk -f
...
sdc
└─sdc1 ext4 1.0 qemu_libvirt b925148a-0729-447a-ad95-4d9e27dcb442
...
Then proceed to create the units controlling (continue with the example, using the qemu-libvirt label) the device
Erstellen Sie dann die Einheiten, die das Gerät steuern (fahren Sie mit dem Beispiel fort und verwenden Sie das Label „qemu-libvirt“)
-
Mount-Einheit
Create a new file at/etc/systemd/systemwith the namea-qemu_libvirt.mountand paste the following content and save the file.
Erstellen Sie unter/etc/systemd/systemeine neue Datei mit dem Namena-qemu_libvirt.mount, fügen Sie den folgenden Inhalt ein und speichern Sie die Datei.[Unit] Description=Virtual Machine Images [Mount] What=/dev/disk/by-partlabel/qemu_libvirt Where=/a/qemu_libvirt Type=ext4 Options=defaults,rw,noatime [Install] WantedBy=multi-user.target -
Automount-Einheit
Create a new file at/etc/systemd/systemwith the namea-qemy_libvirt.automountand past the following content and save the file
Erstellen Sie eine neue Datei unter/etc/systemd/systemmit dem Namena-qemy_libvirt.automountund fügen Sie den folgenden Inhalt ein und speichern Sie die Datei[Unit] Description=Virtual Machine Images ConditionPathExists=/a/qemu_libvirt [Automount] Where=/a/qemu_libvirt TimeoutIdleSec=3600 [Install] WantedBy=multi-user.target -
Aktivieren Sie nur die Automount-Einheit
sudo systemctl enable --now a-qemu_libvirt.automount
Attach your disk and use the file manager to navigate to the folder, if you did it right, you should see the content of your removable disk.
With this in place, keep the disk attached and open the Virtual Machine Manager application, and navigate to the QEMU/KVM Storage tab as described above
Hängen Sie Ihre Festplatte an und navigieren Sie mit dem Dateimanager zum Ordner. Wenn Sie es richtig gemacht haben, sollten Sie den Inhalt Ihrer Wechselfestplatte sehen.
Halten Sie die Festplatte angeschlossen, öffnen Sie die Anwendung Virtual Machine Manager und navigieren Sie wie oben beschrieben zur Registerkarte QEMU/KVM Storage
Continuing the example
Fortsetzung des Beispiels
Erstellen Sie einen neuen Speicherpool
- Name the pool **removable pool** or **qemu libvirt pool** something memorable - Set the type to be **dir: Filesystem Directory** - Set the target path to your mount folder **`/a/qemu_libvirt`**Then click the Finish button
- Nennen Sie den Pool entfernbarer Pool oder qemu libvirt Pool etwas Einprägsames
- Legen Sie den Typ auf dir: Dateisystemverzeichnis fest
- Legen Sie den Zielpfad zu Ihrem Mount-Ordner fest
/a/qemu_libvirt
Klicken Sie dann auf die Schaltfläche Fertigstellen
Create a new virtual machine by import and point the process to use the newly created pool and select the relevant qcow2 image from that pool.
Erstellen Sie eine neue virtuelle Maschine, indem Sie importieren und den Prozess so ausrichten, dass er den neu erstellten Pool verwendet und das entsprechende „qcow2“-Bild aus diesem Pool auswählt.

