當前位置: 首頁>>技術教程>>正文


為什麽刪除文件不會增加可用空間?

問題描述

最近我在某個分區上收到一條關於“0 bytes free”的消息。

所以我看了看,果然:

$ df
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda1       65190604  10920296  50959160  18% /
udev              966544         4    966540   1% /dev
tmpfs             389532       744    388788   1% /run
none                5120         0      5120   0% /run/lock
none              973828       152    973676   1% /run/shm
/dev/sda5      397327316 391010276         0 100% /media/8b5e40d0-95b3-4e60-831c-e9b9aeadbfa4

該分區上有 0 個字節可用。

所以我刪除了這台機器上不需要的一堆文件,並清空了垃圾箱。我預計 “Used” 會變小,而 “Available” 會變大相同的數量。

但實際發生的是

$ df
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda1       65190604  10921184  50958272  18% /
udev              966544         4    966540   1% /dev
tmpfs             389532       744    388788   1% /run
none                5120         0      5120   0% /run/lock
none              973828       152    973676   1% /run/shm
/dev/sda5      397327316 390986836         0 100% /media/8b5e40d0-95b3-4e60-831c-e9b9aeadbfa4

“Used” 實際上確實變小了,但 “Available” 仍然為零。

我重新啟動了機器,我仍然在 “Available” 列中看到 0。

為什麽 “Available” 始終為零,即使我刪除了一堆文件以使 “Used” 變小?

為什麽刪除文件不會增加可用空間?

我正在運行 Ubuntu 12.04 LTS。

$ df -hi
Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/sda1        4.0M  512K  3.5M   13% /
udev             205K   486  204K    1% /dev
tmpfs            208K   390  208K    1% /run
none             208K     3  208K    1% /run/lock
none             208K     7  208K    1% /run/shm
/dev/sda5         25M  975K   24M    4% /media/8b5e40d0-95b3-4e60-831c-e9b9aeadbfa4

最佳回答

分步教程

  1. 在終端中運行 sudo tune2fs -m 0 /dev/sda5,假設 /dev/sda5 是您的驅動器。

  2. 輸入您的密碼(鍵入時您不會看到它)。

  3. 再次檢查您的空間,它應該是免費的。

man tune2fs

-m reserved-blocks-percentage
  Set the percentage of the filesystem which may only be allocated by privileged
  processes. Reserving some number of filesystem blocks for use by privileged 
  processes  is done  to  avoid  filesystem fragmentation, and to allow system 
  daemons, such as syslogd(8), to continue to function correctly after non-privileged 
  processes are prevented from writing to the filesystem.  Normally, the default
  percentage of reserved blocks is 5%.

次佳回答

簡單的答案是刪除更多文件。您正在看到 “reserved” 塊自行回收。通常,文件係統的 5% 是為特權進程保留的,當達到該限製時,文件係統被認為已滿。您可以使用 tune2fs -m 命令調整限製。有關更多信息,請參閱 tune2fs 的手冊頁。

第三種回答

當您刪除不是安裝 Ubuntu 的分區中的文件時,它會創建一個 .Trashes /.Trashes-1000 文件夾,相當於回收站。 Ubuntu 版本之間的數字可能不同。進入分區後,按 Ctrl + h 查看以 . 開頭的隱藏文件。如果你刪除了這個文件,那麽你實際上已經刪除了所有的文件,你會有更多的空間。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/12846.html,未經允許,請勿轉載。