xfs文件系统限额

基本概念
  • 文件系统
    文件系统主要用于控制所有程序在不使用数据时如何存储数据、如何访问数据以及有什么其它信息(元数据)和数据本身相关。

  • XFS文件系统
    XFS是SGI开发的高级日志文件系统,XFS极具伸缩性,非常健壮。XFS的日志被保存在磁盘块的循环缓冲区上,不会被正常的文件系统操作影响。日志大小的上限是64k个块和128MB中的较大值,下限取决于已存在的文件系统和目录的块的大小。

  • 磁盘限额
    在一个很多用户的系统上,必须限制每个用户的磁盘使用空间,以免个别用户占用过多的磁盘空间影响系统运行和其他用户的正常使用。限制用户的磁盘空间就是给用户分配磁盘限额,用户只能使用额定的磁盘使用空间,超过之后就不能再存储文件。
    磁盘限额是系统管理员用来监控和限制用户或组对磁盘的使用工具。
    磁盘限额可以从两方面限制:
    其一,限制用户或组可以拥有的inode数(文件数);
    其二,限制分配给用户或组的磁盘块数(以千字节为单位的磁盘空间)。

xfs系统磁盘限额

采用的方式是按用户限额

1、建立一个 10G大的名为 disk-image 的文件
sudo dd if=/dev/zero of=/tmp/disk-image bs=10G count=1

2、查看
sudo ls -l /tmp/disk-image

3、创建文件系统
sudo mkfs.xfs -q /tmp/disk-image

4、创建目录被用于挂载我们的文件系统
sudo mkdir /tmp/virtual

5、挂载
sudo mount -o /tmp/disk-image /tmp/virtual

6、查看
sudo df -h /tmp/virtual

7、编辑/etc/fstab文件,
sudo vi /etc/fstab
添加xfs的配置:/dev/loop1 /tmp/virtual xfs defaults,uquota,gquota 0 0

8、卸载
sudo umount /tmp/virtual

9、重新挂载
sudo mount -o uquota,gquota /tmp/disk-image /tmp/virtual

10、配置限额
sudo xfs_quota -x -c ‘limit -u bsoft=50M bhard=60M isoft=1500 ihard=2000 app’ /tmp/virtual

11、查看限额
xfs_quota -c ‘quota -uv app’ /tmp/virtual

遇到过的问题:

1、创建xfs文件系统失败,
原因:当时建立 disk-image 的文件过小只有10M
解决办法:扩大挂载文件大小

2、编辑/etc/fstab文件失败,且里面没有有关xfs系统的任何记录
原因:/etc/fstab文件是要root权限才能编辑,当时直接用vim打开,发现保存不了,且机器第一次使用xfs系统,没有任何关于xfs系统的记录

解决办法:用sudo命令,手动添加xfs系统的配置

参考资料

配置限额时的参考资料:
http://www.pianshen.com/article/7496188131/
http://wushank.blog.51cto.com/3489095/1212647
https://blog.youkuaiyun.com/qq_38228830/article/details/81608088

这里想显式感谢一下提供技术支持的徐老师!

### Ubuntu 中读取 XFS 文件系统的方法 在 Linux 系统中,特别是基于 Debian 的发行版如 Ubuntu,可以使用多种工具来管理和操作 XFS 文件系统。以下是关于如何在 Ubuntu 上读取 XFS 文件系统的相关信息。 #### 1. 安装必要的软件包 为了支持 XFS 文件系统的管理功能,在安装 Ubuntu 后可能需要额外安装 `xfsprogs` 软件包。该软件包提供了用于创建、维护和调试 XFS 文件系统的命令行工具[^1]。 ```bash sudo apt update && sudo apt install xfsprogs ``` 此命令会更新本地包索引并安装所需的程序集。 #### 2. 查看挂载的 XFS 文件系统状态 一旦文件系统被成功挂载到某个目录下,可以通过以下方法获取其基本信息: - **df 命令**: 显示磁盘空间使用情况以及对应的文件系统类型。 ```bash df -T /mnt/xfs_mount_point ``` 这里 `/mnt/xfs_mount_point` 是假设的目标路径名称。上述命令中的 `-T` 参数用来指定显示文件系统类型的列[^2]。 - **mount 或 findmnt 命令**: 列出当前已加载的所有分区及其属性 ```bash mount | grep 'type xfs' ``` 或者更简洁的方式, ```bash findmnt -t xfs ``` 这些指令可以帮助确认哪些设备是以 XFS 类型存在的,并查看它们的具体参数配置状况。 #### 3. 获取高级元数据信息 对于更加详细的分析需求,则需要用到专门针对 XFS 设计的一些实用程序: - **xfs_info 工具** 此工具能够提供有关特定卷布局结构方面的深入洞察力,比如内部日志位置、分配组大小等等。 ```bash sudo xfs_info /dev/sdXn ``` 这里 sdXn 表示实际物理硬盘编号;如果是逻辑单元号 (LUN),则可能是 nvmeYnZpN 形式的表述形式[^3]。 - **xfs_db 工具** 另一个强大的诊断手段就是通过交互模式下的数据库查询接口访问底层对象特性。例如检测 inode 地址分布规律等复杂场景适用。 ```bash sudo xfs_db -c 'sb 0' -r /dev/sdXn ``` 以上例子仅打印超级块内容摘要部分。 #### 4. 检查配额(quota)启用与否 最后值得一提的是,当涉及到用户/群组级别的存储限额控制时,也需要验证目标区域是否激活了相应机制。 执行如下脚本即可得知答案: ```bash sudo xfs_quota -x -c "state" / ``` 它返回的结果将表明全局范围内 quota 是否处于活动之中[^4]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值