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 22:37
下一篇 2016-12-02 23:09

相关推荐

  • keepalive实验

    实验环境centos 7 server x2 做keepalived主备 地址分别是192.168.0.200 192.168.0.201 Centos 7 server x2 做real server 采用DR模型   yum -y install ntp#安装ntp client ntpdate 47.95.253.33#时间同步到自己的ntp…

    2017-12-11
  • 13 文件查找与压缩

    locate find 压缩命令 file-roller、compress/uncompress(.Z)、gzip/gunzip(.gz)、bzip2/bunzip2(.bz2)、xz/unxz(.xz) zip/unzip、tar locate 数据源 1)查询系统上预建的文件索引数据库      2)依赖于事先构建…

    Linux干货 2016-08-18
  • DNS服务器之配置

    一、安装DNS服务器     DNS服务的安装包为bind,使用yum直接安装即可:     安装完成后,查看DNS服务相关的文件: 二、配置正向区域     1、在配置正向区域之前,先来看下主配置文件中的内容:    &nbsp…

    Linux干货 2015-05-03
  • N25-第三周作业

    N25第三周作业 博客作业 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@ip-172-31-25-9 ~]# who|awk '{print $1}'|sort -u ec2-user [root@ip-172-31-25-9&n…

    Linux干货 2017-02-06
  • 马哥教育网络班22期第5周课程作业

    1、显示当前系统上root、fedora或user1用户的默认shell; cat /etc/passwd | grep ^root | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello(); …

    Linux干货 2016-12-05
  • bash编程初体验(三)

    bash编程初体验之for for while until 概述 本文将介绍以for为代表的循环语句在shell 脚本中的应用,常见的循环语句有for, while,until,作为循环语句,顾名思义,它就是重复地做一件事,直到满足某一条件而退出;另外,还有两个循环控制语句continue与break来配合循环语句,以实现临时中断或跳出循环的功能;以下为fo…

    Linux干货 2016-08-24