Ueberfluessige 8.3 Dateinamen auf NTFS

03/04/2014 - 12:10 von Stefan Kanthak | Report spam
Ich meckere bekanntlich seit dem letzten Jahrtausend ueber Microsofts
unsaegliche Praxis, die fuer Windows-Anwendungen voellig ueberfluessigen
(DOS-kompatiblen) 8.3-Dateinamen noch immer standardmaessig anzulegen.

Vor allem bei 64-bittigen Versionen von Windows, denen die NTVDM zum
Ausfuehren von DOS- und Windows 3.x-Anwendungen fehlt (nur von solchen
Altherthuemern wuerden 8.3-Dateinamen ueberhaupt benoetigt), ist dass
voelliger Bloedsinn!

Auf allen von mir seit 1997 installierten NT-Systemen habe ich die
Erzeugung von 8.3-Dateinamen bereits bei der Installation ausgeschaltet
(bei NT4 durch Editieren der initialen Registry \i386\SETUPREG.HIV, bei
NT5.x per \i386\MIGRATE.INF, und bei NT6.x durch manuelles Formatieren
der Zielpartition(en)/platte(n) per
FORMAT.EXE <laufwerk>: /FS:NTFS /Q /S:Disable
alternativ
FSUTIL.EXE 8dot3name Set <laufwerk>: 1
in der Eingabeaufforderung von Windows PE vor dem Starten der Windows-
Installation).

Vorteile:

* keine ueberfluessigen und performanceschaedlichen "kurzen" Dateinamen
mehr (s.u.: ueber ein Drittel aller Dateinamen sind ueberfluessig)!

* keine Probleme mehr mit (in der Registry oder in Verknuepfungen
gespeicherten), nach Backup und Restore, Editieren oder Ueberschreiben
nicht mehr existierenden (weil neu erzeugten) "kurzen" Dateinamen!

* DOS- oder Windows 3.x-Anwendungen, die unter NT5.x auf %TEMP% alias
alias "C:\Documents and Settings\...\Local Settings\Application Data\Temp"
zugreifen wollen, laufen nicht mehr.

Abhilfe: in CONFIG.NT TEMP= auf einen kurzen Pfad setzen.

JFTR: unter NT6.x ist der Pfad "C:\Users\...\AppData\Local\Temp"
typischerweise ein "kurzer" Dateiname, d.h. dort gibt's dieses
"Problem" nicht.

Alternative Abhilfe: siehe <https://support.microsoft.com/kb/979682>
alias <http://technet.microsoft.com/securi...979682>
und <https://support.microsoft.com/kb/2859537>
alias <https://technet.microsoft.com/secur...13-063>
sowie <https://support.microsoft.com/kb/2436673>
alias <https://technet.microsoft.com/secur...10-098>

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat]
"VDMDisallowed"=dword:01

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WoW]
"DisallowedPolicyDefault"=dword:01

