Raspberry Pi als Fileserver einrichten
Wer gene Daten mit anderen Benutzern teilen oder zentral zugängliche machen möchte für den ist ein NAS (Network Attached Storage) Fileserver eine tolle Sache. Man kann sich für viel Geld eine fertige Lösung kaufen oder mit dem Raspberry Pi eine Low-Cost Lösung selber basteln. Dafür benötigt man einen Raspberry Pi und USB-Speichermedien, als Software wird Samba verwendet.
Step 1
Zunächst sollten wir alle benötigten Speichermedien (USB-Platten, -Sticks usw.) am Raspberry Pi anstecken und einbinden. Damit NTFS und HFS+ Medien eingebunden werden können müssen Treiber hierfür installiert werden.
|
sudo apt-get -y install ntfs-3g hfsutils hfsprogs |
Wir legen nun einen neuen Ordner im Verzeichnis /media an. In diesen wird später ein USB-Gerät gemountet. Ich nenne den Ordner „usbstick“ . Es dürfen keine Sonder und/oder Leerzeichen enthalten sein.
Nachdem wir nun den Namen des USB-Geräts kennen können wir den dieses mit folgendem Kommando einbinden. Dabei muss man je nach Dateisystem ein passendes Kommando verwenden. Sda1 durch den Namen des USB-Geräts und /media/usbstick/ durch den erstellten Mountpoint ersetzten. Der Benutzer pi muss falls ein anderer Benutzer als pi auf das Gerät zugreifen soll ersetzt werden.
Im diesem Schritt benötigen wir die Samba Software für die Freigabe der Daten. Als erstes aktualisieren wir unseren RPi, um sicher zu gehen, dass alle Pakete aktuell sind.
|
sudo apt-get update && sudo apt-get upgrade |
Nun installieren wir über den Paket Manager den Samba Server.
|
sudo apt-get install samba samba-common-bin |
Wir bearbeiten nun die Konfiguration des Samba Servers indem wir mittels nano bei folgender Zeile das „#“ entfernen. Dies bewirkt dass später nur mit einer Anmeldung auf Dateien zugegriffen werden kann. Speichern über STRG + X,Y und dann Enter.
|
sudo nano /etc/samba/smb.conf # security = user |
Step 3
Samba verfügt über eine Benutzerverwaltung die an System Benutzer gebunden ist. Das bedeutet dass wenn ein Benutzer der mit Samba arbeitet auch als System Benutzer existieren muss. Daher legen wir einen System Benutzer an der nur zur Anmeldung in Samba genutzt wird.
|
sudo adduser --disabled-password --disabled-login BenutzerName |
Nun kann über
smbpasswd dieser Benutzer in Samba angelegt werden. Dabei werden wir nach einem Passwort für die Anmeldung an Samba gefragt.
|
sudo smbpasswd -a BenutzerName |
Möchte man nun einen Ordner für alle Samba Benutzer freigeben, so kann man am Ende der Konfigurationsdatei folgende Zeilen eintragen.
|
sudo nano /etc/samba/smb.conf # Name der Freigabe [Test-Freigabe] # Pfad zum Verzeichnis, das freigegeben werden soll path=/media/usbstick/mein-ordner # Definiert, ob diese Freigabe aktiv ist available=yes # Freigabe ist direkt sichtbar für den angemeldeten Benutzer (yes) browseable=yes # Gäste dürfen im freigegebenen Bereich lesen (yes) guest ok=no # Angemeldete Benutzer dürfen lesen und schreiben (yes) oder nur lesen (no) writeable=yes |