GNU/Linux >> Belajar Linux >  >> Linux

Cara untuk langsung mengisi/menggunakan banyak ruang disk?

Cara tercepat untuk membuat file di sistem Linux adalah menggunakan fallocate :

fallocate -l 50G file 

Dari pria:

fallocate digunakan untuk memanipulasi ruang disk yang dialokasikan untuk file, baik untuk membatalkan alokasi atau mengalokasikannya terlebih dahulu.
Untuk sistem file yang mendukung panggilan sistem fallocate, pra-alokasi dilakukan dengan cepat dengan mengalokasikan blok dan menandainya sebagai tidak diinisialisasi, tidak memerlukan IO ke blok data. Ini jauh lebih cepat daripada membuat file dengan mengisinya dengan nol.
Didukung untuk XFS (sejak Linux 2.6.38), ext4 (sejak Linux 3.0), Btrfs (sejak Linux 3.7) dan tmpfs (sejak Linux 3.5).


Alternatif lain termasuk:

  1. untuk mengubah ambang batas alarm menjadi mendekati atau di bawah penggunaan saat ini, atau
  2. untuk membuat partisi uji yang sangat kecil dengan inode, ukuran, atau atribut lain yang terbatas.

Mampu menguji hal-hal seperti menjalankan persentase cadangan root, jika ada, mungkin juga berguna.


  1. fallocate -l 50G big_file

  2. truncate -s 50G big_file

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

Karena ketiga cara tersebut semuanya dapat mengisi partisi dengan cepat.

Jika Anda suka gunakan dd , biasanya Anda bisa mencobanya dengan seek . Cukup atur seek=file_size_what_you_need dan atur count=0 . Itu akan memberi tahu sistem bahwa ada file , dan ukurannya adalah apa yang Anda atur, tetapi sistem sebenarnya tidak akan membuatnya. Dan dengan menggunakan cara ini, Anda dapat membuat file yang lebih besar dari ukuran partisi.

Contoh, pada ext4 partisi dengan kurang dari 3G tersedia. Gunakan dd untuk membuat file 5T yang ada sebagai metadata -- hampir tidak memerlukan ruang blok.

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

Keluaran:

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. Buat file swap Linux

  2. Apa cara yang tepat untuk menggunakan inotify?

  3. Bagaimana cara menghapus ruang disk kosong di Linux?

  1. Gunakan df untuk memeriksa ruang disk kosong di Linux

  2. menghapus file tetapi ruang disk masih penuh

  3. Cara membuat swapfile pada disk ssd dengan btrfs

  1. Cara Membuat Atau Menambah Ruang Swap Di Linux

  2. Cara Memodifikasi File Di Tempat?

  3. Gunakan Perintah fallocate untuk Membuat File dengan Ukuran Tertentu di Linux