• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Unix und Dos

Sisko

New member
hi,

kann es sein, dass wenn ich Dateien in Unix abspeichere kleiner werden, als wenn ich diese in DOS abspeichere?
Folgendes: Ich hatte eine Datei welche in Unix abgespeichert war...aus der habe ich eine Menge rausgeschnitten. Wie ich jetzt bemerkte ist diese in Dos abgespeichert worden und braucht erheblich viel mehr Platz als das Original in Unix. Ich habe die Datei wieder in unix zurück konvertiert. Die Datei ist zwar etwas kleiner gewurden braucht aber immer noch mehr als das Original, was ja nicht sein kann. Also, wie ist es nun? wer weiß genaueres?
 
wundersame Dateivergrößerung

also das ganze hat nicht direkt was mit DOS und Unix zu tun... eher mit dem Dateisystem...
Eine Festplatte hat physikalisch gesehen erstmal Sektoren, diese sind i.d.R. 512 Bytes groß. Ein Dateisystem muß jetzt diese Sektoren verwalten, d.h. aufschreiben, wo welche Datei anfängt und welche Sektoren frei und welche belegt sind. Da bei größeren Festplatten der Speicherplatz für diese Informationen recht hoch werden kann (bei einer 30GB Platte wären das so knapp 60 Mio Sektoren), wurde hier noch mal eine Zwischenschicht eingeführt (DOS FAT16 kann nur maximal 64k ZUordnungseinheiten verwalten). Diese nennt man dann Cluster (so zumindest bei FAT16). Cluster fassen nun Sektoren zusammen, FAT16 kann Clustergrößen bis maximal 64KB verwalten. Wenn Du also jetzt eine Datei abspeicherst, dann wird für diese Datei die kleinste verfügbare Einheit belegt, und das ist ein Cluster => 64KB. Und das selbst, wenn diese Datei sehr viel kleiner als 64KB ist. Und so wird die Festplatte mit vielen kleinen Dateien trotzdem ruck zuck voll.
Andere Dateisysteme nutzen andere Verfahren und können so Dateien effizienter speichern.
Außerdem verwendet Unix bei Textdateien nur ein Zeichen, um eine neue Zeile zu beginnen, in DOS brauchst Du zwei, wenn also viele Zeilen in der Datei enthalten sind, dann kann das auch noch einen Unterschied darstellen.
 
hmm aber trotzdem bleibt das ein Rätsel für mich...der Editor hatte angezeigt, dass die Datei in DOS abgespeichert ist, also habe ich diese ins UNIX-Format umgewandelt...aber trotzdem ist die Datei, aus der ich viel Entfernt habe (natürlich auch die Zeilen), trotz der Umwandlung größer als das Original, wie kann das sein? Das Original hat viel mehr Zeilen und Zeichen etc.
 
also dann würd ich mal folgendes probieren:
unter Unix gibt es ein Kommando namens "wc" (nein nicht toilette :) ) dieses zählt Zeilen, Wörter und Chars innerhalb von Textdateien. Vergleich doch mal die alte Unix Datei mit der neuen und schau Dir vor allem die Anzahl der Zeichen an.
Hast Du Deine Editor Einstellungen mal überprüft... vielleicht hat der einfach alle Tabs in Leerzeichen umgewandelt. Und wenn Deine Tabs auf 8 gesetzt waren, dann hast Du statt einem Tab, 8 Leerzeichen in der neuen Datei.... da kann sowas auch herkommen....
 
hi,

also das Original File (UNIX):

Wörter: 14823
Anzahl Zeilen ohne Umbruch: 4398
Anzahl Zeichen (Nicht Leerzeichen): 127602

die modifizierte Datei (DOS):

Wörter: 14370
Anzahl Zeilen ohne Umbruch: 4305
Anzahl Zeichen (Nicht Leerzeichen): 116761

und wenn ich jetzt die modifizierte Datei von DOS nach UNIX umwandle ist diese 5kb kleiner geworden, sonst sind die Daten aber die gleichen...was ja nicht sein kann. Selbst durch die 5KB Ersparnis ist diese immer noch viel Größer als das Original trotz weniger Zeichen :(

Viele Grüße

P.s.: Meintest du diese Angaben? Oder brauchst du noch andere?
 
ich denke, es hängt damit zusammen, wie UNIX die zeilenumbrüche speichert. das ist anders als bei windows.

bye,
mo
 
weiteres Problem

hi,

also ich habe mir nocheinmal deine übrigens sehr gute Erklärung mit den den Clustern etc. durchgelesen...könnte dies vieleicht die Erklärung für folgendes Problem sein?:

wenn ich mich bei meinem Provider einloge, wird angezeigt, dass ich vielmehr FTP Webspace verbraucht habe, als das der Fall ist. Die Angaben in der MYSQL Datenbank stimmen - zumindest war das beim alten Provider auch so. Aber beim FTP ist es das doppelte mehr.

Nun könnte ich mir folgendes denken: Die Größe der Website habe ich ja in Windows mit einem Rechtsklick und Eigenschaften anzeigen lassen. Windows wird die eigentliche Größe anzeigen. Auf dem Webspace des Providers wird die eigentliche belegte Größe angezeigt. Und da du ja oben das mit der ClusterGröße von 64KB gesagt hast, könnte das gut möglich sein, da ja eine Datei meist nur 10kb groß ist.

So würde ich mir das denken :) Könnte das stimmen oder was sagt der große Meister zu dem 2. Problem?
 
