Pertanyaan Berapa banyak file yang dapat saya miliki di satu direktori?


Pertanyaan ini terkait dengan yang ini.

Saya bekerja dengan animasi, yang menghasilkan BANYAK file (+/- 1.000.000) biasanya disimpan pada satu direktori. Di Mac Os X, beberapa bug muncul dengan lebih dari +/- 30.000 file, jadi saya gunakan untuk memecah animasi ke berbagai direktori.

Di Ubuntu, apakah ada batasan untuk jumlah file yang dapat disimpan oleh satu direktori?


21
2017-10-21 18:55


asal




Jawaban:


Ubuntu tidak membatasi ukuran direktori, itu diberlakukan oleh sistem file. Setiap file dan direktori adalah apa yang disebut sebagai inode. Kamu dapat memakai df -i untuk memeriksa jumlah inode yang digunakan dan tersedia untuk semua filesystem yang di-mount.

Saya baru saja membuat 1 juta dan satu file tanpa masalah karena batas inode saya untuk partisi rumah ext4 saya sebesar 50 GB (46 GiB) cukup besar.

Saya menggunakan ekspansi shell untuk membuat file, dikombinasikan dengan touch utilitas:

mkdir test
cd test
touch {0..300000}
touch {300000..600000}
touch {600000..900000}
touch {900000..1000000}

Ini menciptakan 1000001 file yang dapat diverifikasi dengan ls | wc -l. Mengapa 300000..600000 dan tidak 300001..600000? Karena aku terlalu malas untuk meletakkan itu di akhir.

df -i seperti:

/dev/sda6            3055616 1133635 1921981   38% /home

Sekarang hapus file uji (cd ..&&rm -f test butuh waktu lebih lama, jadi gunakan rm dengan nama file):

rm {0..300000}
rm {300000..600000}
rm {600000..900000}
rm {900000..1000000}
cd ..
rmdir f

dan jumlah inode yang digunakan menurun segera setelah penghapusan file:

/dev/sda6            3055616  133634 2921982    5% /home

Perhatikan bahwa bahkan jika filesystem memungkinkan sejumlah besar file, itu ide yang mengerikan untuk menyimpan file besar seperti itu dalam satu direktori. Setidaknya gunakan beberapa subdirektori dengan struktur seperti f/i/l/e/filename.ext. Program sering tidak mengharapkan sejumlah besar file.


31
2017-10-21 19:20



ext4 adalah tipe filesystem, bukan ekstensi file. Tidak bisakah Anda membuat direktori untuk pengeditan antrean? Saya ragu bahwa program-program tersebut dapat berjalan dengan baik dengan jumlah file yang besar. - Lekensteyn
Tentu aku bisa. Saya hanya membayangkan masalah sebelum saya sampai kepada mereka. Anda benar tentang Adobe After Effects, pasti akan crash, tapi jangan ragu orang Autodesk, mereka membuat potongan kode yang menakjubkan ... =) terlihat seperti menggunakan Ferrari. Sangat mudah crash, sangat cepat dan kuat karena terhalang di tanah. Semoga bahasa Inggris saya masuk akal. - H_7
Aku mengerti itu. Yay, tepatnya 17.000 reputasi ^^ - Lekensteyn
Sebelum menghapus file, coba dan buka direktori ini di Nautilus dan lihat apa yang terjadi;). - Mario
@bzero Silakan buka pertanyaan baru untuk itu. - Lekensteyn