磁盘配额
1./etc/fstab
/dev/sda3 /mnt/sda3 auto defaults,usrquota(grpquota) 0 0
一般针对用户做
//e2label /dev/sda3 moves //更改卷标的
2.mount -a //或者重启系统
3.扫描分区
#cd /mnt/sda3
#dd if=/dev/zero of=./test.txt bs=1m count=2
#quotacheck -augvc
-a 扫描fstab分区需要做配额的所有用户
-u 用户在要做磁盘配额控制的空间占用的大小
-g 组要在做磁盘配额控制的空间占用的大小
-v 显示详细信息
-c 忽略原有的文件
扫描完成会产生aquota.user的数据文件
4.编辑配额
edquota
-u 针对用户编辑
-g 针对组编辑
-p 作为模板
#edquota -u user1
文件系统分区 块(1块1kb,已经使用的空间) soft hard
inodes(表项) soft(创建文件个数) hard(最多创建文件的个数) (两个警告和限制)
#edquota -p user1 user2
5.启用配额
#quotaon /dev/sda3 //临时指令,重启系统会消失
#vim /etc/rc.d/rc.local
quotaon /dev/sda3
//写入开机脚本文件可以实现重启后仍然启动
6.测试配额
#su - user1
#cd /mnt/sda3
#dd if=/dev/zero of=./xxx bs=1m count=10
超出警告的可以再创建,超出限制级别的会创建,但文件大小只是剩余的配额空间大小,超过节点的个数,无法创建文件,需要删除已创建的节点才能实现创建
磁盘配额用脚本实现管理:
将需要做磁盘配额的分区输入,脚本读取之后会自动添加/etc/fstab 文件
,并运行磁盘配额的所有步骤
#!/bin/bash
cat /dev/null >/root/quota.txt
read -p "pelase input a partion:" PARTION
while read LINE;do
if echo $LINE|grep $PARTION &>/dev/null --&所有的输出重定向
then
PARTION=`echo $LINE |awk ' { print $1 } ' `
MOUNTPOINT=`echo $LINE |awk ' { print $2 } ' `
FSTYPE=`echo $LINE |awk ' { print $3 } ' `
DUMP=`echo $LINE |awk ' { print $5 } ' `
FSCK=`echo $LINE |awk ' { print $6 } ' `
echo -e "$PARTION\t$MOUNTPOINT\t$\t\tdefaults,usrquota\t$DUMP $FSCK">>/root/quota.txt
else
echo $LINE >>/root/quota.txt
fi
done </etc/fstab
/bin/cp -f /root/quota.txt /etc/fstab
umount $PARTION
mount -a
quotacheck -augvcf %>/dev/null
sleep 5 ---等待5minutes
edquota -u user10 --针对用户user10 使用磁盘配额
quotaon $PARTION
echo "quotaon $PARTION">>/etc/rc.d/rc.local --开机自己启动磁盘配额
#quotaon /dev/sda4
--查看磁盘配额是否启用