磁盘配额-quota

磁盘配额从字面意思上看就是给一个磁盘配置多少额度,而quota就是有多少限额的意思,所以总的来说就是限制用户对磁盘空间的使用量。
因为Linux是多用户多任务的操作系统,许多人公用磁盘空间,举个例子像/home目录是存放普通用户家目录的地方,我们假如home目录一共有10G空间,而home下一共有三个用户,那么正常划分的话每个人应该是分得大概333M空间,但是其中有个用户在家目录下存放了很多音频文件占了8G的空间,这样的话对其他用户就显得不公平,而如果想要磁盘容量公平的分配,这个时候就要靠quota来实现了。

quota只对普通用户有效,对root级别用户无效!

检查机器有无安装quota文件,若无安装,使用yum -y install quota指令安装即可:

安装完成后,我们即可使用quota指令:

确认机器已经安装quota后,我们检查需要进行磁盘配额的文件系统是否支持quota,检查方式如下:

如上,我们看见在fstab文件中的options列上,sdb1拥有了两个参数:usrquota和grpquota,很明显,这两个参数正是文件系统支持quota的证明:

  • usrquota:支持针对用户进行的磁盘配额,后期会在挂载点内产生aquota.user配额文件
  • grpquota:支持针对用户组进行的磁盘配额,后期会在挂载点内产生aquota.group配额文件

拥有以上任意一个参数,即代表该文件系统支持quota磁盘配额,我们只需检查磁盘有无支持quota,不支持将其添加quota标识,将其重新挂载。检查完毕后,我们使用quotacheck指令来扫描磁盘,以获得aquota.user配额文件和aquota.group配额文件。

quotacheck

扫描某个磁盘的配额空间,以分区为单位进行扫描。由于磁盘在扫描的过程中持续运行,可能在扫描过程中文件会增加(或减少),造成磁盘配额扫描的错误,所以当使用quotacheck指令时,磁盘将自动被设置成只读扇区,扫描完毕后,扫描所得的磁盘空间结果会被写入aquota.user配额文件和aquota.group配额文件当中

关于quotacheck的常见参数:

  • -a: 扫描在/etc/fstab文件里,有加入quota设置的分区。
  • -d :详细显示指令执行过程,便于排错或了解程序执行的情形。
  • -g :扫描磁盘空间时,计算每个群组识别码所占用的目录和文件数目
  • -R :排除根目录所在的分区。
  • -u :扫描磁盘空间时,计算每个用户识别码所占用的目录和文件数目.
  • -v :显示指令执行过程。 在使用quotacheck时,如果只使用quotacheck -a,那么可能会导致磁盘在扫描时,只会留下aquota.user的文件,在此,我们推荐quotacheck指令使用固定的参数集合形式:quotacheck -avgu或者使用quotacheck -guv [目标文件系统],先前一个是扫描整个fstab文件中支持quota的文件系统,而后者则是指定扫描目标文件系统,无论使用哪一种,在成功后都会产生aquota.user配额文件和aquota.group配额文件

使用quotacheck指令检查完磁盘配额信息,并创建好对应配额文件后,我们需要使用edquota来对指定目标进行具体的磁盘配额操作:

此处的用户和用户组都是提前准备的!

edquota

Linux edquota命令用于编辑用户或群组的磁盘配额

edquota预设会使用vi来编辑使用者或群组的磁盘配额设置

关于edquota的常见参数:

  • -u :设置用户的磁盘配额,这是预设的参数。
  • -g :设置群组的磁盘配额。
  • -p:<源用户名称> 将源用户的磁盘配额设置套用至其他用户或群组。
  • -t: 设置宽限期限。
  • 关于edquota对于目标作用后的显示(目标为用户):
  • 关于edquota对于目标作用后的显示(目标为用户组):

关于edquota中的参数解析:

当edquota作用于用户/用户组时,其参数是一致的,其意义也是一致的,只是作用于用户或是用户组的区别,其各项参数的意义大致如下:

  1. Filesystem:显示出可作用的文件系统(支持quota的文件系统)
  2. blocks:显示该用户/用户组在该文件系统下已经占用的磁盘资源(单位默认为Kb)此处并非是给用户更改的参数!!
  3. soft(1):此处为对应blocks的软限制,即可以超过,但是会被警告的限制级别
  4. hard(1):此处为对应blocks的硬限制,即不可超过的限制级别
  5. inodes:显示该用用户/用户组在该文件系统下已经拥有/创建的文件、文件夹数量 此处并非是给用户更改的参数!!
  6. soft(2):此处为对应inodes的然限制,即可以超过,但是会被警告的限制级别
  7. hard(2):此处为对应inodes的硬限制,即不可超过的限制级别
  • 关于edquota -t的显示:

结束了对目标用户/用户组的配额限制之后,我们可以启用quota了,使用**quotaon**指令,我们即可启用quota系统

quotaon

Linux quotaon命令用于开启磁盘空间限制。执行quotaon指令可开启用户/用户组的磁盘配额限制,各分区的文件系统根目录必须有quota.user和quota.group配置文件。

关于quotaon的常见参数:

  • a 开启在/ect/fstab文件里,有加入quota设置的分区的空间限制。
  • g 开启群组的磁盘空间限制。
  • u 开启用户的磁盘空间限制。
  • v 显示指令指令执行过程。 一般来说,我们会将以上参数全部使用,这并不会出现问题,倒不如说,参数不完整,更容易出现问题:quotaon -avgu

以上操作全部完成后,我们的磁盘配额操作即完成,我们可以使用quota指令来查看用户或者用户组的磁盘配额占用情况:

quota

Linux quota命令用于显示磁盘已使用的空间与限制。 执行quota指令,可查询磁盘空间的限制,并得知已使用多少空间。

关于quota指令的常见参数:

  • g 列出群组的磁盘空间限制。
  • q 简明列表,只列出超过限制的部分。
  • u 列出用户的磁盘空间限制。
  • s 可以选择用inode或者磁盘容量的限制值来显示(例如显示单位K)。
  • v 显示该用户或群组,在所有挂入系统的存储设备的空间限制。
  • V 显示版本信息。 对于用户,我们一般以如下方式使用,使用结果如下:
quota -suv [目标用户]:

对于用户组,我们一般以如下方式使用,使用结果如下:

quota -sgv [目标用户组]:

若直接使用quota -sgv/-suv,不带有**目标用户组或者目标用户**的话,其指令默认显示当前用户的quota值:

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