linux能創(chuàng)建多少層目錄?
linux的ext3文件系統(tǒng)的一級(jí)子目錄默認(rèn)為31998個(gè),準(zhǔn)確的說是32000個(gè)。
Linux對于cpu的搜索效率是有規(guī)定的,內(nèi)核需要重新編譯改變數(shù)量限制。內(nèi)核代碼中有這樣的內(nèi)容:
includ:#定義EXT2_link_MAX32000
includ:#定義:不能刪除。#39or..#39"。所以32000-231998。
對于ext3文件系統(tǒng)中單個(gè)目錄中的最大文件數(shù)量沒有特殊限制,它受到文件系統(tǒng)中inode數(shù)量的限制。
在一個(gè)目錄中接觸100萬個(gè)文件是沒有問題的。但是它肯定會(huì)受到文件系統(tǒng)中inode數(shù)量的限制。
Df-i/dev/sdaX或使用tune2fs-l/dev/sdaX或dump2fs-h/dev/sdaX來檢查可用的inodes。最后兩個(gè)命令的輸出結(jié)果是相同的,但是DF獲得的可用inodes會(huì)有一些錯(cuò)誤。
解決互聯(lián)網(wǎng)上inode數(shù)量限制的方法有兩種,如下。
2.1當(dāng)mkfs重新啟動(dòng)時(shí),更多地調(diào)整inode數(shù)量(取決于您的fs中的文件總數(shù))和更小的塊大小(取決于每個(gè)文件的平均大小)。
2.2使用回送文件系統(tǒng)的臨時(shí)解決方案:在/usr(或其他地方)創(chuàng)建一個(gè)大文件,然后做一個(gè)回送文件系統(tǒng),將原文件移動(dòng)到這個(gè)文件系統(tǒng),掛載到/usr下合適的位置。這可以大大減少/usr中的文件數(shù)量。但是系統(tǒng)性能會(huì)有一點(diǎn)損失。
查看系統(tǒng)句柄文件的數(shù)量
cat/proc/sys/fs/file-max
查看進(jìn)程打開的文件數(shù)量
lsof|wc-l
Linux系統(tǒng)下如何刪除某個(gè)目錄下大量文件?
正常操作可以不要只刪除目錄而不刪除文件。刪除目錄時(shí),必須添加-r選項(xiàng),即遞歸刪除它。遞歸刪除將首先刪除目錄中的所有文件,然后刪除目錄本身。除非你的其他地方的文件都有硬鏈接,否則刪除目錄后里面的文件肯定就沒了。