linux如何改磁盘文件系统名,如何在Ubuntu上设置文件系统(磁盘)配额

69dd6abee9c3f65024b5ebe544eae2ae.png

文件系统配额是Linux内核中的标准内置函数. 配额确定文件支持用户活动必须具有的空间量. 磁盘配额还限制了用户可以在系统上创建的文件数量.

支持配额系统的文件系统包括xfs,ext2,ext4和ext3. 配额的分配特定于文件系统和每个用户. 本文包含在多用户Ubuntu 18.04环境中使用配额文件系统所需的全部知识.

这里的假设是您正在使用的Ubuntu 18.04系统的用户(操作)具有sudo权限. 只要您使用正确的实现技术,此处共享的思想就可以在任何Linux发行版中使用.

为了使配额准备就绪并可用,请使用apt命令安装quota命令行工具,但在此之前,您需要更新系统软件包.

$ sudo apt update

现在,使用以下命令在Ubuntu上安装配额软件包.

$ sudo apt install quota

ef7dd397bab7451e7ef9736afd87b7cc.png

在Ubuntu中安装配额

按Y,然后按Enter开始安装过程.

通过运行以下命令来确认安装的版本. 您的版本号可能与下面看到的不同.

$ quota--version

Check-Quota-Version-in-Ubuntu.png

在Ubuntu中检查配额版本

运行基于云的虚拟系统的默认Ubuntu安装可能缺少支持配额使用的内核模块. 您必须确认使用搜索工具,并确保两个模块quota_v1和quota _v2位于/ lib / modules目录中.

$ find/lib/modules/`uname -r`-type f-name'*quota_v*.ko*'

这应该是以上命令的结果.

2cc22b797e2d6fd20c5e55a3ee3565dd.png

d0039b7ee628aef8d11b5a636c561a1f.png

检查配额内核模块

只要有两个模块,就不必担心内核版本. 如果找不到,请使用以下命令安装配额内核模块,如图所示.

$ sudo apt install linux-image-extra-virtual

Install-Quota-Kernel-Modules.png

安装配额内核模块

您将获得实现配额所需的正确模块.

为了使配额在特定系统上处于活动状态,必须将其与相关的配额选项一起安装. 您可以通过更新/ etc / fstab文件中的文件系统条目来完成此操作.

$ sudo nano/etc/fstab

您应该准备适当地编辑文件. fstab文件和桌面文件之间的区别在于ubuntu 磁盘配额,根文件系统以不同的方式表示整个磁盘空间. 用以下行替换指向根系统(/)的行.

LABEL=cloudimg-rootfs/ext4 usrquota,grpquota00

这些行将更改为允许访问userquota和grpquota. 您可以保留不属于最终配置的内容. 如果fstab具有某些选项,请在该行的末尾添加新选项. 追加时,请用逗号分隔新项目,但它们之间没有空格.

重新安装文件系统以使更改生效.

$ sudo mount-o remount/

注意: 请确保/ etc / fstab中的选项之间没有空格,以避免此类错误.

mount:/etc/fstab:parse error

在/ proc / mounts文件中挂载文件系统时,使用grep验证新选项的使用. 此命令显示文件中的根文件系统条目.

$ sudo cat/proc/mounts|grep' / '

97d32a28ba2d3454ceea5d2833afc620.png

3824dc760c212ca95f47ef02f57ff3e0.png

检查Fstab中的根文件系统条目

从输出中,您可以看到我们设置的两个选项. 现在是时候打开配额系统了.

首先,您必须运行quotacheck命令.

$ sudo quotacheck-ugm/

此命令将创建两个文件,配额用户和配额组,它们具有有关文件系统的限制和用法的信息. 这些文件必须存在,然后才能开始使用配额.

这是参数的定义:

当不需要基于用户或组启用配额使用情况时,无需运行quotacheckcheck选项. 通过使用ls命令列出根目录来确认这一点.

$ ls/

aquota.groupbin dev home initrd.img.old lib64 media opt root sbin srv tmpvarvmlinuz.oldaquota.userboot etc initrd.img lib lost+found mnt proc run snap sys usr vmlinuz

如果quotacheck命令中未包含u和g参数,则相应的文件将丢失.

现在,我们准备使用以下命令在根(/)文件系统上打开配额.

$ sudo quotaon-v/

我们可以使用edquota和setquota命令为用户或组设置它们.

edquota命令可以编辑配额,例如,我们可以使用以下命令来编辑属于howtoing用户的配额:

$ sudo edquota-u howtoing

使用-u选项指定配额属于用户. 如果需要编辑属于组的配额,请使用-g选项. 此命令将使用您选择的文本编辑器打开一个文件.

Check-User-Quota-on-Disk.png

检查磁盘上的用户配额

