Featured

Mount fstab Mountpoints mit Systemd Service

Unter Linux gibt es verschiedene Möglichkeiten eine SMB-Freigabe automatisch beim Systemstart einzubinden. Nachfolgend beschrieben ist die Möglichkeit einen systemd Service zu erstellen.

Voraussetzung ist ein Eintrag eines SMB-Mounts in der Datei fstab. Diese könnte wie folgt aussehen:

# /etc/fstab: static file system information.
#
...
#SMB Mounts
//{IP-ADRESSE-SMB-SERVER}/BackupVM /mnt/truenas/BackupVM cifs noperm,_netdev,users,credentials=/home/{USER}/.smbuser,uid=1000,gid=1000,file_mode=0777,dir_mode=0777,iocharset=utf8 0 0

WICHTIG: Die verwendeten Parameter sind natürlich an die individuellen Gegebenheiten anzupassen bzw. sind nicht alle erforderlich!

 

Die Service-Datei für systemd ist schnell erstellt:

> sudo nano /etc/systemd/system/mountsmb.service

[Unit]
Description=Mount specific SMB mountpoints from fstab
After=network-online.target
Wants=network-online.target

[Service]
ExecStart=/usr/bin/mount /mnt/truenas/BackupVM
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

 

> sudo systemctl daemon-reload
> sudo systemctl enable mountsmb.service

Bei einem Neustart prüft der Service auf einen verfügbaren Netzwerkdienst und bindet die benannte SMB-Freigabe ein. Möchte man mehrere in der Datei fstab hinterlegte Freigaben mounten, dann kann dies durch mehrere Zeilen von Execstart in der Service-Datei erzielt werden. Für das Mounten aller Mountpoint wird der Befehl /usr/bin/mount -a verwendet. Dann werden alle Mountpoints angesprochen, die nicht das Argument noauto in der Datei fstab verwenden.