CC00050.LinuxBasic——|Linux&高级系统.V02|

附录一:磁盘配额步骤
### --- 分 5GB 的/dev/sdb1 分区,并将它挂载到/disk 目录当中
### --- 建立需要做限制的用户和用户组

[root@localhost ~]# groupadd test
[root@localhost ~]# useradd -G test user1
[root@localhost ~]# useradd -G test user2
[root@localhost ~]# useradd -G test user3
[root@localhost ~]# passwd user1
[root@localhost ~]# passwd user2
[root@localhost ~]# passwd user3
### --- 在分区上开启磁盘配额功能

[root@localhost ~]# mount -o remount,usrquota,grpquota /disk
~~~     重新挂载/disk 分区,并加入用户和用户组的磁盘配额功能
~~~     我们要想永久生效,则需要修改/etc/fstab 文件,改成:
[root@localhost ~]# vi /etc/fstab
/dev/sdb1 /disk   ext4 defaults,usrquota,grpquota       0 0
~~~     …省略部分输出…
 
[root@localhost ~]# mount –o remount /disk
~~~     修改配置文件如果想要生效,必须重启系统,否则也需要把分区重新挂载一遍。
### --- 建立磁盘配额的配置文件
~~~     选项:
~~~     -a:扫描/etc/mtab 文件中所有启用磁盘配额功能的分区。如果加入此参数,命令后面就不需要加入分区名了
~~~     -c:不管原有的配置文件,重新扫描并建立新的配置文件
~~~     -u:建立用户配额的配置文件,也就是生成 aquota.user 文件
~~~     -g:建立组配额的配置文件,会生成 aquota.group 文件
~~~     -v:显示扫描过程
~~~     -m:强制以读写的方式扫描文件系统,和-M 类似。一般扫描根分区时使用。
~~~     -f:强制扫描文件系统,并写入新的配置文件。一般扫描新添加的硬盘分区时使用

[root@localhost ~]# quotacheck [选项] [分区名]
~~~     需要关闭 SELinux,否则会报错
[root@localhost ~]# quotacheck -avug
 
~~~     /disk 目录中两个配额配置文件已经建立
~~~     如果需要给根分区开启配额功能,需要:
[root@localhost ~]# ll /disk/
-rw------- 1 root root 6144 4 月 17 01:08 aquota.group
-rw------- 1 root root 6144 4 月 17 01:08 aquota.user
[root@localhost ~]# vi /etc/fstab 
UUID=c2ca6f57-b15c-43ea-bca0-f239083d8bd2 / ext4 defaults,usrquota,grpquota 1 1
~~~     开启/分区的配额功能
[root@localhost ~]# mount -o remount /
 
~~~     重新挂载/分区
~~~     如果我们自动扫描/分区建立配额配置文件时,因为/分区已经挂载成读写系统,
~~~     而 quotacheck
~~~     需要把分区先挂载成只读分区,然后建立配置文件,最后再挂载回来,
~~~     所以不能直接在/分区建立配置文件。这时就需要使用-m 强制以读写方式扫描文件系统了
[root@localhost ~]# quotacheck -avugm
### --- 设置用户和组的配额限制
~~~     选项:
~~~     -u 用户名: 设定用户配额
~~~     -g 组名:  设定组配额
~~~     -t: 设定宽限时间
~~~     -p: 复制配额限制。如果已经设定好某个用户的配额限制,其他用户的配额限
~~~     制如果和这个用户相同,那么可以直接复制配额限制,而不用都手工指定
~~~     我们给 user1 用户设定的配额限制是:磁盘空间软限制是 40MB,硬限制是 50MB;
~~~     文件个数的软限制是 8 个,硬限制是 10 个(稍微小一点,一会测试时方便测试)。命令如下:

[root@localhost ~]# edquota [选项] [用户名或组名]
### --- edquota 命令进入之后,就是标准的 vi 操作方法

[root@localhost ~]# edquota -u user1
Disk quotas for user user1 (uid 500):
~~~     磁盘配额是设定用户 user1(UID 是 500)
Filesystem      blocks      soft        hard        inodes  soft    hard
/dev/sdb1       0           0           0           0       0       0
~~~     分区名     已占用容量 软限制         硬限制   已占用文件数 软限制  硬限制
Disk quotas for user user1 (uid 500):
Filesystem    blocks   soft   hard  inodes  soft    hard
/dev/sdb1      0   40000   50000    0       8       10
~~~     不用对齐,是七列就行
### --- edquota 再给 user2 用户配置限额,user2 用户要求是空间软限制 250MB,硬限制 250MB,文件个数不做限制:
[root@localhost ~]# edquota -u user2
Disk quotas for user user2 (uid 501):
Filesystem    blocks   soft     hard  inodes  soft  hard
/dev/sdb1   0     250000     300000     0    0    0

### --- 接下来给 test 组配置限额,test 组要求是空间软限制是 450MB,硬限制 500MB,文件个数不做限制:
[root@localhost ~]# edquota -g test
Disk quotas for group test (gid 500):
Filesystem  blocks   soft   hard  inodes  soft  hard
/dev/sdb1   0     450000     500000     0    0    0
### --- 配额复制
~~~     user3 用户的配额值和 user2 用户完全一样,我们就可以使用 user2 用户作为模板进行复制。这
~~~     样我们如果需要建立大量的配额值一致的用户时,就会非常方便,不用一个个手工建立了。复制命令
~~~     如下:

[root@localhost ~]# edquota -p user2 -u user3
~~~     命令 -p 源用户 -u 目标用户
### --- 修改宽限时间
~~~     我们要求把宽限时间改为 8 天,修改命令如下:

[root@localhost ~]# edquota –t
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem      Block grace period  Inode grace period
/dev/sdb1           8days           8days
~~~     分区名         容量的宽限时间     个数的宽限时间
### --- 启动和关闭配额
~~~     配额的配置完成,接下来只需要启动配额就大功告成了,启动命令如下:
### --- 选项:
~~~     -a:依据/etc/mtab 文件启动所有的配额分区。如果不加-a,后面就一定要指定分区名
~~~     -u:启动用户配额
~~~     -g:启动组配额
~~~     -v:显示启动过程的信息

[root@localhost ~]# quotaon [选项] [分区名]
[root@localhost ~]# quotaon -vug /disk/
/dev/sdb1 [/disk]: group quotas turned on
/dev/sdb1 [/disk]: user quotas turned on
### --- 启动/disk 分区的配额
### --- 这条命令也可以
~~~     关闭配额的命令如下:
### --- 选项
~~~     -a:依据/etc/mtab 文件关闭所有的配额分区。如果不加-a,后面就一定要指定分区名
~~~     -u:关闭用户配额
~~~     -g:关闭组配额

[root@localhost ~]# quotaon –avug
[root@localhost ~]# quotaoff [选项] [分区名]
### --- 依据/etc/mtab 文件关闭配额分区

[root@localhost ~]# quotaoff –a

附录二:磁盘配额查询

### --- 磁盘配额查询
### --- quota 查询用户或用户组配额:
~~~     选项:
~~~     -u 用户名: 查询用户配额
~~~     -g 组名:  查询组配额
~~~     -v:     显示详细信息
~~~     -s:     以习惯单位显示容量大小,如 M,G

[root@localhost ~]# quota [选项] [用户名或组名]
### --- repquota 查询文件系统配额
~~~     选项:
~~~     -a: 依据/etc/mtab 文件查询配额。如果不加-a 选项,就一定要加分区名
~~~     -u: 查询用户配额
~~~     -g: 查询组配额
~~~     -v: 显示详细信息
~~~     -s: 以习惯单位显示容量大小

[root@localhost ~]# quota -uvs user1
[root@localhost ~]# repquota [选项] [分区名]
[root@localhost ~]# repquota –augvs

附录三:测试

### --- 测试
~~~     建立 testfile 文件,指定大小 60MB

[user1@localhost disk]$ dd if=/dev/zero of=/disk/testfile bs=1M count=60
附录四:非交互设定用户磁盘配额
### --- 非交互设定用户磁盘配额

[root@localhost ~]# setquota -u 用户名 容量软限制 容量硬限制 个数软限制 \个数硬限制 分区名
[root@localhost ~]# useradd user4
[root@localhost ~]# passwd user4
~~~     建立用户
~~~     设定用户在/disk 分区的容量软限制为 10MB,硬限制 20MB。文件个数软限制 5 个,
~~~     硬限制#8 个。
~~~     这个命令在写脚本批量设置时更加方便。当然写脚本时也可以先建立一个模板的用户,
~~~     设定好磁盘配额,再进行配额复制,也是可以的。

[root@localhost ~]# setquota -u user4 10000 20000 5 8 /disk
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yanqi_vip

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值