Linux管理者-クォータ管理
CentOSディスククォータは両方とも有効にできます。システム管理者に警告し、ディスク容量を超える前にユーザーへのそれ以上のディスクストレージアクセスを拒否します。ディスクがいっぱいになると、ディスクの内容によっては、システム全体が回復するまで急停止する可能性があります。
CentOS Linuxでクォータ管理を有効にすることは、基本的に4ステップのプロセスです-
Step 1 − / etc / fstabでグループとユーザーのクォータ管理を有効にします。
Step 2 −ファイルシステムを再マウントします。
Step 3 −クォータデータベースを作成し、ディスク使用量テーブルを生成します。
Step 4 −クォータポリシーを割り当てます。
/ etc / fstabでクォータ管理を有効にする
まず、/ etc / fstabファイルをバックアップします-
[root@centosLocal centos]# cp -r /etc/fstab ./
これで、現在の作業ディレクトリに既知の作業/ etc / fstabのコピーがあります。
#
# /etc/fstab
# Created by anaconda on Sat Dec 17 02:44:51 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/cl-root / xfs defaults 0 0
UUID = 4b9a40bc-9480-4 /boot xfs defaults 0 0
/dev/mapper/cl-home /home xfs defaults,usrquota,grpquota 0 0
/dev/mapper/cl-swap swap swap defaults 0 0
ボリュームまたはラベルの/ etc / fstabのオプションセクションで、ユーザーとグループにクォータが適用される場所に次の変更を加えました。
- usrquota
- grpquota
ご覧のとおり、 xfsファイルシステム。xfsを使用する場合、追加の手動手順が必要になります。/home/と同じディスク上にあります。さらに調査すると、カーネルレベルのマウントオプションであるnoquotaに/が設定されていることがわかります。カーネルブートオプションを再構成する必要があります。
root@localhost rdc]# mount | grep ' / '
/dev/mapper/cl-root on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
[root@localhost rdc]#
XFSファイルシステムのカーネルブートオプションの再構成
このステップは、2つの条件下でのみ必要です-
- クォータを有効にしているディスク/パーティションがxfsファイルシステムを使用している場合
- カーネルが起動時に/ etc / fstabにnoquotaパラメーターを渡している場合
Step 1 − / etc / default / grubのバックアップを作成します。
cp /etc/default/grub ~/
Step 2− / etc / default / grubを変更します。
これがデフォルトのファイルです。
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
次の行を変更したい-
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
に
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv
=cl/swap rhgb quiet rootflags=usrquota,grpquota"
Note−これらの変更を逐語的にコピーすることが重要です。grub.cfgを再構成した後、構成でエラーが発生した場合、システムは起動に失敗します。非実稼働システムでチュートリアルのこの部分を試してください。
Step 3 −作業中のgrub.cfgをバックアップします
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
新しいgrub.cfgを作成します
[root@localhost rdc]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-514.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-514.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-dbba7fa47f73457b96628ba8f3959bfd
Found initrd image: /boot/initramfs-0-rescuedbba7fa47f73457b96628ba8f3959bfd.img
done
[root@localhost rdc]#
リブート
[root@localhost rdc]#reboot
すべての変更が正確である場合、xfsファイルシステムにクォータを追加するための可用性がないはずです。
[rdc@localhost ~]$ mount | grep ' / '
/dev/mapper/cl-root on / type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
[rdc@localhost ~]$
私たちは、合格したUSRQUOTAとGRPQUOTA GRUBを経由してパラメータを。
ここで、/ etc / fstabを再度編集して、同じ物理ディスク上の/ home以降に/を含めます。
/dev/mapper/cl-root/xfs
defaults,usrquota,grpquota 0 0
それでは、クォータデータベースを有効にしましょう。
[root@localhost rdc]# quotacheck -acfvugM
クォータが有効になっていることを確認してください。
[root@localhost rdc]# quotaon -ap
group quota on / (/dev/mapper/cl-root) is on
user quota on / (/dev/mapper/cl-root) is on
group quota on /home (/dev/mapper/cl-home) is on
user quota on /home (/dev/mapper/cl-home) is on
[root@localhost rdc]#
ファイルシステムを再マウントします
パーティションまたはディスクがアクティブに起動されたパーティションから分離されている場合は、再起動せずに再マウントできます。ルートディレクトリ/で起動されたディスク/パーティションでクォータが構成されている場合は、オペレーティングシステムを再起動する必要がある場合があります。再マウントを強制して変更を適用すると、ファイルシステムを再マウントする必要性が異なる場合があります。
[rdc@localhost ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/cl-root 22447404 4081860 18365544 19% /
devtmpfs 903448 0 903448 0% /dev
tmpfs 919308 100 919208 1% /dev/shm
tmpfs 919308 9180 910128 1% /run
tmpfs 919308 0 919308 0% /sys/fs/cgroup
/dev/sda2 1268736 176612 1092124 14% /boot
/dev/mapper/cl-var 4872192 158024 4714168 4% /var
/dev/mapper/cl-home 18475008 37284 18437724 1% /home
tmpfs 183864 8 183856 1% /run/user/1000
[rdc@localhost ~]$
ご覧のとおり、LVMボリュームが使用されています。したがって、再起動するのは簡単です。これにより、/ homeが再マウントされ、/ etc / fstab構成の変更がアクティブな構成にロードされます。
クォータデータベースファイルの作成
CentOSは、/ homeのディスククォータを処理できるようになりました。フルクォータサポートを有効にするには、quotacheck コマンド。
クォータチェックは2つのファイルを作成します-
- aquota.user
- aquota.group
これらは、クォータが有効なディスク/パーティションのクォータ情報を格納するために使用されます。
以下は、一般的なクォータチェックスイッチです。
スイッチ | アクション |
---|---|
-u | ユーザー割り当てを確認します |
-g | グループクォータをチェックします |
-c | クォータを有効にするには、ファイルシステムごとにクォータを有効にする必要があります |
-v | 詳細な出力を表示します |
ユーザーごとのクォータ制限を追加する
このために、edquotaコマンドを使用し、その後にユーザー名-を続けます。
[root@localhost rdc]# edquota centos
Disk quotas for user centos (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/mapper/cl-root 12 0 0 13 0 0
/dev/mapper/cl-home 4084 0 0 140 0 0
各列を見てみましょう。
Filesystem −これは、適用されるユーザーのファイルシステムクォータです。
blocks −ユーザーが各ファイルシステムで現在使用しているブロックの数
soft−ソフト制限のブロックを設定します。ソフト制限により、ユーザーは特定の期間のクォータを実行できます
hard−ブロックをハード制限に設定します。ハード制限は、合計許容クォータです
inodes −ユーザーが現在使用しているiノードの数
soft −ソフトiノード制限
hard −ハードiノード制限
ユーザーとしての現在の割り当てを確認するには-
[centos@localhost ~]$ quota
Disk quotas for user centos (uid 1000):
Filesystem blocks quota limit grace files quota limit grace
/dev/mapper/cl-home 6052604 56123456 61234568 475 0 0 [centos@localhost ~]$
以下は、ハードクォータ制限を超えたときにユーザーに表示されるエラーです。
[centos@localhost Downloads]$ cp CentOS-7-x86_64-LiveKDE-1611.iso.part ../Desktop/
cp: cannot create regular file ‘../Desktop/CentOS-7-x86_64-LiveKDE-
1611.iso.part’: Disk quota exceeded
[centos@localhost Downloads]$
ご覧のとおり、このユーザーのディスククォータの範囲内にあります。ソフトリミット警告を設定しましょう。このように、ユーザーはクォータ制限が期限切れになる前に事前に通知されます。経験から、エンドユーザーが仕事に就くときに苦情があり、実際に仕事に取り掛かるには45分かけてファイルをクリアする必要があります。
管理者として、クォータの使用状況を確認できます。 repquota コマンド。
[root@localhost Downloads]# repquota /home
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------------------------
root -- 0 0 0 3 0 0
centos -+ 6189824 56123456 61234568 541 520 540 6days
[root@localhost Downloads]#
ご覧のとおり、ユーザーのCentOSはハードブロックの割り当てを超えており、/ homeのディスク容量を使用できなくなりました。
-+は、ファイルシステムでハードクォータを超えたことを示します。
クォータを計画するときは、少し計算する必要があります。管理者が知っておく必要があるのは、システムに何人のユーザーがいるのかということです。ユーザー/グループ間で割り当てる空き容量はどれくらいですか?ファイルシステムのブロックを構成するバイト数はいくつですか?
空きディスク領域に関連するブロックの観点からクォータを定義します。最悪のシナリオで残る、ファイルシステムに空き領域の「安全な」バッファを残すことをお勧めします。すべてのクォータを同時に超えます。これは特に、ログを書き込むためにシステムによって使用されるパーティションにあります。