Anzeige:
Ergebnis 1 bis 14 von 14

Thema: Dummy-Datei mit exakter Größe erstellen?

  1. #1
    Registrierter Benutzer
    Registriert seit
    Jun 2003
    Ort
    Berlin
    Beiträge
    11

    Question Dummy-Datei mit exakter Größe erstellen?

    Hallo,

    ich suche nach einer Möglichkeit, eine Datei mit einer festgelegten Größe zu erzeugen. Bisher habe ich dazu immer eine dummy-Datei erstellt und die sooft in sich selbst kopiert bis die Größe erreicht war. Aber damit trifft man halt leider nie die exakte Dateigröße.

    Gibt es vielleicht ein Kommando, à la

    touch -size 1234 test

    das eine 1234 Byte-Datei namens test erzeugt?

    Vielen Dank, weeman

    PS: Solaris-Befehle gehen auch :-)

  2. #2
    Agent (Clone #17264) Avatar von Jasper
    Registriert seit
    Jul 2002
    Ort
    The Matrix (Reloaded)
    Beiträge
    3.073
    dd if=/dev/zero of=test bs=1234 count=1


    -j
    "Oh my God!" "Smith will suffice" (Agent Smith, Matrix)
    "The first rule of holes is: when you find yourself in one, stop digging." (PJ, Groklaw)

  3. #3
    Registrierter Benutzer Avatar von drcux
    Registriert seit
    Oct 2003
    Beiträge
    6.989
    dd if=/dev/zero of=dummy bs=1 count=1234

  4. #4
    Script-Terrorist Avatar von Blackhawk
    Registriert seit
    Nov 2003
    Ort
    Ehningen
    Beiträge
    1.346
    Fuer Tests von Disk-Performance u.ae. ist es sinnvoll statt /dev/zero die Quelle /dev/urandom zu nehmen, um realistischere Ergebinsse zu bekommen. Nehtm NICHT /dev/random, das dauert ewig...
    Servus und bis bald,

    Blackhawk
    ==================================================
    Linux - manchmal steh ich nachts auf, und installier mir noch eins...

  5. #5
    Premium Mitglied Avatar von Stage
    Registriert seit
    Jun 2002
    Beiträge
    810
    Zitat Zitat von drcux
    dd if=/dev/zero of=dummy bs=1 count=1234
    der Befehl von Jasper performt besser, weil mit bs=1 muss jedes Byte einzeln geschrieben werden (und das kann sich hinziehen bei sehr grossen dateien), lieber in grösseren Blöcken schreiben lassen.
    Kernel (2.6.x) Konfigurations-Howto
    Gentoo Optimierungs-Howto
    IRC: irc.freenode.org - #gentoo-anfaenger

  6. #6
    Shot a man in Reno Avatar von HEMIcuda
    Registriert seit
    Jun 2003
    Ort
    Am Rande des Wahnsinns
    Beiträge
    5.481
    Zitat Zitat von Blackhawk
    Fuer Tests von Disk-Performance u.ae. ist es sinnvoll statt /dev/zero die Quelle /dev/urandom zu nehmen, um realistischere Ergebinsse zu bekommen. Nehtm NICHT /dev/random, das dauert ewig...
    Joh. Weil der Entropy-Pool irgendwann mal erschoepft ist und auf System-
    aktivitaet wartet, um sich wieder zu fuellen. Aber man kann ja waehrend der
    Zeit nen Kernel kompilieren

    'cuda

  7. #7
    foul and a miss Avatar von ChandlerBing
    Registriert seit
    Feb 2003
    Ort
    lokale Gruppe
    Beiträge
    1.163
    Ich dachte die Entropie ist die selbe
    urandom ist doch bloß unsigned random, oder?
    You are no longer a mathematician.
    You're a numerologist.

  8. #8
    Shot a man in Reno Avatar von HEMIcuda
    Registriert seit
    Jun 2003
    Ort
    Am Rande des Wahnsinns
    Beiträge
    5.481
    Zitat Zitat von ChandlerBing
    Ich dachte die Entropie ist die selbe
    urandom ist doch bloß unsigned random, oder?
    Probiers aus. Mach mal ein cat /dev/urandom und dann mach mal ein
    cat /dev/random und bewege, wenn er fertig ist mit Zahlen drucken,
    Deine Maus. urandom faellt dann zurueck auf Pseudozufallszahlen,
    waehrend random auf die Auffuellung des Entropiepools wartet.
    Du hast natuerlich insofern recht, als dass sich urandom am Anfang
    auch aus dem Entropiepool bedient.

    'cuda

  9. #9
    Agent (Clone #17264) Avatar von Jasper
    Registriert seit
    Jul 2002
    Ort
    The Matrix (Reloaded)
    Beiträge
    3.073
    Zitat Zitat von Blackhawk
    Fuer Tests von Disk-Performance u.ae. ist es sinnvoll statt /dev/zero die Quelle /dev/urandom zu nehmen, um realistischere Ergebinsse zu bekommen. Nehtm NICHT /dev/random, das dauert ewig...
    kannst du mir erklären warum /dev/urandom in bezug auf plattenperformance realistischere werte liefern sollte? ich denke eher, das gegenteil ist der fall.


    -j
    "Oh my God!" "Smith will suffice" (Agent Smith, Matrix)
    "The first rule of holes is: when you find yourself in one, stop digging." (PJ, Groklaw)

  10. #10
    Script-Terrorist Avatar von Blackhawk
    Registriert seit
    Nov 2003
    Ort
    Ehningen
    Beiträge
    1.346
    Wieso das Gegenteil? Falls die Performancemessung einen Komprimieralgorhytmus enthaelt (z.B. bei ssh -c) ist es sinnvoller nicht nur Nullen im File zu haben...
    Fuer eine Performancemessung meine ich natuerlich nicht das Erzeugen des Files selbst, sondern das rumkopieren etc...
    Servus und bis bald,

    Blackhawk
    ==================================================
    Linux - manchmal steh ich nachts auf, und installier mir noch eins...

  11. #11
    Agent (Clone #17264) Avatar von Jasper
    Registriert seit
    Jul 2002
    Ort
    The Matrix (Reloaded)
    Beiträge
    3.073
    Zitat Zitat von Blackhawk
    Wieso das Gegenteil? Falls die Performancemessung einen Komprimieralgorhytmus enthaelt (z.B. bei ssh -c) ist es sinnvoller nicht nur Nullen im File zu haben...
    wenn ich den durchsatz eines komprimieralgorithmus testen will, ja.
    aber nicht wenn es um den rohen i/o-durchsatz einer festplatte geht. da versuche ich mit so wenig wie möglich cpu-resourcen den benchmark zu fahren um das ergebnis nicht zu verfälschen. was für daten geschrieben werden ist letztlich egal, aber /dev/zero benötigt erheblich weniger resourcen als /dev/urandom.

    $ time dd if=/dev/zero of=/dev/null bs=10240 count=1000
    1000+0 Records ein
    1000+0 Records aus

    real 0m0.008s
    user 0m0.000s
    sys 0m0.010s

    $ time dd if=/dev/urandom of=/dev/null bs=10240 count=1000
    1000+0 Records ein
    1000+0 Records aus

    real 0m4.206s
    user 0m0.000s
    sys 0m4.120s

    wenn man /dev/null in bezug auf schreibperformance als ideale festplatte ansieht und die jeweiligen transferraten ausrechnet, welche rate ist wohl korrekter, die mit /dev/zero ermittelte oder die von /dev/urandom?


    -j
    "Oh my God!" "Smith will suffice" (Agent Smith, Matrix)
    "The first rule of holes is: when you find yourself in one, stop digging." (PJ, Groklaw)

  12. #12
    Registrierter Benutzer
    Registriert seit
    Jul 2014
    Beiträge
    1
    Hier sind schöne Lösungen für die beiden Aufgabenstellungen:

    - Datei mit zufälligem Inhalt erstellen
    - Datei mit Nullen erstellen

    Ich brauche eine Datei, bei der der Inhalt völlig egal ist. Sie muss weder Nullen enthalten, noch kommt es auf einen ausgereiften Zufallsalgorithmus an. Ich brauche lediglich gute Performance bei der Erstellung der Datei. dd of=/dev/zero ist mir dafür zu langsam. Meinetwegen kann der Datenmüll bleiben, der gerade zufällig auf der Festplatte steht. Gibt es eine Möglichkeit, eine Datei mit vorgegebener Größe zu erstellen, welche einfach nur Platz auf der Festplatte belegt und den Inhalt so lässt wie er gerade ist?

    Bitte keine Tips, wie ich das Problem anders angehen kann. Ich muss tatsächlich etliche 100GBs mit Dateien beliebigen Inhalts füllen.

  13. #13
    Benutzter Registrierer
    Registriert seit
    Feb 2004
    Beiträge
    2.281
    Moin,

    In C ginge sowas recht flott:
    Code:
    #define _LARGEFILE64_SOURCE
    #define _FILE_OFFSET_BITS 64
    
    #include <stdio.h>
    #include <sys/types.h>
    #include <unistd.h>
    
    int main()
    {
      FILE * fp;
      char bla=0;
    
      off_t len=1000ULL*1000ULL*1000ULL*10ULL;
    
      fp=fopen("bla.bin","wb");
      fseeko(fp,len-1,SEEK_SET);
      fwrite(&bla,1,1,fp);
      fclose(fp);
    }
    Obiger Code erzeugt recht zuegig, aber sehr hemdsaermelig eine Datei namens bla.bin mit einer Laenge von exakt 1.0000e+10 byte.

    Gruss
    WK
    Das ist aber zu viel zum Lesen und ich will, dass er einfach kompeliert!

  14. #14
    Registrierter Benutzer
    Registriert seit
    Dec 2003
    Ort
    Dettenhausen
    Beiträge
    22.061
    gibt bestimmt auch andere Mittel, aber das hört sich zügig an:
    http://forum.linux-club.de/viewtopic...=50553#p284962
    Ich bin root - ich darf das.

Ähnliche Themen

  1. pdf writer für samba in suse 8.0
    Von cos im Forum Anwendungen Allgemein, Software
    Antworten: 16
    Letzter Beitrag: 14.10.05, 20:34
  2. LM_Sensors Installation
    Von TRFxHannibal im Forum System installieren und konfigurieren
    Antworten: 17
    Letzter Beitrag: 02.06.04, 13:06
  3. 1 MB Datei erstellen für Netzwerktest
    Von snoopy99 im Forum Router und Netzaufbau
    Antworten: 1
    Letzter Beitrag: 21.08.01, 10:38
  4. Antworten: 1
    Letzter Beitrag: 09.07.01, 02:55
  5. An Andree, meine Modem Geschichte :o)
    Von Holger Krause im Forum Linux Allgemein
    Antworten: 2
    Letzter Beitrag: 01.05.99, 20:48

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •