我的编程空间,编程开发者的网络收藏夹
学习永远不晚

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

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

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

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

在linux中使用向磁盘中存入数据时,如果有多个用户对同个磁盘进行操作,其中一个用户放了很大数据的文件导致硬盘容量用光,那么其他用户将无法再存入数据,这时就需要对每个用户进行存入数据大小的限制,linux中提供了一种磁盘配额的功能来实现。

 

初始化:

添加分区挂载选项:usrquota、grpquota

初始化数据库:quotacheck 命令

使用命令

开启或取消配额:quotaon、quotaoff

直接编译配额:edquota  [username]

 

案例说明:

创建配额数据库

#/home目录会存放不同用户的文件,大小会相互受影响,因此需要将/home目录变成分区,这里准备好一个创建好文件系统的分区。

[root@mzf ~]# blkid /dev/sda5
/dev/sda5: LABEL="myhome" UUID="97f71277-7b31-4bb6-ae0f-949cf8c18e6f" TYPE="ext4"

#对其进行挂载使用

[root@mzf ~]# mkdir /mnt/myhome
[root@mzf ~]# mount  /dev/sda5  /mnt/myhome/
[root@mzf ~]# df | grep 'myhome'
/dev/sda5             2004852    3096   1896584   1% /mnt/myhome

#先将/home下文件的文件进行迁移

[root@mzf ~]# ls /home/
hadoop  mzf  tom  u1  u2
[root@mzf ~]# mv /home/* /mnt/myhome/
[root@mzf ~]# ls /mnt/myhome/
hadoop  lost+found  mzf  tom  u1  u2

#然后将/dev/sda5再次挂载到/home目录下,并添加用户和组的磁盘配额功能

[root@mzf ~]# mount -L myhome -o usrquota,grpquota /home/
[root@mzf ~]# df | grep 'home'
/dev/sda5             2004852    3288   1896392   1% /mnt/myhome
/dev/sda5             2004852    3288   1896392   1% /home

#卸载掉在/mnt/myhome下的挂载点

[root@mzf ~]# umount /mnt/myhome/

#这里我们再次挂载指定的用户磁盘配额和组磁盘配合选项以及添加

[root@mzf ~]# mount | grep 'home'
/dev/sda5 on /home type ext4 (rw,usrquota,grpquota)

#当然也可以写入/etc/fstab文件进行重新挂载。如,加入内容:

[root@mzf home]# cat /etc/fstab | grep '/home'

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

#然后检查分区并创建配额数据库文件

[root@mzf home]# quotacheck -cgu /dev/sda5
quotacheck: Cannot create new quotafile /home/aquota.user.new: Permission denied
quotacheck: Cannot initialize IO on new quotafile: Permission denied
quotacheck: Cannot create new quotafile /home/aquota.group.new: Permission denied
quotacheck: Cannot initialize IO on new quotafile: Permission denied

解析:这里提示没有权限,可能是linux内核中默认开启的selinux安全机制控制导致的,这里我们可以先将其关闭:

#查看当前setlinux是否开启

[root@mzf home]# getenforce
Enforcing#表示已经启用
[root@mzf home]# setenforce 0          #设置参数为0表示禁用
[root@mzf home]# getenforce          #再次查看已经显示为禁用
Permissive

#再次进行磁盘配额数据库文件创建

[root@mzf home]# quotacheck -cug /dev/sda5

#查看指定分区单独挂载点目录下是否生成了磁盘配额数据库文件

[root@mzf home]# ls /home  | grep '^aquota\.\<\(user\|group\)\>' 
aquota.group
aquota.user

说明:如果要开启磁盘配额,内核模块必须检查该挂载点中是否有磁盘配额数据库文件的存在,否则无法开启或设置成功。

 

启用磁盘配额:

#开启指定分区的磁盘配额

[root@mzf home]# quotaon /dev/sda5

#添加默认磁盘配额成员

[root@mzf home]# edquota -p mzf tom hadoop

#设置指定成员配额

[root@mzf home]# edquota hadoop

#进入vim编辑界面

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

解析:其中第一行表示为哪个用户设置磁盘配额,下面分为多列,第一列为指定的文件系统,后面6列每3列为一组,blocks表示已经存放的文件大小,默认为k,indodes表示为已经创建了多少个文件,soft表示为软限制,存放大小超过soft指定将出现警报,hard为硬限制,如果达到此限制,将无法再次写入数据。


#按文件所占大小设置配额,软限制为5M,硬限制为10M

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

#切换到设置配额的成员hadoop用户

[root@mzf home]# su - hadoop

#此目录已经用了64K,这里我们添加 5M数据

[hadoop@mzf ~]$ dd if=/dev/zero of=/home/hadoop/temp.log bs=5M  count=1
sda5: warning, user block quota exceeded.
1+0 records in
1+0 records out
5242880 bytes (5.2 MB) copied, 0.130323 s, 40.2 MB/s

注意:这里soft已经超过,开始了警报,显示用户块数据配额,但是如果使用echo进行一些小规模数据追加,磁盘配额是不会警报的:

#显示出文件多少个字节

[hadoop@mzf ~]$ ls -l /home/hadoop/temp.log 
-rw-rw-r--. 1 hadoop hadoop 5242912 Aug 17 23:51 /home/hadoop/temp.log

#追加字节

[hadoop@mzf ~]$ echo "***************" >> /home/hadoop/temp.log

#再次显示大小已经增加,但是磁盘配额没有警报

[hadoop@mzf ~]$ ls -l /home/hadoop/temp.log 
-rw-rw-r--. 1 hadoop hadoop 5242928 Aug 17 23:51 /home/hadoop/temp.log

解析:如果再用dd命令对temp.log文件写入5M是无法写入的,那么再写一个5M的新文件进行测试:

#再创建一个5M,那么应该已经达到了10M

[hadoop@mzf ~]$ dd if=/dev/zero of=/home/hadoop/temp2.log bs=5M  count=1
sda5: write failed, user block limit reached.
dd: writing `/home/hadoop/temp2.log': Disk quota exceeded
1+0 records in
0+0 records out
5185536 bytes (5.2 MB) copied, 0.00903 s, 574 MB/s

解析:这里已经显示了写入数据错误,数据块配额已经被使用完

#这时写入一个字节内容的文件都写入不了了。

[hadoop@mzf ~]$ echo "1" > file1
-bash: echo: write error: Disk quota exceeded

 

其它磁盘配额管理工具

quota   查看配额信息

[root@mzf home]# quota hadoop
Disk quotas for user hadoop (uid 502): 
    Filesystem  blocks  quota  limit  grace  files  quota  limit  grace
   /dev/sda5   10240*  5120   10240  6days   17   0    0

解析:grace表示为宽限期,及文件大小到到soft指定大小6天后,soft将变成硬限制,将再也无法创建文件和写入数据了。

requota  #查看指定信息

warnquota  #检查警告

 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

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

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux磁盘配额管理图文案例

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。这样可以避免因某个用户的过度使用磁盘空间造成其他用户无法正常工作甚至影响
2022-06-04

Linux下如何管理磁盘配额用户

在Linux下管理磁盘配额用户,可以通过以下步骤来实现:启用磁盘配额:使用 quotaon -a 命令来启用所有分区的磁盘配额。或者,针对特定分区使用 quotaon /dev/sdXY 命令。创建配额文件:使用 quotacheck -
Linux下如何管理磁盘配额用户
2024-09-24

linux中如何给磁盘配额

这篇文章主要为大家展示了“linux中如何给磁盘配额”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“linux中如何给磁盘配额”这篇文章吧。磁盘配额(quota)比较常用的几个情况是:* 针对WW
2023-06-13

Linux中怎么设置磁盘配额

这期内容当中小编将会给大家带来有关Linux中怎么设置磁盘配额,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。先决条件为了最有效地利用本系列中的文章,您应该具有基本的 Linux 知识,并需要准备一个 Li
2023-06-16

linux磁盘配额的示例分析

这篇文章主要介绍linux磁盘配额的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.配额又称为限额,针对的是分区,不是用户也不是文件,更不是整个硬盘; 2.内核版本必须是2.4以上才支持;查看内核是否支持配
2023-06-13

Linux系统如何设置磁盘配额

这篇“Linux系统如何设置磁盘配额”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“Linux系统如何设置磁盘配额”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让
2023-06-28

linux磁盘配额的含义是什么

这篇“linux磁盘配额的含义是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“linux磁盘配额的含义是什么”文章吧。
2023-02-07

linux磁盘配额大小怎么设置

这篇文章主要介绍“linux磁盘配额大小怎么设置”,在日常操作中,相信很多人在linux磁盘配额大小怎么设置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux磁盘配额大小怎么设置”的疑惑有所帮助!接下来
2023-06-10

Linux主机磁盘配额设置方法

在Linux系统中,磁盘配额是一种限制用户或组在文件系统上使用的磁盘空间和文件数量的方法。以下是设置Linux主机磁盘配额的详细步骤:准备工作确保你的文件系统支持磁盘配额。大多数现代文件系统(如ext4、XFS)都支持磁盘配额。启用磁
Linux主机磁盘配额设置方法
2024-09-27

Linux磁盘管理之LVM详解及lvm磁盘操作命令

目录一、LVM的基本组成1、物理卷 (PV,Physical Volume)2、卷组 (VG,Volume Group)3、逻辑卷 (LV,Logical Volume)4、物理块 (PE,Physical Extends)二、LVM的优缺
2023-03-20

Linux磁盘管理之LVM磁盘操作命令怎么使用

这篇文章主要讲解了“Linux磁盘管理之LVM磁盘操作命令怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux磁盘管理之LVM磁盘操作命令怎么使用”吧!LVM,Logical V
2023-07-05

Linux命令从入门到实战 ---- 磁盘管理类

du 查看文件和目录占用的磁盘空间 du disk usage 磁盘占用情况 基本语法 du [选项] 目录/文件 显示目录下每个子目录的磁盘使用情况 选项功能-h将文件大小转换成人类便于阅读的形式-a查看子目录和文件-c显示所有的文件和子
2023-08-19

Linux磁盘管理之LVM的使用

一、LVM介绍 在我们管理linux磁盘的时候,通常会遇到这么一种情况。在最初规划Linux的磁盘的时候,我们给某个分区划分了一定量的磁盘空间,使用一段时间后,发现我们规划的磁盘空间不足了,这个时候怎么办?我们肯定要想办法给扩容呀,找一块磁
2022-06-04

如何解决Linux磁盘配额配置问题

这篇文章主要介绍了如何解决Linux磁盘配额配置问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.查看quota软件包是否安装#rpm -q quota2.修改配置文件“
2023-06-17

Linux磁盘如何管理

这篇“Linux磁盘如何管理”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Linux磁盘如何管理”文章吧。Linux磁盘管理
2023-06-30

Redhat Linux系统下磁盘配额的设置方法

本篇内容主要讲解“Redhat Linux系统下磁盘配额的设置方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Redhat Linux系统下磁盘配额的设置方法”吧!配额可以使各个用户和组无法占
2023-06-10

编程热搜

目录