[Raspberry Pi 2] Samba einrichten, USB-HDD freigeben

Um Samba auf dem Raspberry einzurichten, muss man folgende Schritte abarbeiten:

  • USB-Platte anstecken und mit folgendem Befehl den Gerätenamen ermitteln (häufig “/dev/sda”)
    sudo fdisk -l
    
  • ist die Platte formatiert, dann Einhängepunkt unter /media ermitteln
    mount
    
  • Repositories updaten
    sudo apt-get update
    
  • evtl. NTFS-Unterstützung unter Raspian nachinstallieren
    sudo apt-get install ntfs-3g
    
  • Samba installieren
    sudo apt-get install samba-common samba samba-common-bin
    
  • Samba Passwort für user “pi” vergeben
    sudo smbpasswd -a pi
    
  • USB-Platte freigeben, dazu smb.conf editieren
    sudo nano /etc/samba/smb.conf
    
  • folgendes eintragen, ggf. Pfad (Einhängepunkt der USB-Platte) hinter “path=” anpassen, [data] gibt den Freigabenamen im Netzwerk an
    [data]
    path=/media/data
    browseabel=yes
    read only=no
    create mask=0777
    directory mask=0777
    writeable=yes
    
  • Editor mit STRG+X, j, Enter schließen
  • USB-Platte aushängen
    sudo umount /dev/sda1
    
  • Mountpoint für die USB-Platte erstellen
    sudo mkdir /media/data
    
  • Zugriffsrechte für Mountpoint ändern
    sudo chgrp -R users /media/data
    sudo chmod -R 774 /media/data
    
  • UUID für Partition der USB-Platte ermitteln und merken
    sudo blkid
    
  • Datei fstab öffnen und editieren
    sudo nano /etc/fstab
    
  • zuvor ermittelte UUID unter ergänzen, wenn die Platte mit NTFS formatiert wurde, dann noch “ext4” durch “ntfs-3g” ersetzen
    UUID=<UUID_hier_eintragen> /media/data ext4 defaults,auto,users,rw 0
    
  • Editor mit STRG+X, j, Enter schließen
  • System neu starten
    sudo reboot
    

Weiterführende Befehle

  • Samba starten
    sudo service samba start
    
  • Samba stoppen
    sudo service samba stop
    
  • Samba neu starten
    sudo service samba restart
    

Verzeichnis in einem anderen Verzeichnis einblenden (bind)

Möchte man ein zentral genutztes Verzeichnis bei allen Userverzeichnissen des Systems automatisch bei Systemstart einblenden (mounten), nutzt man die Möglichkeit des “bindens” in der fstab. Man geht dabei wie folgt vor:

  1. Datei etc/fstab editieren
  2. Zeile hinzufügen:
    /media/exthdd/docs    /home/heinz/_docs    none    bind    0 0
    
  3. Zeile mit einem Enterzeichen abschließen, sonst meckert Linux
  4. fstab speichern
  5. Linux neu starten

Es wird somit das oben dargestellte Verzeichnis “/media/exthdd/docs” automatisch beim Start in “/home/heinz/_docs” eingeblendet. Durch das Einblenden werden alle schon vorhandenen Dateien in “_docs” ausgeblendet. Vorteilhaft ist es, wenn man das Verzeichnis “_docs” NICHT zuvor anlegt, sondern nur “/home/heinz”. Das eingeblendete Verzeichnis “_docs” kann nicht gelöscht werden, weder durch einen user noch durch root.

Das Aushängen des eingeblendeten Verzeichnisses erfolgt auf Kommandozeile wie folgt:

sudo umount /home/heinz/_docs

Weitere Informationen findet man hier: Link

[Linux] Laufwerk automatisch einhängen (mounten)

Manchmal ist es notwendig ein Festplattenlaufwerk oder -partition automatisch im System einzuhängen. Im Beispiel soll eine Windowspartition /dev/sda5 mit dem Laufwerksnamen ABLAGE eingehangen werden:

  1. Datei etc/fstab editieren
  2. Zeile hinzufügen:
    /dev/sda5    /media/ABLAGE    auto    auto,rw,suid,dev,exec,async    0    0
    
  3. Zeile mit einem Enterzeichen abschließen, sonst meckert Linux
  4. fstab speichern
  5. Linux neu starten

Es wird somit die o.g. Partition automatisch beim Start angemeldet. Weitere Infos gibt es hier: Link