GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Möglichkeit, sofort viel Speicherplatz zu füllen / zu verbrauchen?

Der schnellste Weg, eine Datei in einem Linux-System zu erstellen, ist die Verwendung von fallocate :

fallocate -l 50G file 

Von Mann:

fallocate wird verwendet, um den zugewiesenen Speicherplatz für eine Datei zu manipulieren, um ihn entweder freizugeben oder vorab zuzuweisen.
Für Dateisysteme, die den Fallocate-Systemaufruf unterstützen, erfolgt die Vorabzuweisung schnell, indem Blöcke zugewiesen und als nicht initialisiert markiert werden, was keine IO zu den Datenblöcken erfordert. Das geht viel schneller, als eine Datei zu erstellen, indem man sie mit Nullen füllt.
Unterstützt für XFS (seit Linux 2.6.38), ext4 (seit Linux 3.0), Btrfs (seit Linux 3.7) und tmpfs (seit Linux 3.5).


Weitere Alternativen sind:

  1. Ändern Sie die Alarmschwellenwerte auf etwas in der Nähe oder unterhalb der aktuellen Nutzung oder
  2. um eine sehr kleine Testpartition mit begrenzten Inodes, Größe oder anderen Attributen zu erstellen.

In der Lage zu sein, Dinge zu testen, wie z. B. das Auflaufen auf den für Root reservierten Prozentsatz, falls vorhanden, kann ebenfalls praktisch sein.


  1. fallocate -l 50G big_file

  2. truncate -s 50G big_file

  3. dd of=bigfile bs=1 seek=50G count=0

Da diese drei Möglichkeiten alle eine Partition schnell füllen können.

Wenn Sie möchten, verwenden Sie dd , normalerweise können Sie es mit seek versuchen . Stellen Sie einfach seek=file_size_what_you_need ein und setze count=0 . Das teilt dem System mit, dass es eine Datei gibt , und seine Größe ist das, was Sie eingestellt haben, aber das System wird es tatsächlich nicht erstellen. Und auf diese Weise können Sie eine Datei erstellen, die größer als die Partitionsgröße ist.

Beispiel auf einem ext4 Partition mit weniger als 3G verfügbar. Verwenden Sie dd um eine 5T-Datei zu erstellen, die als Metadaten existiert – praktisch keinen Blockplatz benötigt.

df -h . ; dd of=biggerfile bs=1 seek=5000G count=0 ; ls -log biggerfile ; df -h .

Ausgabe:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda9        42G   37G  2.8G  94% /home
0+0 records in
0+0 records out
0 bytes copied, 4.9296e-05 s, 0.0 kB/s
-rw-rw-r-- 1 5368709120000 Jun 29 13:13 biggerfile
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda9        42G   37G  2.8G  94% /home

Linux
  1. Verwenden Sie den Befehl fallocate, um Dateien einer bestimmten Größe in Linux zu erstellen

  2. Wie verwendet man inotify richtig?

  3. Wie lösche ich freien Speicherplatz in Linux?

  4. So füllen Sie eine Festplatte unter Linux

  5. Dateien werden gelöscht, aber der Speicherplatz ist noch voll

So erstellen Sie eine Datei unter Linux

So erstellen Sie eine Tar-Gz-Datei

So erstellen oder vergrößern Sie Swap Space in Linux

So erstellen und verwenden Sie eine Auslagerungsdatei unter Linux

Verstehen Ihres Speicherplatzes durch den Befehl „df“ in Linux

Suchen von Dateien, die den meisten Speicherplatz beanspruchen