e5688ddc6ba1d8cd34427cbc6325631a.png

输出列出用户名,uid,具有活动配额的文件系统以及块和索引节点的用法. 基于配额的inode限制了用户可以创建的文件和目录的数量,无论它们在磁盘上使用的大小如何. 大多数管理员更喜欢控制基于块的磁盘空间配额.

注意: 块的使用不会显示它们根据不同因素的变化(例如,命令行工具将其报告). 在Ubuntu的上下文配额内,我们可以假定一个块等于一千字节的磁盘空间.

使用上述命令行,用户将使用2032个块,这与/ dev / sda1上的2032KB空间相同. 值为0将禁用软限制和硬限制.

每个配额设置可以设置软限制和硬限制. 超出软限制的用户可能会超出其配额,但是这并不禁止使用更多的空间或索引节点. 在这种情况下,用户有7天的时间可以赎回其有限的软件限制空间ubuntu 磁盘配额,否则,将很难保存或创建文件.

硬限制意味着一旦达到限制,新块或索引节点的创建就会停止. 在执行常规任务时,用户将报告看到警告或错误.

我们可以更新howtoing的阻止配额,以使软限制为100MB,硬限制为110MB.

4f4efc1b189bad07b01258ecf254faf4.png

设置用户配额限制

编辑后,关闭文件并使用quota命令检查新的用户配额限制设置.

$ sudo quota-vs howtoing

Check-User-Quota-Limit.png

检查用户配额限制

注意: 在不执行sudo命令的情况下,您的用户将有机会分析其配额,并且必须在创建阶段的第四步中向他们授予读取配额文件的访问权限. 一种简单的方法是创建用户组并授予对该组的访问权限,以便您可以向其中添加用户.

Setquota可以使用单个命令更新配额信息,而无需任何交互式设置. 该命令需要一个用户名,并设置块和索引节点将使用的软限制和硬限制. 您还需要声明配额将使用的文件系统.

$ sudo setquota-u howtoing200M220M00/

此命令将基于块的配额限制分别增加了一倍,分别为200兆字节和220兆字节. 2 0 0表示没有同时设置硬限制和软限制,即使不需要基于inode设置配额,这也是一个要求.

与往常一样,使用quota命令验证您的进度.

$ sudo quota-vs howtoing

d3660baa1c8a65a62e1fc01910a0ca7c.png

f9f3a07b07b40461fedcd88c4ab362ef.png

验证用户配额限制

在生成配额报告时,它必须指示所有用户的使用情况. 使用命令repquota.

$ sudo repquota-s/

Generate-Quota-Reports.png

生成配额报告

上面的输出是有关/根文件系统的报告. -s指示repquota以人类可读的格式给出结果.

默认阻止宽限时间为7天. 宽限度列会在拒绝用户访问资源磁盘的天数内警告用户.

宽限期是指用户获得超出默认时间的工作许可的时间.

$ sudo setquota-t864000864000/

该命令指示块和索引节点的宽限期是864000秒,相当于10天. 此设置将影响所有用户,因此,即使您不使用块和索引节点,也需要设置该值. 时间值必须以秒为单位.

确认更改,然后使用以下命令查看更改是否生效:

$ sudo repquota-s/

quotaon:cannot find//aquota.group on /dev/vda1 [/]quotaon:cannot find//aquota.user on /dev/vda1 [/]

如果尝试使用qoutaon命令打开配额,然后尝试使用quotacheck命令检查配额的状态,则上述错误非常常见.

quotaon:using//aquota.group on /dev/vda1 [/]: No such processquotaon:Quotaformatnotsupportedinkernel.quotaon:using//aquota.user on /dev/vda1 [/]: No such processquotaon:Quotaformatnotsupportedinkernel.

此错误告诉管理员不支持内核,或者您在计算机上的版本可能不正确(我们有quota_v1和quota_v2). 对于Ubuntu,此类错误在基于云的虚拟服务器上很常见.

使用apt命令安装Linux-image-extra-virtual软件包来修复错误.

quota:Cannotopen quotafile//aquota.user: Permission deniedquota:Cannotopen quotafile//aquota.user: Permission deniedquota:Cannotopen quotafile//quota.user: No such file or directory

当当前用户无权读取配额文件时,此错误将很明显. 作为管理员,您仅需要进行正确的权限更改或在需要访问配额系统中的文件时使用sudo.

在本文顶部,我们从配额命令行工具和内核版本验证入手,并进一步说明了如何为单个用户设置基于块的配额以及如何生成有关文件系统配额的报告. 用法.

本文还介绍了常见错误以及如何使用其他程序包或在系统上验证内核版本以避免这些错误.

本文来自电脑杂谈,转载请注明本文网址:

http://www.pc-fly.com/a/jisuanjixue/article-178352-1.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值