linux 中如何做文件系統配額

文件系統配額

  • 要想做文件系統配額必須是獨立的分區才能做
  • 我們針對/home做配額限制,因爲之前home並不是單獨的分區,所以要把home遷移一個單獨的分區上,在之前的實驗過程中已經遷移完了。
  • 由於做配額限制要啓用usrquota對用戶,對組做配額要啓用grpquota ,我們直接在fstab文件中加上
UUID=155cc08a-a66c-4389-8986-92129b20b26c /home ext4 defaults,usrquota,grpquota 0 0
  • 然後重新掛載一下
mount -o remount /dev/sda6 /home
  • 用mount 查看一下掛載裏是否添加上
[root@centos6 home]# mount
/dev/sda6 on /home type ext4 (rw,usrquota,grpquota)
  • 我們進入要限制的目錄裏運行quotacheck 會創建兩個文件,這條命令是 初始化數據庫,運行這個命令一定確定selinu關閉 /etc/selinux/config 的文件,不然會執行不成功
[root@centos6 /]# quotacheck -cug /home
[root@centos6 /]# cd /home
[root@centos6 home]# ls
aquota.group  aquota.user  guo  lost+found  mnt2  xiaoming
  • 會創建aquota.group 和 aquota.user 這兩個文件
  • 現在針對guo用戶做配額
    1. 首先開啓用quotaon -p /home
      bash
      [root@centos6 ~]# quotaon -p /home
      group quota on /home (/dev/sda6) is on
      user quota on /home (/dev/sda6) is on
    2. 指定用戶的空間限制
      bash
      [root@centos6 ~]# edquota guo 此命令是編輯guo用戶空間限制
      Disk quotas for user guo (uid 500):
      Filesystem blocks(佔用) soft (軟限制) hard (硬限制) inodes(inode編號) soft hard
      /dev/sda6 2376 0 0 365 0 0
      是以k爲單位的
      Disk quotas for user guo (uid 500):
      Filesystem blocks(佔用) soft (軟限制) hard (硬限制) inodes(inode編號) soft hard
      /dev/sda6 2376 800000 1000000 365 0 0
      [root@centos6 ~]# quota guo
      Disk quotas for user guo (uid 500):
      Filesystem blocks quota limit grace files quota limit grace
      /dev/sda6 2376 800000 1000000 365 365 0
  • 現在測試
[guo@centos6 ~]$ dd if=/dev/zero of=f1 bs=1M count=2048
sda6: warning, user block quota exceeded.
sda6: write failed, user block limit reached.
dd: writing `f1': Disk quota exceeded
975+0 records in
974+0 records out
1021562880 bytes (1.0 GB) copied, 10.1314 s, 101 MB/s
[guo@centos6 ~]$ du -sh /home/guo/
977M    /home/guo/
[guo@centos6 ~]$ quota guo
Disk quotas for user guo (uid 500): 
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
      /dev/sda6 1000000* 800000 1000000   6days     366*    365       0   6days(在這7天只能可以達到硬限制,過了7天則只能達到軟限制)
[guo@centos6 ~]$ 
  • 如何對組添加配額
  • 如何用戶和組都有配額限制,則是那個限制最低會生效。
  • 我們現在把剛剛的用戶配額不限制,0就是不限制
Disk quotas for user guo (uid 500):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sda6                       0        0        0        366      365        0
  • edquota -g GROUPNAME 這個是設置組的,其它和設定用戶一樣。

其它查詢命令

  • 用戶調查 : quota -u usernam
  • 組調查 :quota -g grepname
  • 查看配額概述 : repquota /dir

    如何刪除配額限制

    • 用命令先禁用配額
    • quotaoff /dir
    • 然後刪除目錄裏的生成的文件

      [root@centos6 home]# quotaoff -p /home
      group quota on /home (/dev/sda6) is off
      user quota on /home (/dev/sda6) is off
      [root@centos6 home]# rm aquota.*
      rm: remove regular file `aquota.group'? yes
      rm: remove regular file `aquota.user'? yes
      [root@centos6 home]# ls
      guo  lost+found  mnt2  xiaoming
      [root@centos6 home]# 
    • 把/etc/fstab 中的文件把usrquota,和gprquota去掉

    • 然後重新掛載就好了
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章