Welches NFS oder Samba verwenden?

75

Ich richte eine Box als Dateiserver im Haus ein. Es wird hauptsächlich verwendet, um Musik, Bilder, Filme mit anderen Linux-Boxen im Netzwerk und einem OS X-Computer zu teilen. Von dem, was ich gelesen habe, würde NFS und Samba in meiner Situation funktionieren, und als solches bin ich mir nicht sicher, welche ich wählen soll. Was mir wichtig ist, ist die Geschwindigkeitsübertragung zwischen Boxen und die Schwierigkeit beim Einrichten.

Welches würden Sie empfehlen und warum?

Jacob Schoen
quelle

Antworten:

71

In einem geschlossenen Netzwerk (in dem Sie jedes Gerät kennen) ist NFS eine gute Wahl. Bei einem guten Netzwerk ist der Durchsatz auf dem Server ekelhaft schnell und gleichzeitig weniger CPU-intensiv. Es ist sehr einfach einzurichten und Sie können readonlyauf Freigaben umschalten, die nicht beschreibbar sein müssen.

Ich bin nicht einverstanden mit Anders. v4 kann genauso einfach sein wie v3. Es wird nur dann kompliziert, wenn Sie die Sicherheit über LDAP / gssd festlegen möchten. Es ist in der Lage, sehr komplexe und vollständige Sicherheitsmechanismen zu implementieren. Aber Sie brauchen sie nicht. Sie sind standardmäßig deaktiviert.

sudo apt-get install nfs-kernel-server

Bearbeiten /etc/exportsSie dann, um Ihre Freigaben zu konfigurieren. Hier ist eine Zeile aus meiner Live-Version, die meine Musik teilt:

/media/ned/music        192.168.0.0/255.255.255.0(ro,sync,no_subtree_check)

Dies teilt diesen Weg mit niemandem auf 192.168.0. * In eine readonly(die Bekanntmachung roWeg).

Wenn Sie mit der Bearbeitung fertig sind, starten Sie NFS neu:

sudo /etc/init.d/nfs-kernel-server restart

Um einen Client zu verbinden, benötigen Sie die NFS-Gubbins (nicht standardmäßig installiert):

sudo apt-get install nfs-common

Und fügen Sie dann eine Zeile hinzu /etc/fstab

192.168.0.4:/media/ned/music  /media/music  nfs ro,hard,intr 0 0

Dies ist eigentlich der NVSv3-Client, da ich faul bin, aber in diesem Szenario kompatibel. 192.168.0.4ist der NFS-Server (in diesem Fall mein Desktop). Und Sie müssen sicherstellen, dass der Mount-Pfad ( /media/musichier) vorhanden ist.


Gehen Sie für einen Mac wie folgt vor: http://www.techrepublic.com/blog/apple-in-the-enterprise/mounting-nfs-volumes-in-os-x/

Es ist viel einfacher, als einige ältere Tutorials Sie glauben machen würden.


Es mag komplizierter aussehen als es wirklich ist, aber es ist solide, vorhersehbar und schnell. Etwas, das du nicht gegen Samba ausrichten kannst ... Zumindest nach meiner Erfahrung.

Oli
quelle
Vielen Dank für alle Details. Ich glaube, ich bin jetzt bereit, dieses Wochenende eine Chance zu geben.
Jacob Schoen
Wie können Sie erreichen, dass dies beim Neustart des Servers (für den Client) dauerhaft bleibt? Ich habe ein ähnliches Setup funktioniert gut ( /etc/fstabSet zu montieren, in meinem Fall, ein NAS - Ordner), aber wenn der Server neu gestartet ich immer wieder durchmachen umountund mount -aVerrenkungen im Terminal meine Halterung zurück. Meistens in Ordnung für mich (mit Ausnahme von Ärgernissen wie Picasa, das die lokale Datenbank löscht, wenn der Netzwerkfotoordner plötzlich nicht mehr vorhanden ist :(), aber das treibt meine Frau an die Wand ...
Russ
@Russ Es hört sich so an, als ob es lange dauert, bis Ihre Netzwerkverbindung hergestellt ist. Erwägen Sie das Hinzufügen auto,_netdevzum Optionsfragment, damit es ungefähr so ​​aussieht: auto,_netdev,ro,hard,intrDies sollte das Dateisystem zwingen, auf eine Netzwerkverbindung zu warten.
Oli
1
Danke für eure Erklärungen! Noch ein paar Fragen: Warum nicht FTP benutzen? Ich habe gehört, dass die UIDs eindeutig sein müssen ... Das klingt für mich wirklich kompliziert. Wie geht NFS mit Dateiberechtigungen um?
Lumbric
@ lumbric Super späte Antwort, sorry. FTP ist transaktional und daher sehr klobig und langsam. Es hat einen ziemlich guten Durchsatz, aber alles, was für die tatsächliche Verwendung in einem Dateisystem wichtig ist (statting, Listing usw.), ist mühsam. Berechtigungen können angepasst und Benutzer mit den verschiedenen LDAP / gssd-Konfigurationen verknüpft werden. Diese liegen jedoch außerhalb meiner Anforderungen (und derzeit meines Wissens).
Oli
10

Ich habe kürzlich die Verbindung über SMB und NFS zu meiner Synology NAS-Station getestet. Bei mir funktioniert die NFS-Verbindung zweimal schneller als die SMB-Verbindung. Besonders wenn Sie mit 100 GByte Fotos und Musikdateien in 1000 Verzeichnissen arbeiten müssen, werden Sie die Geschwindigkeit von NFS lieben.

Ralf Hersel
quelle
6

NFS (Version 3) bietet eine höhere Leistung und ist recht einfach einzurichten. Das Hauptproblem ist der völlige Mangel an angemessener Sicherheit.

NFS (Version 4) bietet Sicherheit, ist jedoch fast unmöglich einzurichten.

Samba wird wahrscheinlich etwas langsamer sein, ist aber einfach zu bedienen und funktioniert auch mit Windows-Clients.

Anders Westrup
quelle
9
aber es ist fast unmöglich einzurichten : Kannst du das mit ein paar Beweisen belegen oder beruht das nur auf deinem subjektiven Gefühl?
Lanoxx
2
Ich hatte noch nie ein Problem mit v4. Wo liegt also das Problem?
KingCrunch
Ich fand NFSv4 nicht schwieriger als NFSv3. Natürlich ohne Kerberos.
MountainX
4

Ich habe kürzlich einen lokalen NFS-Server auf einem Ubuntu 10.04-Server eingerichtet, aber mein MacBook Pro (OS X 10.6.X) konnte keine Verbindung herstellen. Damit der Mac eine Verbindung herstellen konnte, musste ich unsicheres hinzufügen /etc/exports.

Meine / etc / exports:

/mnt/sdcard *(rw,sync,no_subtree_check,insecure,all_squash)
Niels van Reijmersdal
quelle
4

Führen Sie reale Tests durch, bevor Sie die nächsten X Jahre und Y Jahre einem bestimmten Protokoll widmen, ohne zu bemerken, dass es eine bessere Option gibt.

Sie werden überall Meinungen finden, von denen eine schneller ist, wenn die Samba behaupten, sie seien mit NFS auf Augenhöhe. Abhängig von Ihren Anforderungen ist es am besten, eine Samba-Freigabe und eine NFS-Freigabe einzurichten und verschiedene reale Lese- / Schreib- / CPU-Tests über das Netzwerk auszuführen. Wenn Sie ähnliche Anforderungen haben wie ich (Windows-Computer), werden Sie überrascht sein, dass Samba 20% schneller als NFS ist.

Entscheiden Sie sich für diejenige, die die besten Ergebnisse in Ihrem Setup erzielt, und ignorieren Sie, was die Leute für die schnellste halten.

Joe
quelle
+1 für den Punkt "X Jahre und Y TB" allein! :-)
kkm