bytetix
Goto Top

Windows Server: File too long mehr als 255 Zeichen Problem

Hallo,

wir migrieren gerade alte 2003er Server und stellen an manchen Pfaden & Dateinamen fest, das diese zu lang, also mehr als 255 Zeichen sind...
Das bedeutet natürlich jetzt wieder Workarounds und Gefrickel, aber das ist garnicht mal die Frage.

Frage:
Wie stelle ich es auf einem neuen Server 2008R2 oder 2012R2 sicher, das Personen erst garnicht Dateien ablegen / speichern dürfen wenn der Pfad zu lang ist?

Um in Zukunft dieses "feature" zu vermeiden^^

Content-Key: 267393

Url: https://administrator.de/contentid/267393

Printed on: April 19, 2024 at 13:04 o'clock

Mitglied: 114757
114757 Mar 25, 2015 at 11:27:34 (UTC)
Goto Top
Wie stelle ich es auf einem neuen Server 2008R2 oder 2012R2 sicher, das Personen erst garnicht Dateien ablegen / speichern dürfen wenn der Pfad zu lang ist?
Kritische Pfadlänge für Benutzer kenntlich machen (Script)

Gruß jodel32
Member: Demonix
Demonix Mar 25, 2015 at 11:40:33 (UTC)
Goto Top
Hey

wenn du dir einen homogene Umgebung auf 2012 oder höher aufbauen kannst, wäre ReFS noch eine Option: Da hast du unter anderem 32K Zeichen für Pfadlängen face-smile

http://blogs.msdn.com/b/b8_de/archive/2012/01/20/hier-entsteht-die-neue ...

Gruß
Demo
Member: bytetix
bytetix Mar 25, 2015 at 12:15:02 (UTC)
Goto Top
Hallo Leude,

ja - sind beides interessante Ansätze.

Zu 1: Das skript finde ich klasse! Ich denke nur eher nicht, das es Aufgabe des Users ist, zu beachten ob Dateien > 255 abgelegt wurden (auch wenn es ihm grafisch "mitgeteilt wird", werden sich die User kaum langfristig daran halten

Zu 2: Das neue Filesystem finde ich hoch interessant. Wir in der Konzern Welt müssen uns bei Serverinstallationen aber an genaue Vorgaben halten, ein neues Filesystem bräuchte globale Abstimmungen / Tests u.s.w --> Nicht in den nächsten Wochen zu realisieren.

Ich "hoffte" eher man könnte in der Config irgendwo einen Hacken setzen, das dem User die Ablage/Speicherung einer Datei in einem zu langen Pfad untersagt wird (mit einer dementsprechenden Fehlermeldung). Aber anscheinend scheint es hier nicht von M$ aus den OS Boardmitteln zu geben, oder?
Member: departure69
departure69 Mar 25, 2015 at 12:15:19 (UTC)
Goto Top
Hallo.

Hhmmm, normalerweise unterbindet Windows zu lange Dateinamen schon , es müßte dann beim Speichern eigentlich eine Fehlermeldung kommen, wenn ein einzelner Dateiname (also nur der Dateiname, ohne Pfad) länger als 255 Zeichen ist.

Das Problem ist bloß, daß sich die 255 Zeichen auf den gesamten, rekursiven Pfad beziehen. Ist diese "Pfadlängengrenze" in einem bestehenden Pfad bereits erreicht, hindert mich Windows leider nicht daran, da noch was in eine Ordnerbene tiefer reinzukopieren. Wie das zu unterbinden ist, weiß ich leider auch nicht.

Ich kann jedoch von einer "Erziehungsmaßnahme" künden, bspw. verhindert Windows auch nicht, daß ich mir eine Mail aus Outlook per Drag&Drop in ein Dateiverzeichnis ziehe (das ergibt dann eine *.msg), wenn der Dateiname länger als 255 Zeichen wird (bei dieser Methode, die meine Leute hier recht häufig anwenden, wird nämlich der Dateiname aus dem Mail-Betreff gebildet). Deshalb hab' ich unseren Leuten beigebracht, den Betreff vorher zu kürzen.

Erlebt habe ich das ansonsten bisher in erster Linie aber nur dann, wenn Fileserver von Unix pder Linux nach Windows migriert wurden. Unter UNIX und Linux gibt es nämlich keine Längenbeschränkung, weder beim Dateinamen, noch bei der Gesamtzeichenanzahl im gesamten Pfad, das geht weiter, bis die Festplatte voll ist.


Viele Grüße

von

departure69
Member: runasservice
runasservice Mar 25, 2015 updated at 14:35:25 (UTC)
Goto Top
Hallo,

Hhmmm, normalerweise unterbindet Windows zu lange Dateinamen schon , es müßte dann beim Speichern eigentlich eine Fehlermeldung kommen, wenn ein
einzelner Dateiname (also nur der Dateiname, ohne Pfad) länger als 255 Zeichen ist.

Richtig, Dateinamen sind auf 255 UTF-16 Zeichen beschränkt, Pfade können jedoch 32.767 UTF-16 Zeichen haben. Problem sind die (Ansi) Windows API-Funktionen die nur 260 Zeichen können. Alle Unicode Programme können in der Regel 32.767 Zeichen (Pfad + Dateiname) bearbeiten, wie z.B. Total Commander von von Christian Ghisler.

Mit freundlichen Grüßen Andreas