Linux學習—CentOS7磁盤配額工具quota

磁盤配額——Linux做爲一個多用戶的操做系統,實際生活中會發生多人共同使用一個磁盤的狀況,,爲了保證一個磁盤的有效利用,必須對磁盤進行使用率的限制,所以磁盤配額(quota)會是一個很是有用的工具node



目錄centos

  • quota的使用限制bash

  • quota的設置內容(xfs)app

  • 使用quota的案例(重點)ide


1、quota的使用限制
工具

    對EXT系列文件系統,quota僅能針對整個文件系統進行設計,沒法對單一的目錄進行磁盤配額;而在xfs的文件系統中,可使用quota對目錄進行磁盤配額,所以在進行磁盤配額前,必定要對文件系統進行檢查。centos7

    核心必須支持quota,centos7默認支持quota功能。spa

    只對通常用戶有效,由於root擁有所有的磁盤空間。操作系統

    若啓用SELinux功能,不是全部的目錄都能設定quota,默認quota僅能對/home進行設定。設計


2、quota的設置內容(xfs)

    分別針對用戶、羣組、個別目錄(user,group,project)進行磁盤配額

    限制inode和block的用量,既然quota是管理文件系統的,那麼對inode和block的限制也在情理之中

    soft/hard,表示具體限制的數值大小,當磁盤容量達到soft時,系統會發出警告,要求下降至soft值如下,當達到hard時,系統會禁止繼續增長新的文件。

    寬限時間(通常爲7天),當某一用戶使用磁盤容量達到soft時,系統會給出一個grace time,若超過這個天數,soft值會變成hard值並禁止該用戶對磁盤增長新的文件


3、使用quota的案例

    ①編寫腳本/app/bin/adduser.sh,建立用戶myquota1,myquota2,myquota3,myquota4,myquota5,密碼都爲centos。都位於myquotagrp這個組。這五個用戶有一個共享目錄/app/home/myquota,而且只有myquotagrp這個組的全部成員對這個共享目錄擁有所有權限,其餘人沒有任何權限。

  1 #!/bin/bash
  2 groupadd myquotagrp
  3 for num in {1..5}
  4 do
  5     useradd -d /app/home/myquota$num -G myquotagrp myquota$num
  6     echo "centos" |passwd --stdin myquota$num
  7 done
  8 mkdir /app/myquota
  9 chgrp myquotagrp /app/myquota
 10 chmod 2770 /app/myquota

查看效果以下:

blob.png

    ②對文件系統進行檢測並開啓文件系統支持

    因爲centos7默認是xfs文件系統而且內核支持quota功能,因此用centos7的/app目錄進行試驗,

blob.png

    對於xfs文件系統,因爲quota功能在掛載一開始就決定了,因此mount命令的-o remount選項不能生效,只能經過修改/etc/fstab文件進行quota功能的開啓,而後卸載(umount /app)再從新掛載(mount /app), 修改內容以下:

blob.png

    針對quota主要有三個類別設置

        ·usrquota    用戶

        ·grpquota    羣組

        ·prjquota    單一目錄,可是不能和grpquota同時存在

    ③觀察quota的管理數據

    咱們先來看這條指令:xfs_quota

    xfs_quota -x -c "command" [掛載點]

        -x    專家模式,後續才能夠跟-c選項

          -c    後邊跟命令

        command: print    簡單列出主機內文件系統的信息

                  df       和原來的df命令的同樣,可是比原來的df顯示的數值更加精確

                  report   後邊必須跟支持quota的載入點,列出quota的項目設置

                           report後能夠跟-u -g -p -i -b -h等選項

blob.png

後面跟-u -g -p的話值顯示相對應的信息,而不是全部user/group/project列出來,-i顯示inode的使用狀況,-h表示以人們便於閱讀的單位(例如KB,MB等)

                  state    列出支持quota功能的文件系統的quota狀態(user/group/project的開啓狀態

    ④設置限制值的大小

    設置myquota1,myquota2,myquota3,myquota4,myquota5的soft/hard爲250M/300M限制,grace time設置爲14天。

xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota1" /app
xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota2" /app
xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota3" /app
xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota4" /app
xfs_quota -x -c "limit -u bsoft=250M bhard=300M myquota5" /app
xfs_quota -x -c "timer -u -b 14days" /app

設置以後的狀態:

blob.png

blob.png

以後切到myquota1用戶實驗限額結果:

blob.png

在家目錄下建立310M的文件,顯示報錯,同時查看家目錄下新建立的文件的大小實際是300M

    

    ⑤對project的限制(/app/myquota目錄的限制)

        第一步:設定目錄,項目名稱(project),項目ID

                其中須要配置兩個相關的文件/etc/projects,/etc/projid(默認沒有這兩個文件,須要建立,若是文件名出錯後邊的會失敗)

echo "11:/app/myquota" > /etc/projects  #設置項目ID和目錄的對應關係
echo "myquotaproject:11" > /etc/projid  #設置項目名稱和項目ID的對應關係
xfs_quota -x -c "project -s myquotaproject"  #初始化項目名稱

blob.png

        第二步:對目錄設定具體限制值,將/app/myquota設置爲450M/500M

xfs_quota -x -c "limit -p bsoft=450M bhard=500M myquotaproject" /app

 blob.png

相關文章
相關標籤/搜索