also meine Ausführungen und Aussagen zu den Clustern und den Sektoren und dergleichen beziehen sich (i.d.R.) haupsächlich auf die interne Speicherung der Dateien. die Aufrufe von DIR oder LS oder der Explorer zeigen eigentlich immer die tatsächliche Dateigröße an. Denn sonst könnte es ja sein, daß DU denkst: Mist die Datei paßt nicht mehr auf die Diskette, obwohl sie bei den kleineren Zuordnungseinheiten sehr wohl draufpassen würde..... (merken tust Du das meist nur am freien Speicherplatz der scheinbar viel schneller abnimmt, wenn Du viele kleine Dateien aufspielst)
FTP benutzt (unter Unix) auch die Ausgabe von LS, um die Dateien anzuzeigen. Daß sier trotzdem größer werden kann ich mir deshalb nicht vorstellen, außer das FTP Programm, bzw. der Server schmuggelt da noch eine Konvertierung irgendeiner Art herein.... was aber sehr dubios wäre...
 
hmm, also zum 2. Problem schreibe ich mal den Provider an...

aber was ist nun mit dem ersten Problem? Wie kann ich das lösen, da muss es doch einen Weg geben...:(
 
nochmal ein post höher mit dem Speicherplatz: ich habe gerade ein Programm ausgepackt, wenn ich auf "eigenschaften" gegangen bin, wuden 50 mb angezeigt...dann habe ich das Programm gelöscht und siehe da: ich hatte 100 mb frei...konnte es nicht glauben und habe den ganzen Vorgang wiederholt...war wieder so...was sagst du nun? :)
 
Hallo...... jemand zu Hause?!?

Also nochmal was Dir bei Eigenschaften angezeigt werden sind die tatsächliche Dateigröße aller markierten Dateien. Dies ist nicht die tatsächliche, physikalische Größe des belegten Speicherplatzes auf der Festplatte, diese ist in der Regel nämlich sehr viel höher.
Wenn Du also sehr viele kleine Dateien hast, die grade mal zur Hälfte Deine Cluster füllen (jeder Cluster kann maximal eine Datei enthalten), dann ist das eben so, daß 50 MB = 100 MB sind. Außerdem wird pro Unterverzeichnis ebenfalls wieder ein Cluster reserviert, denn irgendwo müssen ja die Verzeichnisinformationen gespeichert werden!!

zu Deinem Problem mit der DOS und der Unix Datei:

die Original Datei ist also ca. 127 Kb groß (stimmt nicht ganz, weil ich durch 1024 teilen müßte aber fürs Beispiel egal und einfacher :) )
die modifizierte unter DOS ist 116 KB groß... das ist schon mal kleiner, wenn ich das richtig verstehe... anhand der Daten ist das auch verständlich fehlen doch einige Zeilen und Zeichen.
Leider hast Du die Daten der Unix Datei nicht geliefert, sagst aber sie sei rund 5 KB kleiner. Tja trotz der fehlenden Daten klingt das sogar logisch und ich habs erwartet: Du hast 4305 Zeilen, die unter DOS mit einem 0x0d 0x0a abgeschlossen werden, wandelst Du das in Unix um, so wird das 0x0d rausgestrichen und Du hast 4304 Bytes weniger in Deiner Datei.

Alles klar?!?!
 
..nichts ist logisch

also die Original Unix Datei ist 148kb groß.
Die veränderte DOS-Datei ist 200kb groß und wenn ich diese in UNIX konvertiere ist diese immer noch 195kb groß. Und das kann nicht sein, da diese viel weniger Zeichen etc. hat, da müsste die so, wenn ich sie in UNIX zurückkonvertiere zirka 140kb groß sein :(.
-->Die Daten der konvertierten Dos in Unix Datei sind die gleichen wie die DOS Datei, also

Wörter: 14370
Anzahl Zeilen ohne Umbruch: 4305
Anzahl Zeichen (Nicht Leerzeichen): 116761

...nur eben 5 KB kleiner, also immer noch 195KB.

2.) Nochmal wegen der Festplatte...nach deinem jetzigen Post, ist das ja dann mit dem Provider doch kein Phänomän.

was Dir bei Eigenschaften angezeigt werden sind die tatsächliche Dateigröße aller markierten Dateien...Dies ist nicht die tatsächliche, physikalische Größe des belegten Speicherplatzes auf der Festplatte, diese ist in der Regel nämlich sehr viel höher.

