A、磁盘配额作用限制普通用户使用磁盘空间,不至于因为个别人的浪费而影响到其它人的正常使用;
B、需要内核的支持;
C、只有Ext2/Ext3文件系统目前支持这种功能;
D、需要用户程序quota软件包.
磁盘配额配置过程
1)、使用usrquota,grpquota选项挂载一个分区,激活内核的支持(只能在分区上做)
2)、方法:#
mount –o usrquota,grpquota /dev/sdb1 /mnt/d1
或 mount –o remount,usrquota,grpquota / (因为根目录已经挂载过,可重新挂载)
3)、init 1 (进入单用户环境来配置)
4)、
quotacheck –cvuga 检查并创建磁盘配额的数据库文件(存放位置:在每一个分区的根目录下面)
-c: 创建create; –v:更详细地表述;–u:用户user;–g:组group;-a:所有all
5)、
edquota –u <username>为指定用户分配磁盘空间和节点数量
6)、quota命令可以查看用户的配额使用情况
如:[root@localhost root]#
ls /mnt
cdrom floppy
[root@localhost root]# mkfs.ext3 /dev/sdb1 /mnt/sd1/
mke2fs 1.32 (09-Nov-2002)
mkfs.ext3: bad blocks count - /mnt/sd1/
[root@localhost root]# mkfs.ext3 -f /dev/sdb1 /mnt/sd1/
[root@localhost root]# fdisk -l
cdrom floppy
[root@localhost root]# mkfs.ext3 /dev/sdb1 /mnt/sd1/
mke2fs 1.32 (09-Nov-2002)
mkfs.ext3: bad blocks count - /mnt/sd1/
[root@localhost root]# mkfs.ext3 -f /dev/sdb1 /mnt/sd1/
[root@localhost root]# fdisk -l
Disk /dev/sda: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 652 5237158+ 83 Linux
/dev/sda1 * 1 652 5237158+ 83 Linux
Disk /dev/sdb: 4294 MB, 4294967296 bytes
255 heads, 63 sectors/track, 522 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
255 heads, 63 sectors/track, 522 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 250 522 2192872+ 83 Linux
/dev/sdb1 250 522 2192872+ 83 Linux
[root@localhost root]#
mkfs.ext3 /dev/sdb1
mke2fs 1.32 (09-Nov-2002)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
274176 inodes, 548218 blocks
27410 blocks (5.00%) reserved for the super user
First data block=0
17 block groups
32768 blocks per group, 32768 fragments per group
16128 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
mke2fs 1.32 (09-Nov-2002)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
274176 inodes, 548218 blocks
27410 blocks (5.00%) reserved for the super user
First data block=0
17 block groups
32768 blocks per group, 32768 fragments per group
16128 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@localhost root]# mount /dev/sdb1 /mnt/sd1 -o usrquota,grpquota
[root@localhost root]# mount
/dev/sda1 on / type ext3 (rw)
none on /proc type proc (rw)
usbdevfs on /proc/bus/usb type usbdevfs (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
none on /dev/shm type tmpfs (rw)
/dev/sdb1 on /mnt/sd1 type ext3 (rw,usrquota,grpquota)
[root@localhost root]# more /etc/mtab
/dev/sda1 / ext3 rw 0 0
none /proc proc rw 0 0
usbdevfs /proc/bus/usb usbdevfs rw 0 0
none /dev/pts devpts rw,gid=5,mode=620 0 0
none /dev/shm tmpfs rw 0 0
/dev/sdb1 /mnt/sd1 ext3 rw,usrquota,grpquota 0 0
[root@localhost root]# quotacheck –cvuga <-------
quotacheck: Scanning /dev/sdb1 [/mnt/sd1] done
quotacheck: Checked 2 directories and 0 files
[root@localhost root]# ls /mnt/sd1/
aquota.group aquota.user lost+found
aquota.group 和aquota.user两个数据文件,用来分配组和用户的配额情况。
[root@localhost root]# quotaon 或reboot或quotaon /dev/sdb1
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@localhost root]# mount /dev/sdb1 /mnt/sd1 -o usrquota,grpquota
[root@localhost root]# mount
/dev/sda1 on / type ext3 (rw)
none on /proc type proc (rw)
usbdevfs on /proc/bus/usb type usbdevfs (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
none on /dev/shm type tmpfs (rw)
/dev/sdb1 on /mnt/sd1 type ext3 (rw,usrquota,grpquota)
[root@localhost root]# more /etc/mtab
/dev/sda1 / ext3 rw 0 0
none /proc proc rw 0 0
usbdevfs /proc/bus/usb usbdevfs rw 0 0
none /dev/pts devpts rw,gid=5,mode=620 0 0
none /dev/shm tmpfs rw 0 0
/dev/sdb1 /mnt/sd1 ext3 rw,usrquota,grpquota 0 0
[root@localhost root]# quotacheck –cvuga <-------
quotacheck: Scanning /dev/sdb1 [/mnt/sd1] done
quotacheck: Checked 2 directories and 0 files
[root@localhost root]# ls /mnt/sd1/
aquota.group aquota.user lost+found
aquota.group 和aquota.user两个数据文件,用来分配组和用户的配额情况。
[root@localhost root]# quotaon 或reboot或quotaon /dev/sdb1
[root@localhost root]#
edquota -u redhat
Disk quotas for user redhat (uid 502):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 125 10 0 80 0 10
Disk quotas for user redhat (uid 502):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 125 10 0 80 0 10
注:blocks表示:块的数量;inodes表示:节点的数量或建立文件的个数;
soft表示:软限制,可以超过这个数值的设定,但是有天数限制;
hard表示:硬限制,这是一个任何时候也不能超过的数值,永远不可能达到。
[root@localhost root]#
\ls /mnt/sd1
aquota.group aquota.user lost+found
[root@localhost root]# mkdir /mnt/sd1/redhat
[root@localhost root]# chown redhat /mnt/sd1/redhat/
[root@localhost root]# su - redhat
[redhat@localhost redhat]$ pwd
/home/redhat
[redhat@localhost redhat]$ cd /mnt/sd1/redhat/
[redhat@localhost redhat]$ pwd
/mnt/sd1/redhat
[redhat@localhost redhat]$ quota
Disk quotas for user redhat (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 4 10 0 1 0 9
[redhat@localhost redhat]$ ls -lh
total 8.0K
drwxrwxr-x 2 redhat redhat 4.0K Mar 12 22:41 dir
drwxrwxr-x 2 redhat redhat 4.0K Mar 12 22:41 dir1
[redhat@localhost redhat]$ ls -ld
drwxr-xr-x 4 redhat root 4096 Mar 12 22:41 .
[redhat@localhost redhat]$ dd if=/dev/zero of=file1 bs=1k count=1024
1024+0 records in
1024+0 records out
[redhat@localhost redhat]$ quota -u redhat
Disk quotas for user redhat (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 1040* 10 0 6days 4 0 9
[redhat@localhost redhat]$ touch file1
[redhat@localhost redhat]$ touch file2
[redhat@localhost redhat]$ touch file3
[redhat@localhost redhat]$ touch file4
[redhat@localhost redhat]$ touch file5
[redhat@localhost redhat]$ ls
file1 file2 file3 file4 file5
[redhat@localhost redhat]$ quota -u redhat
Disk quotas for user redhat (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 1032* 10 0 6days 6 0 9
[redhat@localhost redhat]$ touch file6
[redhat@localhost redhat]$ touch file7
[redhat@localhost redhat]$ touch file8
[redhat@localhost redhat]$ touch file9
sd(8,17): write failed, user file limit reached.
touch: creating `file9': Disk quota exceeded
[redhat@localhost redhat]$ touch file10
touch: creating `file10': Disk quota exceeded
[redhat@localhost redhat]$ quota -u redhat
Disk quotas for user redhat (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 1032* 10 0 6days 9* 0 9
aquota.group aquota.user lost+found
[root@localhost root]# mkdir /mnt/sd1/redhat
[root@localhost root]# chown redhat /mnt/sd1/redhat/
[root@localhost root]# su - redhat
[redhat@localhost redhat]$ pwd
/home/redhat
[redhat@localhost redhat]$ cd /mnt/sd1/redhat/
[redhat@localhost redhat]$ pwd
/mnt/sd1/redhat
[redhat@localhost redhat]$ quota
Disk quotas for user redhat (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 4 10 0 1 0 9
[redhat@localhost redhat]$ ls -lh
total 8.0K
drwxrwxr-x 2 redhat redhat 4.0K Mar 12 22:41 dir
drwxrwxr-x 2 redhat redhat 4.0K Mar 12 22:41 dir1
[redhat@localhost redhat]$ ls -ld
drwxr-xr-x 4 redhat root 4096 Mar 12 22:41 .
[redhat@localhost redhat]$ dd if=/dev/zero of=file1 bs=1k count=1024
1024+0 records in
1024+0 records out
[redhat@localhost redhat]$ quota -u redhat
Disk quotas for user redhat (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 1040* 10 0 6days 4 0 9
[redhat@localhost redhat]$ touch file1
[redhat@localhost redhat]$ touch file2
[redhat@localhost redhat]$ touch file3
[redhat@localhost redhat]$ touch file4
[redhat@localhost redhat]$ touch file5
[redhat@localhost redhat]$ ls
file1 file2 file3 file4 file5
[redhat@localhost redhat]$ quota -u redhat
Disk quotas for user redhat (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 1032* 10 0 6days 6 0 9
[redhat@localhost redhat]$ touch file6
[redhat@localhost redhat]$ touch file7
[redhat@localhost redhat]$ touch file8
[redhat@localhost redhat]$ touch file9
sd(8,17): write failed, user file limit reached.
touch: creating `file9': Disk quota exceeded
[redhat@localhost redhat]$ touch file10
touch: creating `file10': Disk quota exceeded
[redhat@localhost redhat]$ quota -u redhat
Disk quotas for user redhat (uid 502):
Filesystem blocks quota limit grace files quota limit grace
/dev/sdb1 1032* 10 0 6days 9* 0 9
[redhat@localhost redhat]$ cat /etc/fstab
LABEL=/ / ext3 defaults 1 1
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
/dev/sdb5 /mnt/sdb5 ext3 defaults 0 0
LABEL=/ / ext3 defaults 1 1
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
/dev/sdb5 /mnt/sdb5 ext3 defaults 0 0
[root@localhost root]#
repquota -a
*** Report for user quotas on device /dev/sdb1
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 20 0 0 2 0 0
redhat +- 1032 10 0 7days 9 0 9
*** Report for user quotas on device /dev/sdb1
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 20 0 0 2 0 0
redhat +- 1032 10 0 7days 9 0 9
#quotaoff /mnt/sdb1
#edquota –u redhat
如果要永久用配额限制的话,可以手动编辑/etc/fstab 增加:
/dev/sdb1 /mnt/sb1 ext3 defaults,usrquota,grpquota 0 0
保存退出!
取消磁盘配额的方法:
1)、使用命令quotaoff –a 关闭对应磁盘分区上的配额文件 2)、可编辑/etc/fstab文件 3)、删除/mnt/sd1目录下的aquota.usr、aquota.group两个数据库文件.
©著作权归作者所有:来自51CTO博客作者leekwen的原创作品,如需转载,请注明出处,否则将追究法律责任
0
收藏
推荐专栏更多
猜你喜欢
我的友情链接
CentOS 5.4 pptp + freeradius2 +mysql +daloradius 完美整合(图文并茂)
redhat6.5 配置使用centos的yum源
RedHat Enterprise 5.2 下载以及序列号
RedHat Linux系统修复—— grub引导、MBR损坏修复过程
Linux操作系统各版本ISO镜像下载(包括oracle linux\redhat\centos\u
RedHat Enterprise Linux 7下安装 Oracle 12C
RedHat Enterprise Linux (RHEL) 6.1正式版下载地址搜集。
教你从redhat官网获取ISO镜像
redhat linux6.5下查看HBA卡WWN号和连接状态
RedHat 7配置bonding双网卡绑定
抢先体验RedHat Enterprise Linux 7.0之安装篇
多方面来保证Linux服务器的基本系统安全
Linux磁盘IO调度算法
Redis主从+sentinel(哨兵)+keepalived
Ansible AWX基础配置和使用
Kubernetes监控方案之Grafana + Alertmanager + Prometheus
搭建高可用wordpress(keepalived+HAProxy)
NFS服务的用户身份映射
搭建zabbix监控系统
扫一扫,领取大礼包
转载于:https://blog.51cto.com/leekwen/181895
Ctrl+Enter 发布
发布
取消