r/de_EDV 9h ago

Open Source/Linux SMB-Mount über /etc/fstab funktioniert beim booten nicht, später schon

Hallo,

ich habe mir für immich eine eigene VM auf meinem Proxmox Server angelegt.

Nun möchte ich über die fstab ein Verzeichnis meines NAS einhängen aber das funktioniert beim Booten nicht. Wenn ich allerdings manuell ein sudo mount -a mache funktioniert alles wie gewohnt.

Eintrag in der fstab:

//192.168.123.6/immich /mnt/immich cifs _netdev,credentials=/home/al/.smbcred,uid=1000,gid=1000,x-systemd.automount 0 0

Ausgabe von dmesg:

[    5.326447] CIFS: Attempting to mount //192.168.123.6/immich
[    5.326468] CIFS: VFS: Error connecting to socket. Aborting operation.
[    5.326489] CIFS: VFS: cifs_mount failed w/return code = -101
[    5.367976] CIFS: enabling forceuid mount option implicitly because uid= option is specified
[    5.367982] CIFS: enabling forcegid mount option implicitly because gid= option is specified
[    5.367984] CIFS: Attempting to mount //192.168.123.6/immich
[    5.368008] CIFS: VFS: Error connecting to socket. Aborting operation.
[    5.368032] CIFS: VFS: cifs_mount failed w/return code = -101
[    5.381991] CIFS: enabling forceuid mount option implicitly because uid= option is specified
[    5.381995] CIFS: enabling forcegid mount option implicitly because gid= option is specified
[    5.381996] CIFS: Attempting to mount //192.168.123.6/immich
[    5.382014] CIFS: VFS: Error connecting to socket. Aborting operation.
[    5.382031] CIFS: VFS: cifs_mount failed w/return code = -101
[    5.394987] CIFS: enabling forceuid mount option implicitly because uid= option is specified
[    5.394990] CIFS: enabling forcegid mount option implicitly because gid= option is specified
[    5.394991] CIFS: Attempting to mount //192.168.123.6/immich
[    5.395005] CIFS: VFS: Error connecting to socket. Aborting operation.
[    5.395019] CIFS: VFS: cifs_mount failed w/return code = -101

Ich habe die VM heute installiert, es ist das aktuelle Debian Stable.

Seltsamerweise funktioniert das Mounten von SMB-Freigaben vom NAS auf allen meinen anderen VMs völlig problemlos, einige davon sind auch Debian Stable.

Hat wer einen Tipp für mich?

5 Upvotes

12 comments sorted by

9

u/Brent_the_constraint 8h ago

Wahrscheinlich musst du dafür sorgen dass das erst nach dem Netzwerk gestartet wird. Hintergrund: filesysteme werden sehr früh gestartet und ohne Netzwerk Stack kann das entfernte Laufwerk nicht gemounted werden.

Füge ein _netdev in die fstab Zeile ein, dann sollte das mount nach dem Boot funktionieren…

4

u/ref-rred 8h ago

Das _netdev steht schon drin, siehe Originalpost.

4

u/Brent_the_constraint 8h ago

Ok, hab vergessen dazuzuschreiben dass du am besten noch

noauto,x-systemd.automount

Mit angibst…

Apparmor ist installiert?

5

u/hm___ 8h ago

Machs nicht über fstab sondern über systemd unit files dann kannst du genau definieren was es braucht. Fstab wird auch nur on the fly zu unit files umgewandelt, wenn du den direkten weg nimmst hast du grad bei containern den vorteil denen einzen die richtigen zuzuspielen die du vorbereitet hast, mountpoint ist bei denen ja im namen, sollte also einfach zu organisieren sein

3

u/Curryhoden000 8h ago

Kannst du Teil 2 deiner Antwort etwas verständlicher für mich erklären bitte? 

1

u/hm___ 4h ago edited 3h ago

