Eine der wesentlichsten Aufgaben eines NAS ist es, zentral Dateien zur Verfügung zu stellen. Sowohl bei einem selbst gebauten NAS wie auch auf professionellen oder fertig bestückten Systemen kommt hierbei der Samba Server zum Einsatz. Dies ist ein Open Source Fileserver, der das Server Message Block (SMB)-Protokoll von Microsoft spricht. Dieses Protokoll wird mittlerweile sowohl von Windows, wie auch von OS X und Linux-Systemen gut gesprochen. Daher bietet sich Samba als universeller Dateiserver an. Hier zeige ich die Installation von Samba auf Debian-verwandten Systemen (wie Debian, Ubuntu, Raspbian oder auch Bananian für das Mini NAS).
Installation
Alle hier gezeigten Schritte müssen als root
durchgeführt werden. Entweder ihr wechselt direkt zum Nutzer root
mit:
sudo su -
oder ihr stellt jedem der folgenden Befehle ein sudo
voran.
Wie immer, wenn neue Software installiert wird, sollten erstmal die Paketquellen aktualisiert und die neuesten Updaten eingespielt werden:
apt-get update apt-get upgrade
Dann wird Samba zusammen mit den benötigten Werkzeugen installiert:
apt-get install samba samba-common tdb-tools samba-common-bin
Konfiguration
Als nächstes muss die wichtigste Konfigurationsdatei von Samba, die smb.conf
angepasst werden. Hierfür gibt es wirklich unzählige Möglichkeiten. Ich zeige ein paar exemplarische Konfigurationsmöglichkeiten. Die smb.conf
bestimmt welches Verzeichnis im Netzwerk für wen freigegeben wird, daher ist diese Konfiguration immer sehr individuell! Ich gehe an dieser Stelle davon aus, dass die Netzwerkshares in einem Verzeichnis namens /mnt/nas liegen sollen (so habe ich nämlich die Festplatten in Einrichtung der Festplatte im Banana Pi eingerichtet).
Datei bearbeiten mit vi
:
vi /etc/samba/smb.conf
So sieht die smb.conf am Ende aus:
[global] workgroup = WORKGROUP server string = Samba Server %v log file = /var/log/samba/log.%m max log size = 1000 netbios name = NAME_EURES_SERVERS security = user map to guest = bad user dns proxy = no [homes] comment = Home Directories browseable = no valid users = %S writeable = yes create mode = 0600 directory mode = 0700 [public] path = /mnt/nas/public public = yes writable = yes browsable =yes comment = Public Directory guest ok = yes printable = no read only = no [private] comment = Privates Verzeichnis fuer einen Nutzer path = /mnt/nas/private valid users = USERNAME force group = users create mask = 0660 directory mask = 0771 writable = yes
Erläuterung
- Zeile 1 nimmt die grundsätzlichen Einstellungen des Samba-Servers vor. Hier gebt ihr zum Beispiel an, wie euer Server im Netzwerk heißen soll, etc.
- Zeile 11 gibt die Home-Verzeichnisse jedes Nutzers für ihn selbst im Netzwerk frei. Das ist praktisch, wenn eure Nutzer auf eurem Server angelegt sind und sie später von überall aus auf ihre Daten zugreifen können sollen.
- Zeile 19 zeigt ein öffentliches Verzeichnis auf das jeder Lesen und Schreiben kann.
- Zeile 29 ist ein privates Verzeichnis, das nur von einem einzigen Nutzer genutzt werden kann.
Nutzer anlegen
Samba hat eine eigene Nutzerverwaltung, die normalerweise nicht mit der des darunter liegenden Linux deckungsgleich ist. Daher müsst ihr alle Nutzer, die Samba nutzen sollen, separat anlegen. Gibt es den Nutzer auf eurem Linux-System schon, dann erledigt das:
smbpasswd -a NUTZERNAME
Gibt es den Nutzer im Linux noch nicht und soll er eigentlich auch gar nicht auf das System zugreifen können, sondern lediglich Samba nutzen, dann legt man ihn ohne Home-Verzeichnis und ohne Login-Shell an:
adduser -no-create-home -disabled-login -shell /bin/false NUTZERNAME smbpasswd -a NUTZERNAME
Samba neu starten
Nachdem alles konfiguriert wurde und die entsprechenden Nutzer angelegt sind, muss man Samba neu starten:
service samba restart