ใช้ Redhat ถ้านั่นสร้างความแตกต่าง
มีขีด จำกัด เริ่มต้นหรือไม่ มันสามารถเปลี่ยนแปลงได้หรือไม่ ถ้าไม่มีวิธีแก้ไขปัญหาเพื่อเพิ่มจำนวนโฟลเดอร์ที่อนุญาตในไดเรกทอรีหรือไม่
ใช้ Redhat ถ้านั่นสร้างความแตกต่าง
มีขีด จำกัด เริ่มต้นหรือไม่ มันสามารถเปลี่ยนแปลงได้หรือไม่ ถ้าไม่มีวิธีแก้ไขปัญหาเพื่อเพิ่มจำนวนโฟลเดอร์ที่อนุญาตในไดเรกทอรีหรือไม่
คำตอบ:
ขึ้นอยู่กับระบบไฟล์ที่การกระจายของคุณใช้ หากคุณใช้การกระจายเดสก์ท็อปที่ใหม่กว่า (เช่น Ubuntu 9.10 ซึ่งเป็น Fedora รุ่นล่าสุด) คุณอาจใช้ ext4 ถ้าคุณใช้บางอย่างที่เก่ากว่ามันน่าจะเป็น ext3
ใน ext2, 32,768 ตามวิกิพีเดีย - http://en.wikipedia.org/wiki/Ext2fs#File_system_limits ขึ้นอยู่กับระบบไฟล์ที่คุณใช้
คุณอาจต้องการพิจารณาทางเลือกสำหรับสิ่งที่คุณพยายามทำ แม้ว่าคุณจะอยู่ภายใต้ขีด จำกัด ของระบบไฟล์ (เช่น 32k สำหรับ ext2) การจัดเก็บไฟล์หลายหมื่นไฟล์ในไดเรกทอรีเดียวอาจทำให้ยุ่งยากน้อยที่สุด
ความเป็นไปได้อย่างหนึ่งคือคุณกำลังพยายามใช้ระบบไฟล์เพื่อสิ่งที่เหมาะกับฐานข้อมูลมากขึ้น พิจารณาจัดเก็บข้อมูลของคุณใน PostgreSQL, MySQL หรือแม้แต่ฐานข้อมูล sqlite มีระบบไฟล์ไม่มากเกินไปที่รับมือกับไฟล์จำนวนมาก - การย้ายหรือสำรองข้อมูลของคุณจะช้า
หากคุณต้องการจัดเก็บไฟล์จำนวนมากให้พิจารณาโครงสร้างไดเรกทอรีทางเลือก ตัวอย่างเช่นคุณอาจแยกไฟล์ตามตัวอักษรเช่น:
a/aaron.dat
a/alex.dat
a/alan.dat
b/bill.dat
b/brian.dat
วิธีนี้สามารถปรับขนาดได้โดยการเพิ่มความลึกของการแยกของคุณเช่น:
a/a/aaron.dat
a/l/alex.dat
a/l/alan.dat
หรือถ้าคุณกำลังเข้าสู่ล็อกไฟล์รายวันหรือรับการจัดส่งรายวันคุณสามารถแยกพวกเขาตามวันเช่น:
2009-10-04/logfile-01.txt
2009-10-05/logfile-01.txt
2009-10-05/logfile-02.txt
ในกรณีพิเศษนี้คุณอาจต้องการ cron งานเพื่อทำแพ็กเกจบันทึกเก่าลงใน tarballs ซิปเพื่อลดจำนวนไฟล์
ข้อ จำกัด ของโฟลเดอร์คือสาเหตุที่ระบบขององค์กรที่ต้องจัดการกับจำนวนไฟล์โดยพลการจะเก็บไว้ในไดเรกทอรีย่อยหนึ่งหรือสองไดเรกทอรีตามแฮชของชื่อไฟล์ ตัวอย่างเช่น md5 () ชื่อไฟล์และใช้สี่ไบต์แรกเป็นโฟลเดอร์ย่อยเพื่อจัดเก็บไฟล์ สำหรับระดับเพิ่มเติมให้ใช้ 4 ถัดไปสำหรับโฟลเดอร์ย่อยเพิ่มเติมหรือ 4 ถัดไปหลังจากนั้นเป็นต้นระบบส่วนใหญ่จะไม่เกิน 2 ระดับ