網頁

2013年2月22日 星期五

quota,edguota,quotacheck,quotaoff,quotastatus,repquota指令;配額限制操作



  • guota指令,用於查看指定用戶的磁碟空間的配額情況
    • guota canred
-------------------------------------------------------------------------------------------
  • edguota指令,用於指定用戶的磁碟空間的配額情況
    • 指令:edguota canred 
    • 這時會把到vi來顯示編輯,有2個重要的欄位
      • sort :空間配額的軟限制;為0時是不受限制的。
      • hard   :空間配額的硬限制,也就是說用戶的使用空間不可以超過這個值              為0時是不受限制的
-------------------------------------------------------------------------------------------
  • quotacheck用來磁盤配額的檢查,並創建磁盤配額數據文件
    • 在進行檢查之前我們要確定是否已經打開磁盤配額的功能
  • 執行

        cat /etc/fstab
        你可能可以看見
        ............
        /dev/sdb1                /mnt/sdb1             ext3         defaults,usrguota    1    2

       看見grpquotausrguota表示有開啟磁盤配額的功能

  • 然後我們執行 quotacheck -cuv /mnt/sdb1
    • quotacheck指令相關的選項
      • 選項a
        • 掃描fstab檔案中,有加入quota設定的分割區。
      • 選項d
        • 詳細顯示指令執行過程,便於除錯或了解程式執行的情形。
      • 選項g
        • 掃描磁碟空間時,計算每個群組識別碼(GID)啟佔用的目錄和檔案數目
      • 選項u
        • 掃描磁碟空間時,計算每個使用者識別碼(UID)啟佔用的目錄和檔案數目
      • 選項v
        • 標示指令執行過程
      • 選項m
        • 強制執行指令

        你可以在 ls /mnt/sdb1 中看見1或2個aquota.user,aquota.group這2個檔案就是磁盤配額數據文件
-------------------------------------------------------------------------------------------

  • repquota用來打印出磁盤配額報表的訊息
    • 執行
      • repquota /dev/sdb1

-------------------------------------------------------------------------------------------
  • 配額限制的設定
    • 系統上新增了使用者之後,可能會針對使用者設定可使用的硬碟空間,以便於管理以及避免資源的浪費時,所可能採在配額限制的功能。
    • 在安裝完成後default是支援這個功能的,若自行編譯核心則要注意是否勾選File System->Quota Support
    • 我們假設有幾個新的使用者要加入,並開啟配額限制
      • 新增使用者
        • useradd -u 2001 -g 100 -d /home/test1 -m test1
        • useradd -u 2002 -g 100 -d /home/test2 -m test2
      • 修改 /etc/fstab 
        • 看到 LABEL=/home    /home     ext3     defaults 1 2 並改成 LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2
      • 在/home目錄下新增2個檔案aquota.user , aquota.group 並更改權限(或是使用quotacheck指令來產生2個檔案)
        • 新增2個檔案
          • touch aquota.user aquota.group 
          • chmod 600 aquota.*
        • 或是使用quotacheck -cug /home 的指令來產生這二個檔案
          • 在使用quotacheck的指令時可能發生權限被拒的情況(小弟是在centos上遇到的)…你需要關才selinux的設定先…
            • 關閉selinux
              • 去編輯 /etc/sysconfig/selinux 這個檔案
              • 將 SELINUX=enforcing 改成 SELINUX=disabled ,重開機就可以了
      • 使用quotacheck -uvg /home是檢查是否設定正確
      • Reboot你的電腦
      • 對帳號test1設定quota設定
        • edquota -u test1
      • 對群組 member 設定quota設定
        • edquota -g member
      • 檢查一下test1帳號是否有設定quota
        • repquota -a 
      • 設定所有使用者的寬限期
        • edquota -ut
        • edquota -t
          • 寬限期的格式為
            • /dev/sdd1    7days         7days
              • 單位分成days,hours,minutes,seconds
      • 設定所有群組的寬限期
        • edquota -gt
      • 將設定套用到其他的user
        • 指令格式edquota -p newrpm -u mail
          • edquota -p newrpm `awk -F:'$3 > 2000 {print $1}' /etc/passwd`
        • 指令2:
          • edquota -p canred *
            • 以canred的磁碟配置規則套用到所有人員
          • edquota -p canred eva
            • 以canred的磁碟配置規則套用到eva帳號上
          • edquota -gp member member2
            • 以群組member的磁碟配置規則套用到member上
    • quota設定檔內容(aquota.user aquota.group)
      • 格式如下
        • Filesystem block soft hard inodes soft hard
        • /dev/hda1   196         0      0      49      0        0
        • 預設下soft = 0 , hard =0 ,表示沒有上限 。
        • inodes把他想成是檔案數量即可,inodes = 0 表無限制
      • soft limit 或 hard limit
        • 如果我們打算分配給每位使用者10mb容量以偶500個檔案數的儲存空間,那麼這些使用者只能用到10mb的空間或500個檔案使用量。一旦起出就會被系統阻止。
        • 若我們將soft limit 設定成10mb , 而hard limit 設定成15mb,則表示使用者存放超過10mb的空間仍然可以儲存,但最多可儲到15mb的空間,檔案數目的設定也是如此概念的。
    • 檢查是否超過磁碟限制
      • quota -v
      • repquota -a
      • repquota -au
      • repquota -ag
      • repquota /mnt/sdd1

    • 取消磁碟空間的限制及再啟用
      • quotaoff -avug 指令即可
      • 若要將啟動磁碟空間限制,必須執行quotaon -avgu指令
      • quotaon的相關選項
        • a:開啟所有文件系統的磁盤配客功能
        • u:開啟用戶磁盤配額
        • g:開啟用戶磁盤配額
        • v:如果開啟成功,就顯示提示信息
          • 範例
            • guotaon -vug /mnt/sdd1
            • guotaon -va
      • quotaoff的相關選項基本上尋quotaon是一樣的
    • 檢准磁盤使用情況
      • 執行quotacheck -cug /dev/sdd1 即可
------編輯紀錄----
  • 2013/4/20
    • 新增
      • quotacheck遇見權限被拒的問題解決
      • quotaon選項補充
  • 2013/4/19
    • 新增
      • 【quotacheck指令相關的選項】
        【quota soft limit , hard limit 的說明】
        【檢查是否超過磁碟限制】
        【取消磁碟空間的限制及再啟用】
        補允quota -g 針對群組的指令




                                     







沒有留言:

張貼留言