?Linux 磁盤中如果出現磁盤配額超限錯誤,可能原因是已經超出所設定的磁盤空間或文件數量限制,磁盤配額是系統管理員設置的,用于限制用戶使用的最大磁盤空間或文件數量。出現這種錯誤,一般是在調整配置、清理文件和優化使用等多方面處理,常用解決方法如下!
查詢當前配額,確定具體超限的原因,是空間還是文件數量超限。用 quota 命令查看用戶配額:
quota -u username
替換username 為實際的用戶名。輸出示例:
Disk quotas for user username (uid 1001):
Filesystem blocks quota limit grace files quota limit grace
/dev/sda1 1048576 1000000 1500000 50000 20000 25000
其中blocks 表示使用的磁盤塊數。
quota 是設置的軟限制。
limit 是設置的硬限制。
files 表示使用的文件數。
檢查特定用戶或組的配額:
quota -g groupname
查詢出全部文件和文件夾的大小,再按照大小進行排序。使用du命令查找占用空間較大的目錄和文件:
du -sh * | sort -h
找出無用文件和目錄后,刪除釋放空間:
rm -rf /path/to/unnecessary/file
清理軟件包管理器緩存和臨時文件可以釋放一些空間,APT (Debian/Ubuntu):
sudo apt-get clean
sudo apt-get autoclean
sudo yum clean all
或
sudo dnf clean all
刪除臨時文件:
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*
查找并刪除重復文件,
使用 fdupes 查找重復文件:
sudo apt install fdupes # Ubuntu/Debian 安裝
sudo yum install fdupes # centos 安裝
fdupes -r /home/username
使用 fdupes 查找重復文件后,可手動刪除重復文件以釋放空間。
當清理空間后還是需要更多磁盤空間和文件數量,可以通過調整磁盤配額。在系統中安裝磁盤配額工具。Debian/Ubuntu:
sudo apt-get install quota
centos/Fedora:
sudo yum install quota
確保在/etc/fstab 文件中為需要啟用的配額分區添加usrquota和grpquota選項:
/dev/sda1 / ext4 defaults,usrquota,grpquota 0 1
再重新掛在文件系統:
sudo mount -o remount /
初始化磁盤配額的數據庫:
sudo quotacheck -cum /
設置用戶或組的磁盤配額,通過edquota 命令,設置用戶配額:
sudo edquota -u username
設置組配額:
sudo edquota -g groupname
edquota 命令會打開文本編輯器,可以在其中設置快和INODE的軟限制和硬限制。啟用配額以使生效:
sudo quotaon -v /