Re: NFS-Server im Kernel.. warum?

From: Bernd Walter <ticso(at)cicely12.cicely.de>
Date: Wed, 16 Jul 2003 13:30:01 +0200

On Wed, Jul 16, 2003 at 09:06:22PM +1000, Peter Ross wrote:
> Dankeschoen fuer die Antworten.
>
> On Wed, 16 Jul 2003, Bernd Walter wrote:
>
> > Eine Anwendung hat eine andere Sicht auf Files und kann nur per
> > Filenamen zugreifen - ein NFS CLient liefert aber letzlich Inodes
>
> Naja, ein Shellskript wuerde ls -i machen und haette dann einen passenden
> Dateinamen - das laesst sich sicher auch in C realisieren.

Leider falsch - du müsstest *alle* Verzeichnisse listen um das zu
ereichen.
Ziemlicher Overhead, zumal Dateinamen ja eh nur Verweise zu Inode
Nummern sind.
Sicherlich könnte man auch das öffnen von Files per Inode Nummer
erlauben.

> > da NFS stateless ist mag zwischen öffnen und schreiben vom File ein
> > kompletter Reboot des Servers liegen.
>
> Ich gestehe, das ich den Fall auch immer schon reichlich faszinierend
> fand.. Bei aller Vorsicht im NFS-Konzept, wo ja jede Menge Gedanken in
> Richtung "Welches Kommando darf ich zweimal schicken? Was darf ich cachen?
> Wann ist der Cache dirty?" gemavht wurden, ist doch wohl immer noch ein
> Quentchen Optimismus "Wird schon nicht schiefgehen" dabei. Das
> Weiterschreiben auf ein geoeffnetes File nach dem Reboot ist wohl schon
> dabei oder ueberlebt z.B. sogar ein Lock auf ein File das Rebooten? (Ich
> wuesste derzeit nicht wie..)

Jedes Komando kann auf der Strecke bleiben und darf wiederholt werden.
Echten Cache gab er ursprünglich nicht und ist erst mit nqnfs von BSD
dazu gekommen, womit man den verwalten konnte.
Optimismus ist das absolut nicht dabei - wenn der Server einen Befehl
nicht beantwortet, weil dieser nicht angekommen ist, die Antwort
versanded ist oder was auch immer, dann wird dieses endlos wiederholt,
bis der Server irgendwann antwortet.

> > In dem Fall kann der Server den Filenamen nicht kennen.
>
> Ich hoffe doch schon, dass ein File beim Rebooten seine inodes nicht
> wechselt..

Normalerweise nicht.
Die Böse überraschung kommt immer dann, wenn ein Admin Daten eines
Filesystems auf die neu große Platte kopiert hat...

> > Unter 5.x ist der nfsd
>
> Hier machst Du es aber spannend;-)

Leiche => ignorieren :)

> > smb ist ein Statefull Protokoll und hat somit einige Probleme weniger
> > zu bewältigen.
>
> Ich habe von smb jenseits der Anwendung und Konfiguration nicht viel
> Ahnung.. war nur ein Beispiel. Keine Sorge, ich werde keinen Kernel-smbd
> schreiben!

Als Anwender solltest du das dann wiederum wissen, weil das Statefull die
Probleme nämlich auf den Admin abwälzt.
Reboote mal einen SMB Server und beobachte das Verhalten der Windows
Clients...

-- 
B.Walter                   BWCT                http://www.bwct.de
ticso(at)bwct.de                                  info(at)bwct.de
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Wed 16 Jul 2003 - 13:30:12 CEST

search this site