Dateiverwaltung

Post Reply
Message
Author
Morty
Posts: 2
Joined: 22. Jun 2004 14:15

Dateiverwaltung

#1 Post by Morty »

Hallo zusammen,

ich habe ein Problem mit dem Dienstprogramm debugfs.
Ich würde gerne künstlich die Größe einer Datei ändern ohne dabei wirklich Speicherplatz zu belegen.
Ich habe dazu eine Datei "leer" erzeugt und mit [b]modify_inode leer[/b] die Dateigröße auf 250 gesetzt. Wenn ich dann die Einstellungen ausgebe ist die Änderung eingetragen.

[code]debugfs: stat leer
Inode: 98208 Type: regular Mode: 0644 Flags: 0x0 Generation: 692171386
User: 0 Group: 0 Size: 255

File ACL: 0 Directory ACL: 0
Links: 1 Blockcount: 70
Fragment: Address: 0 Number: 0 Size: 0
ctime: 0x40d1e8e8 -- Thu Jun 17 20:54:32 2004
atime: 0x40d1e8e8 -- Thu Jun 17 20:54:32 2004
mtime: 0x40d1e8e8 -- Thu Jun 17 20:54:32 2004
BLOCKS:[/code]

Das blöde ist nur im System wird diese Änderung nicht aktiv :

[code]-rw-r--r-- 1 root root 0 Jun 17 20:54 leer[/code]
Weiß jemand wie man dies hinbekommt ?

User avatar
killerhippy
Posts: 529
Joined: 19. May 2000 19:36
Contact:

#2 Post by killerhippy »

Hi,

meine manpage zu debugfs v1.35 (28-Feb-2004) spricht von device e.g /dev/hdXX und nicht von einer Datei.

Allerdings arbeite ich auch nicht mit ext2 Dateisystemen ;-)

Wenn ich eine neue Datei erzeugen möchte, die ein Dateisystem haben soll, nehme ich dafür dd, z.B.:

Code: Select all

dd if=/dev/zero of=ds.file bs=1024 count=1400
Dies würde in 1K Blocks 1400mal Nullen schreiben, die entstandene Größe ist 1.4 MB.
Die Blockgröße wird übrigens in keiner Weise in der Datei gespeichert, sie dient lediglich dazu, keinen Verschnitt zu haben, wenn wir 1k große Blöcke in unserem Zieldateisystem verwenden wollen.
Diese Datei muss nun nur noch mit einem Dateisystem versehen werden.
Es gibt keine dumme Fragen!

Killerhippy

Morty
Posts: 2
Joined: 22. Jun 2004 14:15

#3 Post by Morty »

Danke für die Antwort.

Du hast schon recht, bevor man eine Datei verändern kann, muß man die Partition mounten z.B. mit debugfs -w dev/hda2 danach kann man dann Änderungen im Dateisystem vornehmen.

Wass mich interessiert ist ob man vorhandene leere (oder volle) Dateien so bearbeiten kann, dass eine falsche Dateigröße angegeben wird z.B. statt 0 KB 100MB.

Aber wenn ich Deine Erklärung richtig verstanden habe, werden die Metadaten zur Laufzeit ermittelt und sind somit nicht manipulierbar, richtig ?

Post Reply