主目錄上的 ls 非常慢

主目錄上的 ls 非常慢

不久前,我不小心在我的主目錄中創建了數十萬個文件,隨後將其刪除。

然而從那時起,在我的主目錄中運行 ls 變得非常慢(需要數十秒才能列印)。在其他目錄中它也很慢(例如列印需要 1 秒)並且製表符完成在所有地方都很慢(也是幾十秒)。

可能是什麼問題?

編輯:正如評論中所建議的,輸出

找到〜/ -maxdepth 1 |廁所

是 67,df -h 的輸出是

/dev/sda2        74G  8.4G   62G  12% / 
none            4.0K     0  4.0K   0% /sys/fs/cgroup 
udev            3.9G   12K  3.9G   1% /dev 
tmpfs           795M  1.1M  794M   1% /run 
none            5.0M     0  5.0M   0% /run/lock 
none            3.9G  4.9M  3.9G   1% /run/shm 
none            100M   52K  100M   1% /run/user
/dev/sda1       825G  408G  376G  53% /home
AFS             8.6G     0  8.6G   0% /afs
/dev/sdb2       1.9T  584G  1.3T  32% /media/sj1/ResearchData1 
/dev/sdc1       932G  409G  524G  44% /media/sj1/ResearchData2 

答案1

我遇到了同樣的問題,原因是指向網路磁碟機資料夾的連結不再起作用。

要查看您是否屬於這種情況,請取得以下連結的清單:

find . -maxdepth 1 -type l -ls

ls逐一嘗試,損壞的也會鎖定ls,因此請按 Ctrl-C 中止它。

將其與rm所有內容一起刪除後,立即開始加載。

答案2

ls -1 -f /directory 如果目錄中有大量文件,請嘗試。

  • -1每行列出一個檔案名稱。
  • -f禁用排序。

答案3

建立數十萬個檔案可能會建立大量檔案系統範圍,這些檔案系統範圍在刪除檔案時不一定會被刪除。透過以下方式取得「碎片分數」:

sudo e4defrag -c ~/

如果分數很差(例如高於 50),請使用不含「-c」標誌的相同指令對檔案系統進行碎片整理。

答案4

大多數檔案系統在刪除後不會壓縮目錄。對我有用的是這個問題的答案老問題:

  • 新建一個資料夾
  • 將現有文件和資料夾複製到新資料夾
  • 刪除慢資料夾
  • 將新資料夾名稱重新命名為舊資料夾名稱

相關內容