📖 SUSE Linux 磁碟配額(Quota)設定

分類:基礎入門 | 作者:pake | 發布時間:2024-12-04 21:12

SUSE Linux 磁碟配額(Quota)設定指南

磁碟配額(Quota)允許系統管理員為使用者(User)或群組(Group)設定最大可用磁碟空間與檔案數量,防止單一用戶佔用過多資源。本指南適用於 SUSE Linux Enterprise 及 openSUSE,涵蓋 EXT4 與 XFS 檔案系統的設定流程。


目錄

  1. 檢查檔案系統與安裝工具
  2. 設定掛載點支援配額
  3. 建立並啟用配額
  4. 為使用者與群組設定配額
  5. 查看與管理配額
  6. 排程檢查與報表
  7. 結語

檢查檔案系統與安裝工具

  1. 確認檔案系統類型

    lsblk -f

    確認要設定配額的分割區為 EXT4 或 XFS。

  2. 安裝 Quota 工具

    sudo zypper install quota -y

設定掛載點支援配額

  1. 編輯 /etc/fstab,在對應分割區加入配額參數。例如,假設根目錄在 /dev/sda1

    • EXT4:
      /dev/sda1  /  ext4  defaults,usrquota,grpquota  0  1
    • XFS:
      /dev/sda1  /  xfs  defaults,uquota,gquota      0  1
  2. 重新掛載

    sudo mount -o remount /

建立並啟用配額

  1. 建立配額檢查檔

    • EXT4 / XFS:
      sudo quotacheck -cug /
    • 如果使用 XFS,也可使用 xfs_quota
      sudo xfs_quota -x -c 'enable' /
  2. 啟用配額

    sudo quotaon -v /
  3. 確認啟用狀態

    sudo quotaon -p /

為使用者與群組設定配額

  1. 設定使用者配額

    sudo edquota -u username

    編輯視窗中設定:

    • blocks(KB): 軟限制(soft)與硬限制(hard)
    • inodes(檔案數): 軟 / 硬限制
  2. 設定群組配額

    sudo edquota -g groupname
  3. 設定範例

    Disk quotas for user username (uid 1001):
     Filesystem  blocks   soft   hard   inodes   soft   hard
     /dev/sda1    50000  60000  70000    1000   2000   2500

查看與管理配額


排程檢查與報表

可使用 cronsystemd 定時產生配額報表並寄送管理員:

  1. 編寫檢查腳本 /usr/local/bin/quota_report.sh:

    #!/usr/bin/env bash
    repquota -a > /var/log/quota_report.txt
    mail -s "Quota Report" admin@example.com < /var/log/quota_report.txt

    設定執行權限:

    sudo chmod +x /usr/local/bin/quota_report.sh
  2. Cron 排程

    sudo crontab -e

    增加:

    0 8 * * * /usr/local/bin/quota_report.sh

結語

透過本指南,您可在 SUSE Linux 上使用 quotaxfs_quota 完整設定硬碟配額,並為使用者與群組限制磁碟空間與檔案數量,保護系統資源不被單一用戶濫用。建議在多人共用或生產環境中啟用配額,提升系統穩定性與管理效率。

⬅ 上一篇 下一篇 ➡
🔙 返回 基礎入門 📚 返回教學列表 🏠 返回首頁