AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Betriebssysteme FAT32 = 21.844 Dateien pro Verzeichnis?
Thema durchsuchen
Ansicht
Themen-Optionen

FAT32 = 21.844 Dateien pro Verzeichnis?

Ein Thema von Angel4585 · begonnen am 26. Nov 2012 · letzter Beitrag vom 27. Nov 2012
Antwort Antwort
Seite 1 von 2  1 2      
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#1

FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 09:17
Guten Tag!

Laut Microsoft und Wikipedia gilt für FAT32 die Grenze von 65535 Dateien pro Verzeichnis.
Nun habe ich eine Externe Festplatte in der in einem Unterverzeichnis genau 21.844 Dateien sind.
Auch von Hand lässt sich jetzt jedoch keine zusätzliche Datei anlegen.

Ich hab schon gegoogelt und das einzige was ich herausfinden konnte war, dass es irgendwie mit der Clustergröße zusammenhängen könnte.

Kann mir jemand von euch helfen bzw. erklären warum ich auf dieser externen Festplatte nur 21.844 Dateien in einen Ordner bekomme?
Hab auch mal eine Datei gelöscht und ne neue angelegt, das geht dann. Rechteproblem sollte es also nicht sein.
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#2

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 09:31
Wie groß ist denn deine Clustergröße? (chkdsk ausführen, da wird es als "Bytes in jeder Zuordnungseinheit" angezeigt)
Ist die Festplatte voll?
Kannst du nur in diesem einen Unterordner keine weiteren Dateien anlegen, oder auch in anderen Ordnern auf der Festplatte?
Gibt Windows keine vernünftige Fehlermeldung aus?
Wie viel Speicherplatz ist denn schon belegt?
Zitat:
Es können maximal 2^28 Dateien abgelegt werden; da jede Datei mindestens einen Cluster belegt, beschränkt die maximale Anzahl der Cluster die maximale Anzahl Dateien.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 10:07
Wenn einige Dateien mehr als 1 Cluster belegen, dann sind es am Ende natürlich weniger Dateien die in einen Ordner passen. (Wobei ich hoffe dass ich grad keinen Unsinn erzähle)
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#4

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 10:30
Also in anderen Ordnern kann ich Dateien anlegen.
Die Festplatte ist nicht voll, sind noch gut 90 GB von insgesamt 500 GB frei.
Die Dateien haben ne Größe von vllt 10 KB.
Clustergröße laut chkdsk ist 32K ( )
Die Fehlermeldung lautet folgendermaßen:
Code:
---------------------------
Die Datei kann nicht erstellt werden.
---------------------------
Die Datei "Neu Textdokument.txt" konnte nicht erstellt werden.

Das Verzeichnis oder die Datei kann nicht erstellt werden.

---------------------------
OK  
---------------------------
Edit: Sind es denn 65.535 Dateien pro Ordner oder 65.535 Cluster pro Ordner?
Edit2: Schneller als ChkDsk ist übrigens das anlegen einer leeren Datei, dann mit einem Byte füllen und unter Eigenschaften die tatsächliche Größe auf dem Datenträger auslesen.
Edit3: Hab nochmal geschaut, keine der Dateien ist größer als 11K. Also selbst wenn es 65.535 Cluster pro Ordner wären, sollten mehr reinpassen
Martin Weber
Ich bin ein Rüsselmops

Geändert von Angel4585 (26. Nov 2012 um 10:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#5

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 10:39
Welches Verzeichnis?

War bei FAT32 auch noch die Größe des Rootverzeichnisses festgelegt?
Bei FAT12/16 wurde (wenn ich mich nicht täusche) die (maximale) Größe des Rootverzeichnisses beim Formatieren festgelegt und ließ sich nachträglich nicht mehr verändern.
(genauso wie man sagen konnte wieviele FATs man haben möcher und wie groß ein Cluster sein soll)



Muß es denn unbedingt FAT sein?
Wie wäre es mit exFAT oder NTFS? (bei NTFS eventuell alle Rechte entfernen und stattdessen "jeder" mit Vollzugriff)


Wenn das maximal 65535 Dateieinträge pro Verzeichnis sind, dann kann das schon hinkommen.
  • ein Eintrag = ein 8.3-Dateiname
  • für "lange Dateinamen" werden weitere Einträge pro Datei benötigt
$2B or not $2B

Geändert von himitsu (26. Nov 2012 um 10:43 Uhr)
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#6

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 10:53
Ja ich werde das Dateisystem umstellen auf NTFS.

Kann das echt an den Dateinamen liegen? Die haben alle 16.1 Zeichen.
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#7

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 11:00
:rechne:
:rechne:
:rechne:


Jupp.

18 Zeichen pro langem Dateinamen = (1{Self} + 21844) * (1{8.3} + 2{Long}) = 65535 (paßt auf's Byte genau)

Jeder Eintrag ist 32 Byte groß, also 16 Unicodezeichen pro Eintrag für einen Bruchteil des langen Dateinamen, aber jeweils abzüglich ein paar Verwaltungsbytes, denn die LongFileName-Einträge müssen sich an ein paar grunzsätzliche Formate der 8.3-Einträge halten, damit es kompatibel bleibt, mit "alten" FAT32-Treibern.
$2B or not $2B

Geändert von himitsu (26. Nov 2012 um 11:06 Uhr)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#8

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 11:03
Vermutlich nicht das Problem, aber ich werfe mal einen weiteren Punkt ins Spiel: die Länge des Dateinamens und des gesamten Pfades.

Denn wenn de Pfad unheimlich lang ist, gibt es dann Probleme eine Datei anzulegen. Das sonderbare ist, dass andere Programme diese Probleme wiederum nicht haben, Explorer aber schon.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#9

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 11:12
Vermutlich nicht das Problem, aber ich werfe mal einen weiteren Punkt ins Spiel: die Länge des Dateinamens und des gesamten Pfades.
Da hier alle Dateien die selbe Länge hat, sollte es keinen Unterschied zwischen einer existierenden Datei und einer "neuen" (zuvielen) Datei geben.
Also stimmt, sollte hier kein Problem bereiten.

256 Chars pro Pfad, also 260 aka MAX_PATH inkl. Laufwerk ("X:\") und abschließende #0
oder 64 KB via UNC.

Der Explorer nimmt standardmäßig nicht UNC und dann kommt's drauf an, ob ein Programm einen absoluten Pfad benutzt oder von sonstwo einen Relativen.
PS: Beim Verschieben (innerhalb der Partition) sind die Untergeordneten Dateien/Pfade exal, womit man solche zulangen Pfade zumindestens löschen, verschieben oder drauf zugreifen kann indem man einen langen Pfadnamen umbenennt oder ein Unterverzeichnis verschiebt (ein paar Ebenen rauf).
$2B or not $2B

Geändert von himitsu (26. Nov 2012 um 11:16 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

AW: FAT32 = 21.844 Dateien pro Verzeichnis?

  Alt 26. Nov 2012, 22:03
Ähm, stellt sich auch die Frage, ob es Sinn macht so viele Dateien in einem Verzeichnis zu haben. Wer will denn da noch was finden?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz