Bind-mount in LXC container – seltsamer Effekt

flypenguin

New Member
Oct 17, 2025
2
0
1
Hallo liebes Forum,

ich habe mir als Ablöse für Kodi einen Jellyfin LXC container mit dem Community-Script erstellt. Das klappt super. Jetzt wollt ich meine Media-USB-Platte in diesen Container einhängen. Hier gehen die Probleme los:

Das Einhängen an sich funktioniert: mp0: /srv/teh_media_2,mp=/srv/teh_media_2 klappt hervorragend in der /etc/pve/lxc/123.conf.

Wie in den docs beschrieben sind allerdings alle mounts auf nobody:nobody gesetzt, was jetzt wenig förderlich ist, um die Daten zu lesen. Im container etwas rumgesucht, und Jellyfin läuft offenbar mit 107:110. Den Mount auf dem PVE host habe ich dann auf user ID 107 gesetzt, und dann wollte ich diese IDs mappen. Und hier geht es ... schief.

Das Mapping an sich funktioniert offenbar:

Code:
lxc.idmap: u 0 100000 107            #   0..106    -->  100000..100106
lxc.idmap: u 107 107 1               # 107..107    -->     107..107
lxc.idmap: u 108 100108 65427        # 108..65535  -->  100108..165535
lxc.idmap: g 0 100000 110            # analog.
lxc.idmap: g 110 110 1
lxc.idmap: g 111 100111 65425

(also falls ich das richtig verstanden habe ...).

DAS klappt jedenfalls auch, ein ls -ln /srv liefert brav die richtigen Werte.

ABER.

Jellyfin startet nicht mehr. Warum? Offenbar geraten jetzt im Container irgendwie die user/group IDs ... "durcheinander":

Code:
$ ls -lad /etc/jellyfin
drwxr-x--- 2 nobody adm 4096 Oct 17 21:43 jellyfin/

$ ls -ladn /etc/jellyfin
drwxr-x--- 2 65534 4 4096 Oct 17 21:43 jellyfin/

... whut?!?

und sobald ich die mapping-Einstellungen aus /etc/pve/lxc/... wieder rausnehme, sieht das so aus:

Code:
$ ll /etc/jellyfin -lad
drwxr-x--- 2 jellyfin adm 4096 Oct 17 21:43 /etc/jellyfin/

wt...flonk??

also ich verstehe das einfach irgendwie so gar nicht :) – kann mir hier jemand weiterhelfen?


Grüße & danke im Voraus!
Axel.
 
all right, ich habe eine "Lösung" gefunden – also etwas, das funktioniert, aber das ursprüngliche Problem nicht wirklich adressiert. Das geht hier weil die eingehängte Platte aktuell nur von Jellyfin genutzt wird, und sonst nichts, skaliert also denkbar schlecht.

  • Einhängen der media-Disk auf dem PVE host über /etc/fstab, allerdings mit einer Änderung:
    Code:
    # /etc/fstabUUID=...  /srv/...  ntfs  uid=100107,gid=100110,[...]  0 1
    #                                     ^^^^^^^^^^^^^^^^^^^^^

  • (Ich weiß gar nicht ob das notwendig ist ... ➡️) Einrichten der UID/GID mappings via:
    Code:
    lxc.idmap = u  0 100000 65535
    lxc.idmap = g  0 100000 65535

  • Jetzt wird also UID 0 -> 100000, UID 1 -> 100001, .... etc.
  • So wird (container-)UID 107 (Jellyfin user) auf (host-)UID 100107 gemapped, und das ist exakt das, was ich auf dem host als UID für die files auf dem Volume vorgebe.
  • Wenn ich das Volume jetzt "bind-mounte", dann passiert das reverse-mapping, und (host-)UID 100107 erscheint im Container (endlich) als UID 107.
  • Allerdings: Diesmal ohne diesen seltsamen Seiteneffekt, der vermutlich an meinem mangelnden Verständnis liegt, was da eigentlich passiert.
Nicht schön, aber erst mal "ok".

Ich wäre allerdings immer noch sehr dankbar für ein paar Erklärungen, wie ich das "schöner"machen könnte – bzw. was da überhaupt passiert ist bei meinem ersten Versuch.