linux 磁盘配额
磁盘配额
磁盘配额就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。设置磁盘配额后,可以对每一个用户的磁盘使用情况进行跟踪和控制,通过监测可以标识出超过配额报警阈值和配额限制的用户,从而采取相应的措施。磁盘配额管理功能的提供,使得管理员可以方便合理地为用户分配存储资源,可以限制指定账户能够使用的磁盘空间,这样可以避免因某个用户的过度使用磁盘空间造成其他用户无法正常工作甚至影响系统运行避免由于磁盘空间使用的失控可能造成的系统崩溃,提高了系统的安全性。
功能作用
磁盘配额可以限制指定账户能够使用的磁盘空间,这样可以避免因某个用户的过度使用磁盘空间造成其他用户无法正常工作甚至影响系统运行。在服务器管理中此功能非常重要,但对单机用户来说意义不大。
首先查看一下我的分区情况:
[root@bogon test]# fdisk -l
Disk /dev/hda: 5368 MB, 5368709120 bytes
16 heads, 63 sectors/track, 10402 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Device Boot Start End Blocks Id System
/dev/hda1 1 1 472+ 8e Linux LVM
/dev/hda2 2 500 251496 83 Linux
/dev/hda3 501 505 2520 83 Linux
/dev/hda4 506 10402 4988088 5 Extended
/dev/hda5 506 545 20128+ 83 Linux
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 2610 20860402+ 8e Linux LVM
:::由此看出我有两块硬盘,下边我将/dev/hda2进行磁盘配额的限制(注意我的hda是新添加的硬盘的,格式化后并没有挂载)
下边创建一个需要挂目录
#mkdir -p /mnt/test
将/dev/hda2永久挂载到/mnt/test
# vi /etc/fstab
此时文件内容为:
/dev/VolGroup00/LogVol00 / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/VolGroup00/LogVol01 swap swap defaults 0 0
/dev/hda2 /mnt/test ext3 defaults,usrquota,grpquota 1 1
# mount -a
(mount -a 只把没挂载的挂上已经挂载的不重新挂载)
# quotacheck -cugm /home
-c: create
-u:针对用户,扫描文件与目录的使用情况,生成aquota.user
-g:针对用户组,扫描文件与目录的使用情况,生成aquota.group
-m:强制扫描
或
手工建立 aquota.user和aquota.group这两个文件
# touch /home/aquota.user
# touch /home/aquota.group
# chmod 600 aquota.user, aquota.group
创建一个组group1
groupadd group1
新建三个用户并将用户添加到group1组
useradd -g group1 zhy1
cat /etc/group
useradd -g group1 zhy2
useradd -g group1 zhy3
给这三个用户设置密码
passwd zhy1
passwd zhy2
passwd zhy3
将这三个用户软限制为50M ,5个
硬限制为100M,8个
edquota -u zhy1
内容为:::
Disk quotas for user zhy1 (uid 503):
Filesystem blocks soft hard inodes soft hard
/dev/hda2 0 50 100 0 5 8
# edquota -p zhy1 -u zhy2 把用户zhy1的配额限制复制给用户zhy2
# edquota -p zhy1 -u zhy3 把用户zhy1的配额限制复制给用户zhy3
该组软限制为 280M,20ge
# edquota -g group1
内容为::
Disk quotas for group group1 (gid 503):
Filesystem blocks soft hard inodes soft hard
/dev/hda2 0 280 0 0 20 0
开启配额限制
# quotaon -augv 开启所有分区的磁盘配额
# quotaon -ugv /home 开启指定分区的磁盘配额
关闭配额限制
# quotaoff -augv 关闭所有分区的磁盘配额
# quotaoff -ugv /home 关闭指定分区的磁盘配额
查看配额状态
# quotastats
# repquota -a 查看所有
# repquota /home 查看指定分区
# quota -u aa 查看指定用户的设置
# quota -g gr1 查看组1的设置
设置开机启用
#vim /etc/rc.local
/sbin/quotaon -avug