Agaknya, Anda akan melihat beberapa jenis kesalahan "Tidak ada ruang tersisa di perangkat":
# truncate -s 100M foobar.img
# mkfs.ext4 foobar.img
Creating filesystem with 102400 1k blocks and 25688 inodes
---> number of inodes determined at mkfs time ^^^^^
# mount -o loop foobar.img loop/
# touch loop/{1..25688}
touch: cannot touch 'loop/25678': No space left on device
touch: cannot touch 'loop/25679': No space left on device
touch: cannot touch 'loop/25680': No space left on device
Dan dalam praktiknya Anda mencapai batas ini jauh lebih cepat daripada "4 miliar file". Periksa sistem file Anda dengan df -h
dan df -i
untuk mengetahui berapa banyak ruang yang tersisa.
# df -h loop/
Filesystem Size Used Avail Use% Mounted on
/dev/loop0 93M 2.1M 84M 3% /dev/shm/loop
# df -i loop/
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/loop0 25688 25688 0 100% /dev/shm/loop
Dalam contoh ini, jika file Anda rata-rata tidak berukuran 4K, Anda kehabisan ruang inode lebih cepat daripada ruang penyimpanan. Dimungkinkan untuk menentukan rasio lain (mke2fs -N number-of-inodes
atau -i bytes-per-inode
atau -T usage-type
sebagaimana didefinisikan dalam /etc/mke2fs.conf
).
Setelah batas tercapai, upaya selanjutnya untuk membuat file akan gagal dengan ENOSPC
, menunjukkan bahwa sistem file target tidak memiliki ruang untuk file baru.
Dalam skenario yang Anda jelaskan, ini biasanya akan mengakibatkan transfer dibatalkan setelah batas tercapai.