[Eisfair_dev] nfsserver v1.4.1 stable für eisfair-1

Juergen Edner juergen at eisfair.org
Di Mär 10 14:56:42 CET 2015


Hallo Stefan,

> Bei Nutzung von NFS4: Gibt es exakt eine Stammfreigabe, nicht 0 und
> nicht 2+?

korrekt.

> Falls ja: wieso werden diese Parameter nicht an die Variable "NFSSERVER_SUPPORT_NFS4" gekoppelt?

es war auch für mich ein Lernprozess wie NFSv4 funktioniert. Da ich
anfangs nicht wusste, ob mehrere Stammfreigaben möglich sind und ich
weiterhin nach einem Weg suchte möglichst wenige neue Parameter
einzuführen und vorhandenen Parameter weiter zu nutzen, hat sich dies
so ergeben.

> Falls nein, wird mir nicht klar, welche Verzeichnisfreigaben welchen
> Stammfreigaben zugeordnet sind!? Sollte diese Stammfreigabe(n) immer
> an erster Stelle "NFSSERVER_SHARE_1_X" stehen oder in der Mitte oder
> am Ende oder egal wo?

Aus der Dokumentation:
  Im ersten Schritt definiert man dazu die NFSv4-Stammfreigabe indem
  man .._PATH='nfs4' und z.B. .._NAME='SHARE-NAME' setzt. Der definierte
  Name 'SHARE-NAME' dient dabei einzig dem Anlegen der Verzeichnis-
  struktur und wird spaeter nicht fuer den NFS-Zugriff verwendet.

> ... hm, komisch, auf einem anderen eisfair1-System konnte ich die
> Problematik nicht nachstellen, melde mich ggf. nochmal deswegen.

Ich habe mich vor mehr als 1,5 Jahren letztmalig intensiver mit dem
nfsserver-Paket auseinander gesetzt. Ich müsste jetzt erst wieder im
Skriptkode nachsehen, warum bestimmte Sonderfälle funktionieren oder
auch nicht.
Der wichtigste Unterschied ist meiner Erinnerung nach, dass
Verzeichnisse nicht mehr direkt freigegeben werden, sondern quasi
in das zentrale NFSv4-Stammverzeichnis eingehängt werden und von
dort aus freigegeben werden.

> Kann es sein, daß man eine nfs4-Verzeichnisfreigabe (z.B. /data/ordner1)
> nicht gleichzeitig als nfs3-Verzeichnisfreigabe bereit stellen kann,
> wenn folgende Konfig-Konstellation ist?

Dies kann ich spontan nicht mehr beantworten, zumal ich auch keine
Testumgebung mehr besitze um dies im Detail ausprobieren zu können.

> Falls dem so ist und dies gewollt, gibt es eine Regel, wie die
> Anordnung (nfs3/nfs4-Freigaben) sein darf und ist dies dokumentiert?

Daran kann ich mich nicht mehr erinnern. Was ich seinerzeit wusste
habe ich nach bestem Wissen dokumentiert. Am besten ist es sich
für eine Art der Freigabe zu entscheiden, entweder NFSv3 oder NFSv4.
Beide Protokolle zusammen zu nutzen ist höchsten übergangsweise zu
empfehlen.

> Kann es sein, daß die nfs4-Verzeichnisfreigabe
> NFSSERVER_SHARE_1_PATH                                          =  nfs4
> NFSSERVER_SHARE_1_NAME                                          =  abcdef
> NFSSERVER_SHARE_2_PATH                                          =  /data
> NFSSERVER_SHARE_2_NAME                                          =  data-ro
> beim Stoppen des nfsserver den Datenträger, der nach /data gemountet ist, aushängt.
> Es scheint, als würde beim Aushängen "umount /data" statt "umount /run/nfs4exports/abcdef/data-ro/" ausgeführt.

Bei einem umount werden in /etc/init.d/nfsserver ab Zeile 137 zur Zeit
alle Mounts identifiziert und berücksichtigt welche nach ../nfs4exports
gemountet wurden und wie folgt entfernt.
Meine damaligen Tests haben seinerzeit keine Probleme aufgezeigt,
aber  wenn es hier möglich ist etwas zu verbessern kann ich dies
gerne implementieren. Ändere doch einmal '-f1' in '-f3' und schaue
ob dann alles bei Dir wie gewünscht funktioniert:

  # /tmp/path/to/share-1 on /var/run/nfsexports/SHARE-NAME/share-1
  # type none (rw,bind)
  mount | grep " ${default_nfs4_exportpath}/" | sort -r |
  while read line
  do
      # umount NFSv4 mount bind
      nfs4_share="`echo ${line} | cut -d' ' -f1`"    # <<<<

      if [ "${nfs4_share}" != "" ]
      then
          umount ${nfs4_share}
      fi
  done

Gruß Jürgen
-- 
Mail: juergen at eisfair.org


Mehr Informationen über die Mailingliste Eisfair_dev