15-2用户系统资源配额

用户资源系统配额

在系统中,允许系统用户使用存储空间,但是不能限制的让用户随意使用存储空间,对用户存储空间的设定就是用户资源系统配额。

下面以/home 为例,通常如果系统中有一定的用户,会把用户的家目录作为一个单独的分区,从而实现更好的管理。下面具体讲解如何把用户家目录从根系统分区分离出来进行磁盘配额。

1、拿出一个未使用的分区,把用户家目录的数据拷贝到新的分区

fdisk /dev/sdb –> n(新建分区)–> p(主分区)–> +10G–> w (保存)

mkfs.ext4  -L  home_dir  /dev/sdb1   格式化新建的分区,卷标名称:home_dir

(如果新建分区没有跟新到内存,partx -a /dev/sdb –>centos6  partprobe –>centos7|5)

mkdir /mnt/home

mount /mnt/home  /dev/sdb1  将分区临时挂载到一个目录,备份home目录中数据

cp -a /home/*  /mnt/home

这样就将home家目录中的历史数据备份到新的分区里面了,但要想将之后的数据也自动存储到新建分区的中必须重新挂载,如果直接将新的分区挂载到/home 目录下,存在以下问题。第一、挂载过程中存在用户正在使用家目录的情况,挂载到/home后原来/家目录中的数据时没有用的,而且会自动隐藏掉。所以,安全起见,必须实现通知所有用户,即将要迁移家目录,选一个时间停掉服务,在init 1 模式下实现重新挂载

2、init 1 单用户模式下

rm -rf /home/*

vim /etc/fstab –> /dev/sdb1  /home ext4 defaults.usrquota,grpquota 0 0

mount -a  将分区重新挂载到家目录下

3、init 3 重新回到正常模式

cd /home  –> quotacheck -cug  /home  –>可以看到 aquota.group  aquota.user两个数据库

quotaon -p /home   quotaon /home  查看和打开系统配额功能

(如果系统配额没有打开,有可能是selinux功能没有关闭 )

getenforce 查看selinux   setenforce=0 关闭selinux功能

repquota -a  可以查看所有用户的磁盘配额情况,显示如下

                        Block limits                File limits

User            used    soft    hard  grace    used  soft  hard  grace

———————————————————————-

root      —       4       0       0              1     0     0       

huyu      —      56   10240   40960             19     0     0       

superman  —      48       0       0             12     0     0       

supergirl —      48       0       0             12     0     0

user/group :用户或者组名

userd:用户或者组 已经使用的存储空间,以byte为单位

soft:存储空间使用过多警告提示

hard:空间使用极限,提示如下

sdb1: warning, user block quota exceeded.

sdb1: write failed, user block limit reached.

grace: 宽限期。在这个有效时间内,存储空间数据可以使用修改

后面的分别表示 inode节点的限制,内容和空间相同,只是数值表示限制节点个数

repquota  -u /dir|/dev/sdb1   repquota -g /dir|/dev/sdb1 这两个可以看分区用户和组的配额

修改用户/组 de 存储空间配额

edquota -u/g  huyu  –> 进入修改

edquota  -p huyu  user2   配额复制,user2配额 如同 huyu

setquota username soft hard soft hard  直接命令配置,没有限制,则用0 代替

4、去掉磁盘配额

1、 quotaoff  /dir|/dev/sdb1

2、 rm -rf  aquota.user|group

3、 vim /etc/fstab

—-joker的部落阁

原创文章,作者:joker,如若转载,请注明出处:http://www.178linux.com/62094

(0)
jokerjoker
上一篇 2016-12-02
下一篇 2016-12-02

相关推荐

  • 马哥教育网络班21期+第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash     #     nolog=`awk -F: '$…

    Linux干货 2016-09-19
  • 浅谈筛选日志中的IP地址信息

    作为运维人员,经常会需要会对日志中的某些重要信息进行筛选,比如说ip等参数。 案例一:筛选出IP地址信息 日志信息如下: [root@C67-X64-A1 hanghang]# cat test.txt  Jul 13 08:13:09 localhost sshd[14678]…

    系统运维 2016-07-22
  • Linux的文本处理工具之sed的使用

    Sed文本处理工具 一、认识sed工具: sed是一种流编辑器,一次处理一行内容。当进行处理时,把当前处理的行存储在临时的缓冲区中(俗称“模式空间”)后,再用sed命令去处理缓冲区的内容,最后把处理过的缓冲区内容送往屏幕打印显示。接着处理下一行,不断重复进行读取、处理、输出,直到文件末尾。  注:sed命令处理文本,文件内容本身并没有改变,除非你使…

    Linux干货 2016-08-10
  • 作业权限管理

    一、在/data/testdir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。 首先创建三个组g1,g2,g3,题目要求在/data/testdir目录里创建的文件自动属于g1组那么首先要将这个目录的属组改为g1,然后通过更改…

    Linux干货 2016-08-03
  • 位置变量&特殊变量总结

    位置变量 常用的位置变量有 $1, $2, $3 ……,表示命令行传给脚本的第一个参数,第二个参数,第三个参数。。。 $0 表示脚本的文件名,比如a.sh 位置变量在脚本中的主要作用,是让脚本通过他们来获取命令行传递给脚本的参数。 变量位置调整 shift [n] 用于调整变量位置 第n+1个位置变量会被重新命名为$1…

    Linux干货 2016-08-15
  • N25 – Week6 作业

    春节过去了,我们又开学了,又可以写博客,做作业了,好开心. 下面是第6周的博客作业: 请详细总结vim编辑器的使用并完成以下练习题: 1. 复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc/sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@dhcp-10-129-6-166 ~]# …

    Linux干货 2017-02-13