Ubuntu管理磁盤配額的完整步驟
在Ubuntu系統中,磁盤配額功能依賴quota
軟件包。首先通過以下命令安裝:
sudo apt update
sudo apt install quota
要讓文件系統支持配額,需修改/etc/fstab
文件(系統啟動時自動掛載分區的配置文件)。
nano
)打開/etc/fstab
:sudo nano /etc/fstab
/home
分區通常為/dev/sda1
),在掛載選項(第四列)中添加usrquota
(用戶配額)和grpquota
(組配額),用逗號分隔。例如:/dev/sda1 /home ext4 defaults,usrquota,grpquota 0 2
nano
中按Ctrl+O
保存,Ctrl+X
退出)。mount
命令臨時重新掛載分區以應用更改:sudo mount -o remount /home
配額生效后,系統需創建配額文件(aquota.user
存儲用戶配額,aquota.group
存儲組配額)。使用quotacheck
命令完成:
sudo quotacheck -cug /home
-c
:創建新的配額文件(若已存在則覆蓋);-u
:為用戶配額創建數據庫;-g
:為組配額創建數據庫;/home
:目標分區路徑。通過quotaon
命令正式啟用指定分區的配額功能:
sudo quotaon -vug /home
-v
:顯示詳細操作信息;-u
:啟用用戶配額;-g
:啟用組配額;/home
:目標分區路徑。使用edquota
命令編輯用戶或組的配額規則,支持設置軟限制(soft limit,超過后會觸發警告并限制寫入速度)和硬限制(hard limit,絕對不允許超過的上限)。
johndoe
設置):sudo edquota -u johndoe
developers
設置):sudo edquota -g developers
/home
分區為例):Disk quotas for user johndoe (uid 1002):
Filesystem blocks soft hard inodes soft hard
/dev/sda1 0 1048576 2097152 0 0 0
blocks
:當前已用磁盤空間(單位:KB);soft
:軟限制(如1048576 KB
=1GB);hard
:硬限制(如2097152 KB
=2GB);inodes
:inode數量限制(可選,控制文件數量)。johndoe
):sudo quota -u johndoe
sudo quota -a
sudo repquota -aug
-a
:顯示所有文件系統;-u
:包含用戶配額;-g
:包含組配額。若需臨時禁用配額,可使用quotaoff
命令:
sudo quotaoff -vug /home
quotaon
命令。cron
設置定時任務(如每天凌晨生成報告):sudo crontab -e
添加以下內容(每天00:01生成報告并保存到/var/log/quota_report.log
):1 0 * * * /usr/sbin/repquota -aug > /var/log/quota_report.log
edquota -p
命令復制:sudo edquota -p johndoe newuser
此會將johndoe
的配額規則復制給newuser
。quotacheck -d
命令查看詳細執行過程,幫助定位問題:sudo quotacheck -d /home
通過以上步驟,可全面管理Ubuntu系統的磁盤配額,有效控制用戶/組的磁盤空間使用,避免資源濫用。