genau das meinte ich. Ich zeige mir in Windows die Größe an. Da kommt z.B. 5MB raus (dein erster Satz). Jedoch wird mir auf dem Webspace 10MB berechnet (dein 2. Satz).

Dies ist jedoch ein Wiederspruch mit dem Beispiel mit der Diskette weiter unten :)
 
ähmmm dumme Frage... aber Du benutzt nicht zufällig Word zum Bearbeiten Deiner Dateien ?!?!?!?
weil dieses Verhalten ist äußert komisch und völlig unlogisch....
außer... die Leerzeichen!!! hast Du zufällig einen Editor der es erlaubt auch an stellen mit dem Cursor rumzufahren, wo man in "vernünftigen Editoren" nicht hinkommt, d.h. nach Zeilenende trotzdem beliebig nach rechts scrollbar?!? hat der vielleicht einen Haufen Leerzeichen reingeknallt und Du hast es nicht gemerkt?!?!
Dann wäre das ganze wieder logisch. Laß doch mal die Leerzeichen mitzählen und Du wirst sehen, daß es daran liegt!!!!

___________________________________________

Also wenn Dein Provider Dir 10 MB anzeigt und Du hast nur 5 MB Platz belegt, dann würd ich den mal anhauen, was das denn für eine dubiose Machenschaft wäre....
Ich vermute mal, Dein Provider hat ein Windows System und berechnet Dir den verbrauchten Speicherplatz auf seiner Disk, was ziemlich Link wäre... ich meine eine Clustergröße von z.B. 64 KB ist für eine Platte, auf der überwiegend kleine Dateien liegen ist schon ein wenig unverschämt, zumindest wenn man das dann seinen Kunden berechnet.....

______________________

Das Beispiel mit der Diskette stimmt schon so... Wenn Dir die Eigenschaften von Windows die belegten Cluster und deren Größe anzeigen würden, dann könntest Du sagen, es paßt nicht mehr drauf, obwohl es sehr wohl ginge.
 
also mit den Leerzeichen kann nicht sein...als Editor nehme ich natürlich nicht Word, sondern UltraEdit 32 V8.00 - ich sage doch, dass das total unlogisch, deswegen habe ich ja auch gepostet ;)
---------------------

Zum Provider: ich habe dem eine E-Mail geschrieben...er meinte nur, dass auch E-Mail's mit berechnet werden, dann habe ich ihm gesagt, dass ich Oulook Express verwende und das die Mail ja dann gleich immer gelöscht werden. Und das ich niemals 5 MB an Mail verschickt habe und das das Problem auch schon vorher, vor dem Einrichten der Mail's bestand. Bis jetzt hat mir noch nicht geantwortet :(.
Und das beste: Der Provider ist one2one!!!
 
nimm dir mal homesite oder einen anderen editor, der dateien im unix / PC format abspeichern kann.
im PC format ist eine html-seite 39,274 bytes gross, im unix format 38,682 bytes.
wie gross waren bei dir die unterschiede?

bye,
mo
 
..habe ich ja oben ausführlich geschrieben über 50 KB Unterschied Unix/Unix (die 2. Datei habe ich ja von DOS in Unix zurückkonvertiert), ohne Konvertieren sind es 55KB Unterschied UNIX/Dos.
Was ist an UltraEdit so schlecht? ich bin damit immer gut gefahren und man kann extrem viel konvertieren...
 
ich würd trotzdem mal die Leerzeichen mitzählen lassen, weil sonst wäre das Ganze unerklärlich... ich bin immer noch der Meinung, daß das Ganze it Whitespaces zusammenhängt!!

na gut wenn Dein Provider alles möglich mit reinrechnet, dann mußt Du Dich mit dem auseinandersetzen... der sollte das ja wohl erklären können, wie aus 5 -> 10 MB werden :)
 
also ich habe jetzt alle Leerzeichen am Ende jeder Zeile entfernen lassen und bin dadurch jetzt auf 198kb (2kb weniger) gekommen. Wenn ich jetzt wieder in UNIX konvertiere habe ich 194KB (1KB weniger). Jedoch ist das immer noch viel zu viel :( Ich sage doch, dass das unlogisch ist...
 
achja: muss noch etwas zu one2one sagen: als ich denen gesagt hatte, dass ich die Mail's mit Outlook abrufe und die doch eigentlich vom Server gelöscht werden (was aber total irrelevant ist, da es daran niemals liegt), meinten die, dass sie nicht für Microsoft Produkte zuständig wären und das ich eine Mail an Microsoft schreiben soll...:D das ist so blöd...mir kommt das so vor, als wäre das ein Praktikant gewesen...
 
hallo,

der Provider meinte nun das, was ich vermutet hatte...bei kleinen Dateien wird trotzdem mehr Space verbraucht...und das wird in Windows nicht berücksichtigt, wenn man "Eigenschaften" geht.
------------
Was ist aber nun mit meinem ersten, eigentlichen Problem? Dafür muss es doch eine Lösung geben?
 
Zurück
Oben