NFS-Ganesha ist eine völlig kostenlose, einfach zu installieren, einfach zu konfigurieren, Multiplattform und Open-Source-Kommandozeilen-Software-Projekt, ein Dämon, ein Network File System (NFS) Server auf jedem GNU / Linux oder BSD-Betriebssysteme implementes .
Läuft im User Space unterstützt pNFS und 9P
Während die Software läuft komplett im User Space, es unterstützt Version 3, 4.0 und 4.1 des Parallel NFS (pNFS), sowie die 9P Protokoll vom Betriebssystem Plan9. Alle diese Protokolle werden gleichzeitig durch NFS-Ganesha unterstützt.
Entworfen mit zwei Ziele im Auge
Die Software wurde mit zwei Zielen vor Augen, um NFS-Exporte auf mehrere Namespaces und Dateisysteme bereitzustellen und sehr große Daten-Caches und Metadaten bietet konzipiert. Es unterstützt die NFS v3, NFS 4.0, NFS 4.1 (einschließlich pNFS) Protokolle.
Die Software ist in einer Weise, dass es engagierte Backend Module aufgerufen FSAL (File System Abstraction Layer) verwenden können, entwickelt. Unter den verfügbaren Modulen FSAL, können wir FSAL / POSIX, FSAL / SNMP, FSAL / PROXY und FSAL / FUSELIKE erwähnen.
Erste Schritte mit NFS-Ganesha begonnen
Um die NFS-Ganesha-Software auf Ihrem GNU / Linux-Betriebssystem zu installieren, müssen Sie zunächst die neueste Version downloaden entweder Softoware oder Projekt & rsquo; offiziellen Website (siehe die Homepage Link am Ende des Artikels), speichern Sie das Archiv irgendwo auf Ihrem PC (vorzugsweise Ihrem Home-Verzeichnis) und verwenden Sie ein Archiv-Manager, um den Inhalt zu extrahieren.
Öffnen Sie ein Terminal-app, gehen Sie auf die Stelle, wo Sie die Archiv-Datei extrahiert haben (zB cd /home/softoware/nfs-ganesha-2.1.0-0.1.1-Source - ersetzen & lsquo; softoware & rsquo; mit Ihrem Benutzernamen) und Lauf die & lsquo; cmake & rsquo. Befehl für den Stammordner, um das Programm zu konfigurieren.
Führen Sie dann die & lsquo; machen & rsquo; Befehl, es zu kompilieren und die ausführbare Datei zu erzeugen, die durch Ausführen des & lsquo breite installiert werden kann System; make install & rsquo; Befehl als root oder die & lsquo; sudo make install & rsquo; Befehl als privilegierter Benutzer.
Was ist neu in dieser Pressemitteilung:
- Die Exporte sind jetzt dynamisch. Sie können hinzugefügt oder über DBus Befehle entfernt werden. Die manage_exports Python-Skript wurde aktualisiert, um die Funktion unterstützen.
- Die Pseudo-Dateisystem wurde als FSAL neu geschrieben. Dies ermöglicht dynamische Exporte. Unterbaudateisystemen arbeiten, stammen auch aus dieser Änderung.
- Die Konfigurationsdatei Verarbeitung wurde neu geschrieben, um die Fehlerprüfung und Protokollierung zu verbessern. Alle Parameter werden konsequent für Bereich überprüft. Die Validierung der gesamten Konfiguration Blöcke werden ebenfalls überprüft.
- GIDs können nun verwaltet werden, um externe Authentifizierungsquellen zu nutzen. Dies behebt das Protokoll Begrenzung AUTH_SYS die die Anzahl der alternativen gids bis 16 beschränkt.
- RPM Verpackung wurde neu strukturiert und aktualisiert. Die DBus Werkzeuge werden nun verpackt.
Was ist neu in Version 2.1.0:
- Die Exporte sind jetzt dynamisch. Sie können hinzugefügt oder über DBus Befehle entfernt werden. Die manage_exports Python-Skript wurde aktualisiert, um die Funktion unterstützen.
- Die Pseudo-Dateisystem wurde als FSAL neu geschrieben. Dies ermöglicht dynamische Exporte. Unterbaudateisystemen arbeiten, stammen auch aus dieser Änderung.
- Die Konfigurationsdatei Verarbeitung wurde neu geschrieben, um die Fehlerprüfung und Protokollierung zu verbessern. Alle Parameter werden konsequent für Bereich überprüft. Die Validierung der gesamten Konfiguration Blöcke werden ebenfalls überprüft.
- GIDs können nun verwaltet werden, um externe Authentifizierungsquellen zu nutzen. Dies behebt das Protokoll Begrenzung AUTH_SYS die die Anzahl der alternativen gids bis 16 beschränkt.
- RPM Verpackung wurde neu strukturiert und aktualisiert. Die DBus Werkzeuge werden nun verpackt.
Was ist neu in der Version 2.0.0:
- NFSv4.1 Unterstützung hat sich stark verbessert und unterstützt nun vollständig pNFS I / O-Operationen. Diese Eigenschaft macht die Leistung und Kapazität von gruppierten und verteilte Dateisysteme für die Kunden verfügbar.
- NLM Zustand und Sperrverwaltung ist mit NFSv4 Zustand und Sperrverwaltung vereinheitlicht.
- Plan 9 (9P) Unterstützung wird sehr verbessert. Dies ist die 9P.2000L Level-Protokoll.
- Dateisystem Backends sind jetzt ladbare Module. Dies bedeutet, dass eine beliebige Anzahl von Backends und Exporte über diesen Backends konfiguriert werden.
- Es hat umfangreiche Arbeiten an den Kern des Server. Multi-Threaded-Skalierbarkeit und Speichernutzung ist stark verbessert. Die Protokoll Richtigkeit und Export Zugangskontrollen sind viel besser.
- Die Systemverwaltung wird nun über eine DBus-Server-Schnittstelle verwaltet. Dies ersetzt die SNMP und Statistiken Einrichtungen früherer Versionen.
- NFSv2 Unterstützung fallen gelassen wurde. Version 2 des Protokolls hat sich längst überlebt seine Nützlichkeit und kann keine Unterstützung für die für moderne verteilte Dateisysteme erforderlich Griffgrößen. Unterstützung für die älteren unmount Operationen für die Abwärtskompatibilität mit einigen Kunden beibehalten.
- Die SNMP-Management MIB wurde entfernt. Es wird durch den DBus Managementschnitt ersetzt. SNMP-Unterstützung könnte von einem SNMP zu DBus-Proxy zur Verfügung gestellt werden.
- Einige der älteren FSAL Implementierungen aufgrund des fehlenden Gemeinschaftsinteresses fallen gelassen worden. Dazu gehören die Sicherung und POSIX FSALs.
Was ist neu in Version 1.0.4:
- init.d-Skripte sind nun näher an LSB Anforderungen
- Bug fix: Race Condition beim Einsetzen des gleichen neuen Eintrag mehrere Zeit und gleichzeitig in den Metadaten Cache
- Bug fix: es unmöglich, festgelegt war "/" als eines Export Eintrags pseudopath
- Bug fix:. Schlecht verpacken fsal_handle in FSAL_PROXY konnte 2 Einträge in cache_inode für eine einzelne Datei erstellen
- Bug fix: Speicherverletzung in FSAL_PROXY für Typ fattr4 basiert auf nfs4time
Was ist neu in Version 1.0.3:
- Eine Regression in FSAL_PROXY wurde behoben (Größe der NFSv4 Griffe)
- Unterstützung HashTable Hash-Funktionen, die hashval und rbtval berechnen in einem Durchgang
- verwendet Cache_inode eine "dual Wert compute-Funktion" in ihrer Hash-Tabelle
- umge clientid Mapper verwendet einen "dual Wert compute-Funktion" in ihrer Hash-Tabelle
- pNFS / LAYOUT4_NFSV4_1_FILES: mehrere Fehler behoben (siehe git log)
- DupReq Indexierung überprüft worden ist: jetzt (src_ipaddr, Port, xid, zusätzliche cksum) Tupel wird als Schlüssel verwendet
- Arbeiter der Auswahl wurde überprüft, um die CPU verbraucht bei einer sehr großen Anzahl von Arbeitnehmern verwendet zu reduzieren.
- Sicherheit festgelegt: wenn 'root' ist als nobody, wird sein 'altgroups' gelöscht
- Die Konfiguration kann nun die Version von NFS zu reduzieren advertsised zu rpcbind (NFSv2, um beispielsweise zu vermeiden).
- XML-Ausgabe wurde auf nicht-Regressionstests für eine einfachere Integration in HudsonCI hinzugefügt
- Ein paar Änderungen in NLM Umsetzung
- FSAL_HPSS hat HPSSv7.3.2 portiert
- Bessere Verwaltung der NFSv4.x Attribut FATTR4_CHANGE
Was ist neu in Version 1.0.2:
- Diese Version enthält mehrere Fehlerbehebungen für Bugs im letzten Fall Bake-A-Thon gefunden.
- Die FSAL_ZFS unterstützt jetzt den Zugriff auf ZFS-Snapshots (die ".zfs" Verzeichnis für diejenigen, die vertraut mit ZFS sind).
- Speicherverwaltung wurde eingehend überprüft.
Was ist neu in Version 0.99.63:
- Diese Version integriert die Unterstützung NLMv4 Protokoll (Sperrverwaltung für NFSv3) und einige Bugfixes. pNFS Umsetzung wird in nächsten Version (mit LAYOUT4_FILES Unterstützung) durchgeführt werden.
Was ist neu in Version 0.99.62:
- Diese Version enthält viele Bugfixes, aber kein wesentliches Merkmal Upgrade (dies wird mit der nächsten Version mit neuen pNFS Sachen drin sind). Die Art, wie die Pakete verwaltet hat sich verändert
Was ist neu in Version 0.99.61:
- Ein Patch von Eric Sester über memleaks integriert wurde.
- Bug Fix: Jetzt prüfen Wert csa_flags für OP4_CREATE_SESSION
- Bug Fix:. OP4_LOOKUPP sollte NFS4ERR_SYMLINK statt NFS4ERR_NOTDIR zurück, wenn cfh auf einen symbolischen Link bezogen
- Bug Fix: Fehler NFS4ERR_NOT_ONLY_OP verwaltet für OP4_EXCHANGE_ID
- Bug Fix: OP4_LOOKUPP sollte NFS4ERR_NOENT zurück, wenn von der rootfh genannt
- Bug Fix: Verwaltung NFS4ERR_NOT_ONLY_OP führte ein Fehler bei der Kompilierung, ohne NFSv4.1 Unterstützung. Dies ist nun behoben.
- geändert schlecht #define in Anmelden / log_functions.c (ehemalige Situation könnte zu möglichen Pufferüberlauf führen)
- Ein Patch von Erik Levinson über den Einsatz von libnfsidmap mit gssrpc integriert worden ist,
- Bug Fix: es war unmöglich, sowohl mit Unterstützung für gssrpc und Unterstützung für NFSv4.1 (Mismatch in nfsv41.h und xdr_nfsv41.c) kompilieren
Was ist neu in Version 0.99.60:
- Die UID / GID-Mapping-Funktionen hat eine schlechte Nutzung der damit verbundenen idmapper_cache Funktionen (wurde der Cache nicht in mehreren Fällen verwendet)
- Bug Fix: mit Kernel neuer als 2.6.29, gescheitert Connectathon der test6 auf NFSv4 und NFSv4.1. Dies ist nun behoben. Eod wird nur zurückgegeben, wenn der Array von benötigten Einträgen ist leer (keine Eingabe mehr in dem Verzeichnis gelesen werden)
- Sperren unterstützt geht erfolgreich durch BULL LockTest, wenn oben auf NFSv4.1 (Probleme bleibt NFSv4.0) verwendet
- Bug Fix:. NFSv4 rsize / wsize schon immer Wert auf 1024, die Leistungen getötet
- Bug Fix:. In NFSv4, tat das gleiche open_owner Öffnen einer zuvor geöffneten fileid nicht die gleiche StateID bekommen
- Bug Fix: die meisten der Zeit, geöffneten Dateien / über NFSv4 erstellt wurden nie geschlossen
Kommentare nicht gefunden