磁盘管理之磁盘配额

不管磁盘空间有多么大,磁盘空间不够使用似乎是一个永远的事实。加之Linux系统在默认情况下,并不限制每个用户使用磁盘空间的大小,如果某个用户疏忽或恶意将磁盘占满,将导致系统无法进行写操作甚至崩溃。当然你可能会想到:在每创建一个用户的时候,可以将它的主目录建在一个单独的逻辑分区上(需要指出:像/tmp这样的目录不支持磁盘配额),不过这样太麻烦。如何使多个用户公平的使用磁盘,就是磁盘配额要解决的问题。



    磁盘配额的简单实现步骤

1、创建文件系统

2、移动原有数据

3、挂载目录

4、移回原有数据

*    关闭selinux(Centos7以下版本可能)

5、创建磁盘配额数据库

6、开启配额功能

6、指定用户配额

7、测试

8、关闭磁盘配额

# 创建文件系统
[[email protected]~]#mkfs.ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
...    # 
# 如果原来目录下有数据,要先移动数据,否则原数据会隐藏
[[email protected]/home]#mkdir /tmp/home   
[[email protected]/home]#mv /home/* /tmp/home/
# 挂载文件系统
[[email protected]~]#vim /etc/fstab 
...
/dev/sdb1   /home   ext4  usrquota,grpquota  0   0 
... 
[[email protected]~]#mount -a
# 将数据移回原目录
[[email protected]/home]#mv /tmp/home/* ./
# 关闭selinux
[[email protected]/tmp]#getenforce    # 查看selinux状态
Enforcing
[[email protected]/tmp]#setenforce 0    # 关闭selinux
[[email protected]/tmp]#getenforce 
Permissive 
# 创建磁盘配额数据库
[[email protected]~]#quotacheck -cug /home/
# 查看并打开磁盘配额功能
[[email protected]~]#quotaon -p /home/
group quota on /home (/dev/sdb1) is off
user quota on /home (/dev/sdb1) is off    # 关闭
[[email protected]~]#quotaon /home/    # 打开配额功能
[[email protected]~]#quotaon -p /home/
group quota on /home (/dev/sdb1) is on
user quota on /home (/dev/sdb1) is on    # 开启
# 为用户创建配额
[[email protected]/home]#edquota user
  ***原始数据
Disk quotas for user user (uid 1000):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sdb1                      9496          0          0        133        0        0
  ***修改后数据
Disk quotas for user user (uid 1000):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/sdb1                      9496      30000      40000        133      180       200
                                                               # 此处inode要大于原来inode
# 查看配额状况
[[email protected]/home]#quota user    # 也可以是repquota /home(会显示全部用户配额)命令
Disk quotas for user user (uid 1000): 
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
      /dev/sdb1    9496   30000   40000             133*    180     200   7days
# 切换至user用户测试
[[email protected]/home]#su - user    # 注意:完全切换
Last login: Wed Aug 31 20:14:37 CST 2016 on pts/0
[[email protected] ~]$ dd if=/dev/zero of=f1 bs=1M count=10
10+0 records in
10+0 records out
10485760 bytes (10 MB) copied, 0.03785 s, 277 MB/s    # 未到配额上限
# 查看已用空间
[[email protected] ~]$ du -sh
20M	.
# 继续增加占用空间30M
[[email protected] ~]$ dd if=/dev/zero of=f2 bs=1M count=30
sdb1: warning, user block quota exceeded.    # 已报错,超过上限40M
sdb1: write failed, user block limit reached.
dd: error writing ‘f2’: Disk quota exceeded
20+0 records in
19+0 records out
20750336 bytes (21 MB) copied, 0.105223 s, 197 MB/s
# 关闭磁盘配额
  ***修改/etc/fstab
  [[email protected]/home]#vim /etc/fstab 
  /dev/sdb1   /home   ext4  defaults  0   0
  ***卸载/home
  [[email protected]~]#umount /home
  ***再挂载
  [[email protected]~]#mount -a
  [[email protected]~]#quota user    # 配额消失
  [[email protected]~]#

需要注意的是:

quota是软限制,在触发软限制之时,gracetime会倒计时,在这个时间(默认是7天)没有耗尽之前,若用户还不清理磁盘使之符合软限制的要求,则软限制就会变成硬限制。edquota -t可修改这个时间。

[[email protected]/home]#quota user    # 也可以是repquota /home(会显示全部用户配额)命令
Disk quotas for user user (uid 1000): 
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
      /dev/sdb1    9496   30000   40000             133*    180     200   7days
时间: 2024-08-05 13:17:51

磁盘管理之磁盘配额的相关文章

20、磁盘管理—linux磁盘管理详解(分区)

