Ich habe einen Ordner mit einer großen Anzahl von Dateien D:\dev\tools\eclipse
. Ich habe beschlossen, ihn C:
aus Geschwindigkeitsgründen auf mein Laufwerk (unter demselben Pfad) zu verschieben, da C:
es sich um eine SSD handelt.
Beim Ziehen und Ablegen von 4 Dateien mit besonders langen Namen wird das Kopieren mit der Begründung verweigert, sie seien zu lang.
- Das Betriebssystem ist Windows 7 Pro X64
C:
ist eine 250GB SSDD:
befindet sich auf einer LSI 9260 Hardware-RAID-Karte mit 3 2TB-Laufwerken, konfiguriert als RAID-5 (3,6 TB effektive Kapazität)- Beide
C:
sindD:
NTFS-formatiert.
Warum wäre die identische Pfadlänge auf dem RAID-Laufwerk in Ordnung, aber nicht auf der SSD?
WEITERE INFORMATIONEN:
Wenn ich das Kontextmenüelement „Als Pfad kopieren“ (Umschalt-Rechtsklick) auf die Datei verwende, wird bei D:
ein Pfad kopiert, bei dem Pfadelemente mit mehr als 8 Zeichen durch 8.3 Kurznamen ersetzt werden, während bei C:
die vollständigen Namen verwendet werden.
Zeigt jedoch, fsutil
dass beide Laufwerke 8.3 Namen aktiviert haben
C:\Windows\system32>fsutil 8dot3name query c:
The volume state for Disable8dot3 is 0 (8dot3 name creation is enabled).
The registry state of NtfsDisable8dot3NameCreation is 2, the default (Volume level setting).
Based on the above two settings, 8dot3 name creation is enabled on c:.
C:\Windows\system32>fsutil 8dot3name query d:
The volume state for Disable8dot3 is 0 (8dot3 name creation is enabled).
The registry state of NtfsDisable8dot3NameCreation is 2, the default (Volume level setting).
Based on the above two settings, 8dot3 name creation is enabled on d:.
Sie sind identisch konfiguriert. Es bleibt also weiterhin die Frage, warum Windows in einem Fall 8.3-Namen verwendet, im anderen jedoch nicht.
Antwort1
NTFS selbst hat eine maximale Dateipfadlänge von 32.767 Zeichen/Bytes.
Es istdie Windows-API mit einer Zeichenbeschränkung von 260 Zeichen(256 Zeichen für den Pfad plus 4 Zeichen für den Laufwerksbuchstaben, Doppelpunkt, Schrägstrich und ein abschließendes EOL/NUL), und daher benötigt das Systemdienstprogramm, das Sie (höchstwahrscheinlich) zum Kopieren der Dateien verwenden, diese Länge, und genau das ist der Grund für den Fehler.
Vorschläge zum erfolgreichen Kopieren eines langen Dateipfads in Windows finden Sie in dieser vorhandenen SU-Frage: