实验环境

环境:centos7.3 ,一块磁盘sdb分一个分区sdb1。
安装磁盘配额支持软件
yum install quota
制作文件系统,并以支持配额功能的方式挂载文件系统
mkfs.ext4 /dev/sdb1
mount /dev/sdb1 /tmp
mount -o remount,usrquota,grpquota /dev/sdb1
查看磁盘挂载时是否启用磁盘配额技术
mount
要想永久挂载(需在配置文件里,加入usrquota,grpquota这两个参数)
vim /etc/fstab
/dev/sdb1 /tmp ext4 defaults,usrquota,grpquota 0 0
检测磁盘配额并生成配额文件(若是出错,请关闭selinux
quotacheck -cugv /tmp		#此命令会在/tmp下生成两个文件
#解释:-c 创建配额文件,-u (-g) 扫描磁盘空间,计算每个用户(组)识别码所占用的目录和文件数,-a 扫描在/etc/fstab文件里,有加入quota设置的分区,-d 详细显示指令执行过程,便于排错。-R 排除根目录所在分区
用户和组帐号的配额设置
useradd wsfnk		#先创建一个用户,若有就不用创建了
edquota -u wsfnk #-g 表示 wsfnk组,在类似vim界面,编辑限制大小, Disk quotas for user wsfnk (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/sdb1 0 20 50 1 0 0 #对其中各字段解释如下:
#Filesystem下显示实现磁盘配额的分区;
#blocks下为当前已经使用的大小,不用修改;
#soft为软限制,超出后会给出警告,超出的部分默认会保存7天;
#hard为硬限制,不可超越的限制(软硬限制默认单位都是KB);
#后面的两个相同的soft、hard分别表示分区中这个用户可以创建的文件数目软硬限制;
#本例中设置,qingsword可以使用/dev/sdb1分区的软限制大小10KB,硬限制20KB,可创建的文件个数软限制是3个,硬限制5个; edquota参数
-u :设置用户的quta,这是预设的参数
-g :设置群组的quota
-p 源用户名称 :将源用户的quota设置套用到其他用户或组
-t :设置宽限期限
激活磁盘配额
quotaon -ugv /tmp

注意:磁盘配额中的blocks,不是fdisk里看到的blocks,而是表示1k

测试是否限制会生效
写数据
mkdir /tmp/test
chmod 777 /tmp/test 切换用户wsfnk
su wsfnk
cd /tmp/test
dd if=/dev/zero of=wss.test bs=1k count=500
关闭磁盘配额
#关闭单个磁盘的磁盘配额
quotaoff /sdb1 #关闭所有已经开启的磁盘配额
quotaoff -a #反之,开启所有磁盘配额
quotaon -a #如果不再使用磁盘配额,可以将配置文件也删除
rm -rf /sdb1/aquota.* #最后删除/etc/fstab中的自动挂载即可

linux限定用户或组对磁盘空间的使用的更多相关文章

  1. Linux修改用户所在组方法

    Linux修改用户所在组方法 usermod -g 用户组 用户名强行设置某个用户所在组usermod -G 用户组 用户名把某个用户改为 group(s) usermod -a -G 用户组 用户名 ...

  2. linux新用户(组)的那些事

    linux新用户(组)的那些事   创建新用户 groupadd bigdata //添加新用户组bigdata useradd -g bigdata es //-g:为用户组添加新用户 passwd ...

  3. Linux基本命令(2)有关磁盘空间的命令

    有关磁盘空间的命令 命令 功能 mount 挂载文件系统 umount 卸载已挂载上的文件系统 df 检查各个硬盘分区和已挂上来的文件系统的磁盘空间 du 显示文件目录和大小 fsck 主要是检查和修 ...

  4. linux 学习-用户&群组&权限

    Linux用户&群组&权限  ⦁ Linux安全性模型   1)Linux使用User和Group控制使用者对文件的存取权限   2)用户使用账号和口令登录Linux   3) ...

  5. Linux下用户和组管理

    用户与组之间的关系是,组下面有若干个用户,每个用户必须从属于唯一一个组.组可以理解为权限的集合.用户管理的命令有:useradd, userdel, usermod, passwd, chsh, ch ...

  6. linux系统用户和组管理

    用户和组管理 Linux是多用户多任务的网络操作系统,作为网络管理员,掌握用户的组的创建与管理至关重要. 学习要点: 了解用户和组的群的配置文件. 熟悉掌握Linux下用户的创建和维护管理. 熟悉掌握 ...

  7. Linux服务器CPU、内存、磁盘空间、负载情况查看python脚本

    [本文出自天外归云的博客园] 网上搜,东拼西凑,组装了一个可以查Linux服务器CPU使用率.内存使用率.磁盘空间占用率.负载情况的python脚本. 脚本内容如下: # -*- coding:utf ...

  8. Linux中用户与组相关配置文件(整理)

    用户与组信息存放位置 说明 注释 /etc/passwd 存放用户基本信息 记录了每个用户的一些基本属性,并对所有用户可读,每一行记录对应一个用户,属性之间通过冒号分隔. 每一个行6个冒号,7个属性. ...

  9. linux下用户和组相关的文件及相关管理命令

    1.用户信息文件  /etc/passwd 示例root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2: ...

随机推荐

  1. python lambda表达式简单用法【转】

    python lambda表达式简单用法 1.lambda是什么? 看个例子: g = lambda x:x+1 看一下执行的结果: g(1) >>>2 g(2) >>& ...

  2. Db2 Terminate Vs Connect Reset , Disconnect

    db2 Terminate and db2 connect Reset both break the connection to a database.                Connect ...

  3. intellij idea远程调试

    有时候发布后的包不得不进行debug,但是又不方便本地开发环境直接debug模拟,所以不得不需要远程debug. 启动参数 首先在服务端使用JVM的-Xdebug参数启动Jar包. java -Xde ...

  4. mysql 大小写不敏感

    lower-case-table-names=1 变量lower-case-table-names的取值 取值范围有三个,分别是0.1.2. 1. 设置成0:表名按你写的SQL大小写存储,大写就大写小 ...

  5. java8在Stream的forEach操作时获取index

      import java.util.Objects; import java.util.function.BiConsumer; /** * * @author yangzhilong * @dat ...

  6. eggjs异常捕获机制

    1. try catch捕获异步链中的方法 2. ctx.runInBackground(scope)捕获跳出异步链的方法 // 旧代码 class HomeController extends Co ...

  7. netstat -lunpt未找到命令

    [root@localhost ~]# netstat -lunpt -bash: netstat: 未找到命令 [root@localhost ~]# yum -y install net-tool ...

  8. vc对话框程序运行时隐藏

    1.在资源编辑中设置对话框为不可见 2.在OnPaint中加入下面代码 void CMyDlg::OnPaint() { static b = false; if(!b){ ShowWindow(SW ...

  9. Xshell连接SqlPlus无法使用退格、删除键

    问题:在使用xshell连接CentOS7,进入SQLPLUS进行命令操作时,如果输错了信息,无法进行退格键删除(显示“^H”),同样按删除键,显示“^[[3~”. 解决:网上查找了相关资料,可以通过 ...

  10. Android Studio 开发

    Android studio安装与配置 (收藏) https://www.cnblogs.com/gufengchen/p/10991886.html ------------------------ ...