linux磁盘管理 添加磁盘步骤: fdisk 管理磁盘分区 格式化文件系统. 设备挂载 开机自动挂载 UUID挂载 取消挂载点 Parted(gpt大于2G分区) 查看文件系统的使用情况. df 查看挂载信息与磁盘使用量 du 查看使用量 查看分区状况lsblk 查看设备信息blkid linux磁盘管理 当全新安装了一块新的硬盘设备后,为了更充分.安全的利用硬盘空间首先要进行磁盘的分区,然后格式化,最后挂载使用. 添加磁盘步骤: 添加设备->分区->格式化(创建文件系统)-> [起名

磁盘管理之磁盘组成

## 磁盘管理之磁盘组成#### 磁盘接口类型    磁盘接口类型主要分为:SAS.SATA.PCI-E.SCSI#### 机械硬盘与固态硬盘的区别![](0960a11d-0d9e-45fe-b788-f2f0475bebd4_files/6d1b73fb-536f-4cb0-9182-cafacf1fed15.png)#### 磁盘的选购    1.  线上的业务,用SAS磁盘    2.  线下的业务,用SATA磁盘,磁带库    3.  线上高并发,小容量的业务SSD磁盘    4.  

磁盘管理之磁盘分区

磁盘管理之磁盘分区 磁盘分区表 磁盘分区表位置:0磁头0磁道1扇区(前446字节表示mbr主引导记录,中单64字节表示分区表,最后2字节55AA标识表示结束标记) 主分区(primary):一般一定要有,用来存放数据(最多四个主分区) 扩展分区(extend):只能有一个扩展分区,无法直接使用 逻辑分区(logical):在扩展分区下新建,用来存放数据 磁盘分区的设备名 磁盘: SAS/SATA/SCSI表示/dev/sd(a-z)如第一块硬盘表示/dev/sda,第三块/dev/sdc 分区:

Linux入门之磁盘管理(6)磁盘配额

在linux中使用向磁盘中存入数据时,如果有多个用户对同个磁盘进行操作,其中一个用户放了很大数据的文件导致硬盘容量用光,那么其他用户将无法再存入数据,这时就需要对每个用户进行存入数据大小的限制,linux中提供了一种磁盘配额的功能来实现. 初始化: 添加分区挂载选项:usrquota.grpquota 初始化数据库:quotacheck 命令 使用命令 开启或取消配额:quotaon.quotaoff 直接编译配额:edquota  [username] 案例说明: 创建配额数据库 #/home

Linux磁盘管理-quota磁盘配额

一.应用场景quota磁盘配额常用于:邮件服务中为邮件用户设置:ftp.samba文件服务中为用户设置.想要知道系统会否支持quota磁盘配额,可执行以下命令(现在的Linux系统都支持)二.操作1.准备工作(分区.格式化.挂载)2.配置quota重新书写挂载参数,加上usrquota和grpquota.否则文件系统不支持quota安装quota,并运行quotacheck.quotaon:创建需要做配额的用户.组编辑配额文件(对用户使用-u选项)注释:quota文件对应参数 blocks :现

linux磁盘管理之LVM逻辑卷认识与管理详解(实验详细,可跟做)

Linux磁盘管理之LVM逻辑卷认识与管理详解 前言 本文接着上篇文章作如下延伸:链接:Linux磁盘管理之磁盘管理与文件系统 什么是LVM?为什么需要LVM? 如何具体进行LVM逻辑卷管理? 什么是磁盘配额?为什么需要磁盘配额? 在Linux中进行磁盘配额的条件是什么呢? 如何具体进行磁盘配额? 下面对以上问题逐一讲解,深入实例进行操作,带你深入理解linux磁盘管理之LVM逻辑卷管理. 一.LVM概述 1.什么是LVM?为什么需要LVM? ? 许多 Linux 使用者安装操作系统时都会遇到这

Linux命令工具基础04 磁盘管理

Linux命令工具基础04 磁盘管理 日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩: 查看磁盘空间 查看磁盘空间利用大小 df -h -h: human缩写,以人类易读方式显示结果(既带单位:比如M/G,如果不加这个参数,显示的数字以B为单位) $df -h /opt/app/todeav/config#df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-

linux之磁盘管理,网络,计时任务

磁盘管理 查看磁盘空间的占用 df # 磁盘占有率 -h # 以人类易读的方式展示 Linux下磁盘命名格式:/dev/sda 查看目录的占用空间 /dev/sd[a-z]num总大小 linux下磁盘的命名格式如下图 size used avail user% mounted on 总大小 占用 剩余 占用率 挂载点,挂载到哪个目录上 查看目录的占用空间 du 命令 du / # 查看根目录 du -sh . # 当前 du -sh . # 人类易读方式 du -s /* # 查看根目录下每一

LVM逻辑卷轴管理和磁盘配额实验

动态卷轴管理和磁盘配额实验首先先在虚拟机中开启两个硬盘,我在rh6-2中新添加了两个硬盘,分别为sdbc和sdbd: 按照如上方法,再添加1个硬盘.则添加的磁盘如下所示: 第一步:分区接下来对sdc分区(sdc只分配了一个主分区): 接下来对sdd进行分区(sdd只有一个主分区): 第二步:使用LVM管理命令首先创建物理卷(PV): 其次创建卷组(VG): 最后创建逻辑卷(LV): 第三步:格式化 第四步:挂载 第五步:自动挂载进入到自动挂载文件:添加一行: 磁盘配额查看quota软件包有没有安