Re: NFS und Codepage-Translation



Michael Baeuerle wrote:
Marcel Müller wrote:
Michael Baeuerle wrote:
Das kann man nicht ganz vergleichen. CIFS ist ein MS Protokoll und AFAIK
ist da precomposed Unicode auf der Leitung vorgeschrieben, d.h. man
weiss immer welches Format reinkommt und muss es dann nur noch ins
gewuenschte interne Format konvertieren (oder eben nicht).
nur bei den neueren Protokollversionen. Bis LANMAN2-Protokoll ist nichts
Unicode.

In [1] ist das fuer CIFS aber aufgefuehrt, frueher hiess das ja auch
noch SMB.

Geht aber AFAIK erst ab NTLM. In Netzwerk-Traces von OS/2-Clients ist jedenfalls nichts Unicode. Bei Windows ist es UCS-2.


Früher mit SBCS war das natürlich so eine Sache. Aber mit
MBCS (z.B. UTF-8) und DBCS (z.B. UCS-2) ist das Thema eigentlich durch.

Nicht wirklich. Auch bei Unicode kann man sich ja nicht auf einen Nenner
einigen. Selbst wenn beide Seiten UTF8 haben ist es z.T. nicht
kompatibel - siehe das Normalisierungsproblem bei UTF8 via NFS auf z.B.
Linux.

? - Nichts davon gehört. Geht es um die Mehrdeutigkeit der Unicode-Darstellung bei exakten Namensvergleichen?


Macht man es nach der MS bzw. Apple Philosophie, muss man immer und
ueberall Konverter dazwischenschalten. Das kostet Performance (heute
eher ein Design- bzw. Schoenheitsfehler als ein Problem) und oeffnet
potentielle Sicherheitsluecken (das ist auch heute noch topaktuell).

Naja, wenn der Umsetzer feststellt, dass Quell- und Zielkodierung gleicht sind, kann er sich natürlich getrost verabschieden.

Ausserdem ist es nicht abwaertskompatibel, bei z.B. NFS oder ext2/3/4
ist halt keine Codierung vorgeschrieben bzw. gespeichert und dieses
Prinzip daher nicht zuverlaessig anwendbar.

Korrekt. Aber eine einmalige Konfiguration ist u.U. erträglich. Getreu dem Motto "Lieber ein Ende mit Schrecken als ein Schrecken ohne Ende".


Ja, hat man. Da sollte man am Besten gar keine Sonderzeichen verwenden.
Wenn das nicht akzeptabel ist muss sich der lokale Admin um Workarounds
kuemmern oder die Dateinamen gehen frueher oder spaeter kaputt.
Hmm, dachte ich mir. Das ist aber doch irgendwie unbefriedigend, oder?

Ack.

Der Admin kann ja heute hergehen und zumindest versuchen die
MS/Apple-Philosophie moeglichst konsequent durchzuziehen. Dazu muss er
aber durchgaengig alle Protokolle und FS ausmerzen die keine
Codierungsvorgaben machen. Also kein NFS, kein ext2/3/4, etc. Lokal und
auf allen Speicherkarten und USB-Sticks nur NTFS, HFS+ oder dergleichen,
im Netz nur (aktuelles) CIFS oder vergleichbares.

Näherungsweise gibt er das spätestens beim ersten Unix-Cluster ohne ext und NFS auf. :-)

CIFS ist zumindest als Client wirklich ein Krampf. Die Philosophien passen einfach nicht wirklich zusammen. Das geht schon bei den Berechtigungen los.
Deswegen nutze ich auch NFS zu OS/2. Das lief von der ersten Sekunde wesentlich runder als CIFS. Obwohl letzteres natürlich kein Encoding-Problem hätte - dafür aber 100 andere.

[UTF8 ...]
vorkommen duerfen und hoffen, dass sich dadurch eine Tuer oeffnet. Als
erstes wuerde ich es mit einem Dateinamen probieren der mit einem
Combine character beginnt und auf einen Buffer-overflow hoffen.

