Mounten von Netzwerkfreigaben (SMB) unter Linux/Mac

:!: ACHTUNG: Die beiden Beispiele mounten das Laufwerk so, dass es über den Webserver abrufbar ist. :!:

:!: Wenn der Webserver außerhalb Ihres Netzwerkes verfügbar ist, sollten Sie das Verzeichnis nicht unter /var/www bzw /Library/WebServer mounten, oder zumindest den Zugriff per .htaccess sperren. :!:

Ubuntu Linux

  • Das Verzeichnis /var/www/freigabe anlegen
  • chown www-data /var/www/freigabe oder chmod 777 /var/www/freigabe
    • Zugriff für alle Benutzer die Zugriff benötigen gewährleisten.
  • chattr +i /var/www/freigabe
    • Verhindert das Beschreiben, wenn der mount nicht aktiv ist.
  • Datei /etc/fstab editieren
    • //SERVERIP/FREIGABE /var/www/freigabe smbfs username=BENUTZERNAME,password=PASSWORT,uid=www-data,rw 0 0
    • Anpassen:
      • SERVERIP
      • FREIGABE
      • BENUTZERNAME
      • PASSWORT
      • Wenn Sie nicht Ubuntu nutzen:
        • www-data ist der Benutzer unter dem der Apache (httpd) läuft
        • Manche Systeme nutzen nicht smbfs sondern cifs
  • :!r: Wenn das System beim Booten Probleme mit dem Mounten hat:
    • Mount auf noauto setzen: …,rw,noauto
    • In der Datei /etc/rc.local die Freigabe nach eine Pause mounten:
      • sleep 10
        mount /var/www/freigabe

Mac OS X ab 10.9

Bis macOS 10.14 könnten Sie die mount_shares.sh auch unter / legen, ab 10.15 kann diese nicht unter / liegen. Nutzen Sie dann ein Verzeichnis unter /Library, auf jeden Fall NICHT unter Benutzer.

  • Verzeichnis /Library/WebServer/mounts anlegen
  • chown _www /Library/WebServer/mounts oder chmod 777 /Library/WebServer/mounts
    • Zugriff für alle Benutzer die Zugriff benötigen gewährleisten.
  • chflags uchg /Library/WebServer/mounts
    • Verhindert das Beschreiben, wenn der mount nicht aktiv ist.
  • Die Datei /Library/WebServer/mount_shares.sh anlegen:
    • #!/bin/bash
      sudo -S -u _www mkdir /Library/WebServer/mounts/freigabe
      sudo -S -u _www chmod +rwx /Library/WebServer/mounts/freigabe
      sudo -S -u _www mount -t smbfs //BENUTZERNAME:PASSWORT@SERVERIP/FREIGABE /Library/WebServer/mounts/freigabe
    • Anpassen:
      • SERVERIP
      • FREIGABE
      • BENUTZERNAME
      • PASSWORT
  • Ausführungsrechte auf die Datei geben chmod a+x /Library/WebServer/mount_shares.sh
  • Launch Daemon Datei: ustrich.mount.plist.zip entpacken
  • Die ustrich.mount.plist nach /Library/LaunchDaemons/ustrich.mount.plist kopieren und darauf achten, dass die Datei dem chown root:wheel /Library/LaunchDaemons/ustrich.mount.plist gehört
  • Ob das alles erfolgreich war, können Sie durch sudo launchctl load /Library/LaunchDaemons/ustrich.mount.plist testen
    • Nun muss das Verzeichnis /Library/WebServer/mounts/freigabe die FREIGABE beinhalten
    • Auf manchen Systemen funktioniert das Mounten nicht direkt beim Hochfahren des Systems, aber nach den 90 Sekunden (.plist Datei) erfolgt dann das Mounten auch auf diesen Systemen.

:!: ACHTUNG: Diese Anleitung ist am Server nicht nutzbar. :!:

Mac OS X

  1. Verbinden Sie das Laufwerk
  2. Starten Sie die Systemeinstellungen am Mac und wählen Sie „Anmeldeobjekte“
  3. Wählen Sie „+“
  4. Wählen Sie die bestehende verbundene Freigabe.
  5. Setzen Sie den Haken bei „Ausblenden“

Manuell verbinden

  1. Verbinden Sie das Netzlaufwerk
  2. Klicken Sie die Freigabe an
  3. Mit gleichzeitig gedrücktem ALT+CMD per Drag and Drop auf den Desktop ziehen
  4. Wann immer sie die Freigabe benötigen, einfach das neue Icon am Desktop doppelklicken