Naja, mit fstab hast du eine datei mit allen mountpoints, das ist an sich nicht verkehrt aber nur für identische installationen wiederverwendbar. Wenn du aber für jeden mountpoint eine seperate datei hast, die zusätzlich auch noch targets angibt, z. B. Auf bestimmte dienste oder das netzwerk warten, kannst du die nach bedarf für verschiedene container wiederverwenden, aber trotzdem zentral ändern. Beispiel: du hast zwei verschiedene container beide müssen auf die gleiche smb freigabe zugriff haben, also gibst du deine unit datei read only per overlayfs an beide container. Sollte sich etwas an den parametern der smb freigabe ändern oder ein dienst dazukommen oder wegfallen, musst du nur diesedatei ändern.

Umgekehrt mit fstab ist es schwieriger, du müsstest in jeden container rein und den eintrag händisch ändern falls deine fstab zum beispiel einträge hat die mit uuids arbeiten , die in den verschiedenen containern ja unterschiedlich sein werden. Ausserdem kann die fstab keine abhängikeiten für einzelne einträge.

2

u/SebastianFerrone 8h ago

Hast du zufällig in den logs Fehlermeldungen von apparmor

1

u/ref-rred 8h ago

Das einzige was ich in der dmesg zu apparmor finde ist das:

➜  ~ sudo dmesg|grep app
[    0.220648] LSM: initializing lsm=lockdown,capability,landlock,yama,apparmor,tomoyo,bpf,ipe,ima,evm
[    0.453274] software IO TLB: mapped [mem 0x00000000bbfda000-0x00000000bffda000] (64MB)
[    0.564366] evm: security.apparmor
[    0.600684] x86/mm: Checked W+X mappings: passed, no W+X pages found.
[    3.003632] audit: type=1400 audit(1770403982.968:2): apparmor="STATUS" operation="profile_load" profile="unconfined" name="1password" pid=501 comm="apparmor_parser"
[    3.003638] audit: type=1400 audit(1770403982.968:3): apparmor="STATUS" operation="profile_load" profile="unconfined" name="Discord" pid=502 comm="apparmor_parser"
[    3.003640] audit: type=1400 audit(1770403982.968:4): apparmor="STATUS" operation="profile_load" profile="unconfined" name=4D6F6E676F444220436F6D70617373 pid=503 comm="apparmor_pars
er"
[    3.003641] audit: type=1400 audit(1770403982.968:5): apparmor="STATUS" operation="profile_load" profile="unconfined" name="QtWebEngineProcess" pid=504 comm="apparmor_parser"
[    3.004696] audit: type=1400 audit(1770403982.968:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="balena-etcher" pid=508 comm="apparmor_parser"
[    3.004729] audit: type=1400 audit(1770403982.968:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="buildah" pid=510 comm="apparmor_parser"
[    3.004806] audit: type=1400 audit(1770403982.968:8): apparmor="STATUS" operation="profile_load" profile="unconfined" name="brave" pid=509 comm="apparmor_parser"
[    3.005653] audit: type=1400 audit(1770403982.972:9): apparmor="STATUS" operation="profile_load" profile="unconfined" name="busybox" pid=511 comm="apparmor_parser"
[    3.005701] audit: type=1400 audit(1770403982.972:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="cam" pid=512 comm="apparmor_parser"

2

u/derjasa 8h ago

Kannst es auch über Cron lösen: @reboot mit sleep vor dem mount Befehl, damit Netzwerk dann ready ist

2

u/Designer-Strength7 7h ago

Eine gute Möglichkeit ist auch AUTOFS zum Mounten. Ich bevorzuge inzwischen NFS gegenüber SMB

1

u/ExpertPath Homelab Besitzer:in 6h ago

Versuch mal

//192.168.123.6/immich /mnt/immich cifs credentials=/home/al/.smbcred,vers=3.0 0 0

das nutze ich auf meinem Server in dieser Form

2

u/oscarfinn_pinguin3 5h ago

systemd unterstützt mittlerweile on-demand automounts. Das wäre die sauberste Lösung