Hat bisher nicht geklappt. :-) Mangels passender Umsetzung habe ich schon so manche falsche Kombination betrachten dürfen.


Die simple und viel weniger anfaellige Unix-Loesung "take it as is" fuer
so einen Bloat wie oben beschrieben aufzugeben finde ich nicht
angemessen, denn es gibt nach wie vor Anwendungsbereiche wo das einfach
ausreicht und auch keine Probleme macht. Ich glaube deswegen haben auch
beide Varianten bis heute ueberlebt. Die Zeit in der man sich darueber
keine Gedanken mehr machen muss ist jedenfalls schon noch ferne Zukunft.

Mag sein. Aber die Zeiten, wo unter Linux alles einfach und schnell war, sind lange vorbei. Die Anwender wollen es anders.

Mittlerweile ist eigentlich keine Installation eines OS mehr von einem unbedarften User durchführbar. Noch dazu in einer (immer häufiger werdenden) heterogenen Umgebung. Alleine die Fragen zur Netzwerkkonfiguration sind nicht jedermanns Sache.
Nicht einmal bei Windows läuft es rund, wie ich neulich unschönerweise am eigenen Leib erfahren durfte. Irgendwas bockt immer rum. Da war es halt der SATA-Treiber, der sich für den allergrößten hielt und nicht glauben wollte, dass die Kiste von SCSI-bootet.
Aber das war bei Ubuntu auch nicht besser. Da war es bei mir der große CRT mit BNC-Kabel und xrandr, die mich auf die Palme gebracht haben.
Bei meinen letzten Aktivitäten war die eCS-Installation (OS/2) sogar wider Erwarten sogar die reibungsloseste. Das Grundsystem lief bis auf Sound out of the Box. Aber ich bin überzeugt, das war Zufall. Traditionell sind die Installationen nämlich eher eine Vollkatastrophe. Glücklicherweise nur einmal. Danach kann man die Dinger fast beliebig reiten. Ich tippe gerade auf einer Installation von ca. 1992. Einige Betriebssystem-Upgrades später, versteht sich.

Ich denke mit wachsender Komplexität der Anforderungen, muss man sich auch mit der wachsenden Komplexität der Lösungen abfinden. Und damit auch mit den Sicherheitsrisiken.
Wobei, wenn dieser unsägliche, alte C-Mist mal weg wäre, wäre das Thema Buffer-Overflow auch weitgehend theoretisch. Bereits wenn man wirklich C++ programmiert, schafft man normalerweise maximal eine MemoryException. Die eignet sich zumindest nicht zur Code-Injection. Das gilt natürlich nur, wenn man nicht nur die Source-Files in cpp umbenannt hat, wie es gefühlt bei 90% des C++-Codes der Fall ist. Wenn ich cahr* sehe (ohne const), kriege ich schon Plaque. Das ist eigentlich immer ein Fehler; das Ding heißt std::string.


Marcel
.



Relevant Pages

  • Re: 2.6.16-rc: CIFS reproducibly freezes the computer
    ... I've seen it copying to Windows 2k3. ... I moved to CIFS because SMB didn't work well for me, as well as did NFS. ...
    (Linux-Kernel)
  • Re: Redirector in C#
    ... > No certain that I have the term correct. ... > I just want to be able to emulate a Windows remote share or mount point to ... However, if memory serves, NFS and CIFS ...
    (microsoft.public.dotnet.framework)
  • Re: Regarding NAS
    ... connect to hosts using the CIFS or NFS protocols. ... windows hosts use CIFS and unix hosts use NFS. ...
    (comp.arch.storage)
  • Re: cant get real path
    ... /etc/user_attr with profile Software Installation, ... Is /home mounted through NFS? ... patchadd/pkgadd will run a test script as user nobody so even ... For some strange reasons there's no patchadd code ...
    (comp.unix.solaris)
  • Re: dbca hangs - Oracle 10gR2 RAC, Solaris 10, NetApp NFS
    ... NetApp NFS for datafile,voting disk, etc. ... Oracle installation, binaries, etc. are on local disks. ...
    (comp.databases.oracle.server)