Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
HDD an privilegierten Container durchreichen
Die ID's für mknode rausfinden
(15:16 root@n5-pve-cluster marko) > ls -la /dev/sdb* brw-rw---- 1 root disk 8, 16 Jan 23 21:24 /dev/sdb brw-rw---- 1 root disk 8, 17 Jan 23 21:24 /dev/sdb1
In diesem Fall für die Platte „8 16“ und für die Partition der Platte „8 17“.
Danach kann der Container entsprechend konfiguriert werden. /etc/pve/lxc/VM-ID.conf
#add /dev/sdb lxc.cgroup.devices.allow = b 8:16 rwm #add /dev/sdb1 (with ext4 partition) lxc.cgroup.devices.allow = b 8:17 rwm
Im Anschluss den Container starten und zum testen von Hand die Blockdevices im Container anlegen.
mknod -m 666 /dev/sdb b 8 16 mknod -m 666 /dev/sdb1 b 8 17
Nun sollte man mittels
mount /dev/sdb1 /mnt/
die Festplatte im Container einbinden können und darauf Zugriff haben.
Die Feinheiten
Leider sind die Blockdevices nur temporär. Sobald man den Container neu startet sind die Blockdevices verschwunden. Ein kleines Hook Skript hilft und hier weiter
Script anlegen
/var/lib/lxc/101/mount-hook.sh
#!/bin/sh mknod -m 777 ${LXC_ROOTFS_MOUNT}/dev/sdb b 8 16 mknod -m 777 ${LXC_ROOTFS_MOUNT}/dev/sdb1 b 8 17
Das Skript im Anschluss ausführbar machen:
chmod 755 /var/lib/lxc/101/mount-hook.sh
Eintrag in die Konfigdatei des Containers
Nun muss das Skript nur noch dem Container bekannt gemacht werden. Dafür in der /etc/pve/lxc/VM-ID.conf folgende Zeilen noch eintragen.
lxc.autodev: 1 lxc.hook.autodev: /var/lib/lxc/101/mount-hook.sh
Die Festplatte sollte nun automatisch in den Container eingebunden werden.
Automatischer Mount
In der Container Konfig folgendenm Eintrag
mp1: /dev/sdb1,mp=/mnt,backup=0
Darauf achten das mp1 nicht bereits belegt ist. Ansonsten eine andere freie Zahl verwenden.