* kaputte Windows-Anwendungen, die mit "langen" Pfad- oder Dateinamen
und/oder Leerzeichen in Pfad- oder Dateinamen nicht umgehen koennen
(eine der MINIMAL-Forderungen der fast 20 Jahre alten "Designed for
Windows"-Richtlinien), laufen auf Fehler.

Abhilfe: den zu Win32 inkompatiblen Schrott entsorgen, ersatzweise
die Verbrecher solchen Schrotts zur Beseitigung der Maengel
auffordern.

JFTR: mir selbst sind seit etwa 10 Jahren keine Windows-Anwendungen
mehr untergekommen, die mit "langen" Dateinamen nicht umgehen
koennen, mit einer Ausnahme: die Installationsroutinen einiger
Druckertreiber von Hewlett-Packard (aber die sind resp. waren
ohnehin VOELLIG kaputt).

Abhilfe bei letzteren: SET TEMP=%windir%\TEMP resp. SET TEMP vor der Installation.

Nachteile:

* DOS- oder Windows 3.x-Anwendungen, die unter NT5.x beispielsweise auf
%TEMP% zugreifen wollen, laufen nicht mehr.

Abhilfe: s.o.

* kaputte Windows-Anwendungen, die mit "langen" Pfad- oder Dateinamen
und/oder Leerzeichen in Pfad- oder Dateinamen nicht umgehen koennen
(eine der MINIMAL-Forderungen der fast 20 Jahre alten "Designed for
Windows"-Richtlinien), laufen auf Fehler.

Abhilfe: s.o.


Wer unter Windows 7 selbst nachschauen will, welchen Bloedsinn Microsoft
verzapft, kann in einer Eingabeaufforderung folgendes Kommando ausfuehren:
%SystemRoot%\System32\FSUTIL.EXE 8dot3name Strip /t /f /l "%USERPROFILE%\Desktop\8dot3name.log" /s %SystemDrive%

Die Ergebnisse: bei jungfraeulichen, d.h. ohne Anwendungen installierten
x86-Systemen existieren etwa 33.300 ueberfluessige 8.3-Dateinamen, d.h.
ueber die Haelfte der knapp 60.0000 Windows-Dateien^WHardlinks hat einen
zweiten Dateinamen.

Bei frisch installierten x64-Systemen gibt's etwa 66.000 ueberfluessige
8.3-Dateinamen (bei knapp 115.000 installierten Dateien^WHardlinks).

Abhilfe: vor der Installation per FORMAT.EXE /S:Disable oder FSUTIL.EXE
8dot3name Set [...] 1 die Erzeugung kurzer Dateinamen abschalten.

Alternative Abhilfe: die 8.3-Dateinamen (soweit moeglich) nachtraeglich
mittels
%SystemRoot%\System32\FSUTIL.EXE 8dot3name Strip /l "%USERPROFILE%\Desktop\8dot3name.log" /s %SystemDrive%
entfernen.

Stefan
[
Die unaufgeforderte Zusendung werbender E-Mails verstoesst gegen §823
Abs. 1 sowie §1004 Abs. 1 BGB und begruendet Anspruch auf Unterlassung.
Beschluss des OLG Bamberg vom 12.05.2005 (AZ: 1 U 143/04)
 

Lesen sie die antworten

#1 Bernd Lauert
04/04/2014 - 09:28 | Warnen spam
Stefan Kanthak wrote:

Ich meckere bekanntlich seit dem letzten Jahrtausend ueber Microsofts
unsaegliche Praxis, die fuer Windows-Anwendungen voellig ueberfluessigen
(DOS-kompatiblen) 8.3-Dateinamen noch immer standardmaessig anzulegen.



Ja und?

Vor allem bei 64-bittigen Versionen von Windows, denen die NTVDM zum
Ausfuehren von DOS- und Windows 3.x-Anwendungen fehlt (nur von solchen
Altherthuemern wuerden 8.3-Dateinamen ueberhaupt benoetigt), ist dass
voelliger Bloedsinn!



Wayne interessierts?

* keine ueberfluessigen und performanceschaedlichen "kurzen" Dateinamen
mehr (s.u.: ueber ein Drittel aller Dateinamen sind ueberfluessig)!



Wir sind im SSD-Zeitalter. Bei 100000 IOPS und 600 MB/s macht sich
niemand wegen den 11 Byte extra ins Hemd.

* keine Probleme mehr mit (in der Registry oder in Verknuepfungen
gespeicherten), nach Backup und Restore, Editieren oder Ueberschreiben
nicht mehr existierenden (weil neu erzeugten) "kurzen" Dateinamen!



Solche Probleme hatte hier seit 2003 niemand mehr, also ungefàhr seit
Windows 98 tot ist.

* DOS- oder Windows 3.x-Anwendungen



...laufen heutzutage in der Dosbox (http://www.dosbox.com/). Und dafür
sind die 8.3-Dateinamen dann doch ganz nützlich...

Wer unter Windows 7 selbst nachschauen will, welchen Bloedsinn Microsoft
verzapft, kann in einer Eingabeaufforderung folgendes Kommando
ausfuehren:
%SystemRoot%\System32\FSUTIL.EXE 8dot3name Strip /t /f /l
"%USERPROFILE%\Desktop\8dot3name.log" /s %SystemDrive%

Die Ergebnisse: bei jungfraeulichen, d.h. ohne Anwendungen installierten
x86-Systemen existieren etwa 33.300 ueberfluessige 8.3-Dateinamen, d.h.
ueber die Haelfte der knapp 60.0000 Windows-Dateien^WHardlinks hat einen
zweiten Dateinamen.



Who cares? Das sind dann sage und schreibe 350 Kilobyte in zusàtzlichen
Dateinamen - von 12 GB. Das sind ganze 0,003 %! Viel schlimmer noch: Im
Windowsverzeichnis sind bestimmt *megabyteweise* Icons, die niemand mehr
benutzt.

Abhilfe: vor der Installation per FORMAT.EXE /S:Disable oder FSUTIL.EXE
8dot3name Set [...] 1 die Erzeugung kurzer Dateinamen
abschalten.

Alternative Abhilfe: die 8.3-Dateinamen (soweit moeglich) nachtraeglich
mittels
%SystemRoot%\System32\FSUTIL.EXE 8dot3name Strip /l
"%USERPROFILE%\Desktop\8dot3name.log" /s %SystemDrive%
entfernen.



Eine völlig überflüssige Aktion, bei der hinterher bestenfalls nichts
passiert und schlimmstenfalls Windows kaputt ist.

Stefan, du brauchst ganz dringend eine Freundin. Deine 112 Zeilen
Hilferuf sprechen eine klar Sprache. Mach mal Usenetpause und:

Get a life! ;-)

Ähnliche fragen