Disk-Space-Utilization

在 ubuntu 上為多個使用者設置磁碟配額

  • July 1, 2020

我有一個帶有 ext4 文件系統的單獨 /home 分區。我有大約 200 個使用者的使用者名有一個共同的前綴(例如 2010…)。我必須為每個使用者的主目錄分配 500 MB 的空間限制(硬限制)。我不想一一指定空間,而是想通過使用使用者名前綴一次性設置限制。如何做呢?

一種方法是創建一個模板使用者,使用 edquota 為該模板使用者設置配額。然後使用setquota -p template_user -u real_user /filesystem將配額設置分配template_userreal_user

像這樣的東西可能對你有用。

cat /etc/passwd | cut -d: -f 1 | grep ^prefix | \
   xargs -I{} -n 1 setquota -p template_user -u {} /filesystem

您可以使用使用者列表和設置建構一個文件,以便您可以使用 –batch 選項。創建一個看起來像的文件

user1 block-softlimit block-hardlimit inode-softlimit inode-hardlimit 
user2 block-softlimit block-hardlimit inode-softlimit inode-hardlimit 
user4 block-softlimit block-hardlimit inode-softlimit inode-hardlimit 
user5 block-softlimit block-hardlimit inode-softlimit inode-hardlimit 
user5 block-softlimit block-hardlimit inode-softlimit inode-hardlimit 

然後使用類似的命令cat above_file | setquota--batch /filesystem

有很多不同的方法可以破解一個快速腳本,只需查看setquota 手冊頁

引用自:https://serverfault.com/questions/226917