玄子Share-LVM与磁盘配额
LVM概述
Logical Volume Manager,逻辑卷管理
- Linux系统中对磁盘分区进行管理的一种逻辑机制,是建立在硬盘和分区之上的一个逻辑层
- 动态调整磁盘容量,从而提高磁盘管理的灵活性
/boot分区用于存放引导文件,不能基于LVM创建。
LVM机制的基本概念
- PV(物理卷):是对物理磁盘和经过RAID之后逻辑磁盘的统称;
- VG(卷组):由一个或多个物理卷组成的存储池;
- LV(逻辑卷): 在卷组上进行的逻辑划分,可以建立文件系统;
LVM的管理命令
功能 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
---|---|---|---|
Scan 扫描 | pvscan | vgscan | lvscan |
Create 建立 | pvcreate | vgcreate | lvcreate |
Display 显示 | pvdisplay | vgdisplay | lvdisplay |
Remove 删除 | pvremove | vgremove | lvremove |
Extend 扩展 | ------------ | vgextend | lvextend |
Reduce 减少 | ------------ | vgreduce | lvreduce |
shell
pvcreate 设备名1 [设备名2 ... ...]
vgcreate 卷组名 物理卷名1 物理卷名2
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
lvextend -L +容量大小 /dev/卷组名/逻辑卷名
lvreduce -L -容量大小 /dev/卷组名/逻辑卷名
实操案例
shell
pvcreate /dev/sdb1 /dev/sdc1
pvdisplay
# 转换物理卷
vgcreate mail_store /dev/sdb1 /dev/sdc1
vgdisplay
# 创建卷组
lvcreate -L 50G mail_store -n mbox
lvdisplay
# 创建逻辑卷
mkfs.xfs /dev/mail_store/mbox
# 格式化为XFS文件系统
mkdir /mailbox
mount /dev/mail_store/mbox /mailbox/
# 挂载到 /mailbox 目录
df -hT
磁盘配额概述
磁盘配额是一种磁盘空间的管理机制,使用磁盘配额可限制用户或组在某个特定文件系统中使用较多空间。
- 实现磁盘限额的条件
- 需要 Linux 内核支持
- 安装 xfsprogs 与 quota 软件包
Linux 磁盘限额的特点
- 作用范围:针对指定的文件系统(分区)
- 限制对象:存在的用户帐号、存在的组帐号
- 限制类型:磁盘容量(默认为kb)、文件数量
- 限制方法:软限制(警告)、硬限制(完全限制)
启用磁盘配额支持
shell
[root@xuanzi ~]# mount -o usrquota,grpquota /dev/mail_store/mbox /mailbox/
[root@xuanzi ~]# mount | grep /mailbox
/dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
[root@xuanzi ~]# chmod 777 /mailbox/
[root@xuanzi ~]# ls -ld /mailbox/
drwxrwxrwx. 2 root root 6 3月 19 22:56 /mailbox/
[root@xuanzi ~]# vim /etc/fstab
# /dev/mapper/mail_store-mbox /mailbox xfs defaults,usrquota,grpquota 0 0
磁盘配额管理
编辑用户和组帐号的配额设置,使用 xfs_quota 命令编辑配额设置
shell
xfs_quota -x -c 'limit -u bsoft=N bhard=N isoft=N ihard=N 用户名' 挂载点
[root@xuanzi ~]# xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=80 ihard=100 XuanZi' /mailbox/
[root@xuanzi ~]# xfs_quota -c 'quota -iuv XuanZi' /mailbox/
Disk quotas for User XuanZi (1001)
Filesystem Files Quota Limit Warn/Time Mounted on
/dev/mapper/mail_store-mbox
0 80 100 00 [--------] /mailbox
- 常用选项
- -u(用户限额)
- -g(用户组限额)
- -x(专家模式)
- -c(调用管理命令)
- 限制字段
- bsoft:设置用户的磁盘容量软限制
- bhard:设置用户的磁盘容量硬限制
- isoft:设置用户的文件数量软限制
- ihard:设置用户的文件数量硬限制
验证磁盘配额功能
切换到设置配额的分区(挂载目录)创建指定数量的文件:使用touch命令,或cp命令创建指定容量的文件:使用dd命令,或cp命令
查看配额使用情况
shell
[root@bogon ~]# xfs_quota -x -c 'report -a'
User quota on /mailbox (/dev/mapper/mail_store-mbox)
Blocks
User ID Used Soft Hard Warn/Grace
---------- --------------------------------------------------
root 0 0 0 00 [--------]
zhangsan 102400 81920 102400 00 [6 days]
Group quota on /mailbox (/dev/mapper/mail_store-mbox)
Blocks
Group ID Used Soft Hard Warn/Grace
---------- --------------------------------------------------
root 0 0 0 00 [--------]
users 0 1048576 2097152 00 [--------]
zhangsan 102400 0 0 00 [--------]
磁盘配额实战
虚拟机添加两块硬盘,重启系统
shell
fdisk -l
# 查看系统中所有磁盘的分区情况,以便选择要操作的磁盘设备,/dev/sdb 和 /dev/sdc
fdisk /dev/sdb
# 使用 fdisk 对 /dev/sdb 磁盘进行分区管理,使用命令 n 创建新分区,p 显示分区表,t 修改分区类型,ID设为 8e 以支持 Linux LVM,w 保存并退出
fdisk /dev/sdc
# 同样使用 fdisk 对 /dev/sdc 磁盘进行分区管理,步骤与对 /dev/sdb 的操作一致
fdisk -l
# 再次查看系统中所有磁盘的分区情况,确认分区已经完成
partx /dev/sdb
partx /dev/sdc
# 更新内核关于磁盘分区表的信息
pvcreate /dev/sdb1 /dev/sdc1
# 创建物理卷,将 /dev/sdb1 和/ dev/sdc1 分区标记为LVM物理卷,以便后续创建逻辑卷
vgcreate mail_store /dev/sdb1 /dev/sdc1
# 创建卷组,将物理卷 /dev/sdb1 和 /dev/sdc1 添加到名为 mail_store 的卷组中
lvcreate -L 80G -n mbox mail_store
# 在 mail_store 卷组中创建一个名为 mbox 的逻辑卷,大小为 80GB
mkfs -t xfs /dev/mail_store/mbox
# 对新创建的逻辑卷 /dev/mail_store/mbox 进行文件系统格式化,使用 XFS 文件系统
mkdir /mailbox
# 创建一个目录 /mailbox,用于挂载文件系统
mount /dev/mail_store/mbox /mailbox/
# 将逻辑卷 /dev/mail_store/mbox 挂载到 /mailbox 目录,使其可被访问
mount | tail -1
# 查看最后一行挂载信息,确认挂载成功
# /dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
ll /dev/dm-3
# 查看 /dev/dm-3 的详细属性
# brw-rw----. 1 root disk 253, 3 3月 20 21:54 /dev/dm-3
ll /dev/mapper/mail_store-mbox
# 查看/dev/mapper/mail_store-mbox的详细属性,这是逻辑卷的符号链接
# lrwxrwxrwx. 1 root root 7 3月 20 21:54 /dev/mapper/mail_store-mbox -> ../dm-3
ll /dev/mail_store/mbox
# 查看/dev/mail_store/mbox的详细属性,这也是逻辑卷的符号链接
# root root 7 3月 20 21:54 /dev/mail_store/mbox -> ../dm-3
umount /mailbox/
# 卸载/mailbox目录下的文件系统
mount -o usrquota,grpquota /dev/mail_store/mbox /mailbox/
# 重新挂载 /mailbox 目录,并启用用户和组的磁盘配额功能
mount | tail -1
# 查看最后一行挂载信息,确认配额已启用
# /dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
chmod 777 /mailbox/
# 将 /mailbox 目录的权限设置为 777,以便所有用户都有读写执行权限
ll -d /mailbox/
# 查看 /mailbox 目录的详细属性,确认权限设置成功
# drwxrwxrwx. 2 root root 6 3月 20 21:54 /mailbox/
vim /etc/fstab
# 使用vim编辑器打开/etc/fstab文件,添加一行内容,以便系统启动时自动挂载文件系统
# 添加如下内容:/dev/mapper/mail_store-mbox /mailbox xfs defaults,usrquota,grpquota 0 0
useradd zhangsan
# 创建一个名为 zhangsan 的测试用户
passwd zhangsan
# 为用户 zhangsan 设置密码
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=80 ihard=100 zhangsan' /mailbox/
# 为用户 zhangsan 设置磁盘配额,软限制为80MB,硬限制为100MB
xfs_quota -c 'quota -uv zhangsan' /mailbox/
# 查看用户 zhangsa n的磁盘使用情况和配额限制
xfs_quota -c 'quota -uvi zhangsan' /mailbox/
# 查看用户 zhangsan 的文件索引节点(inode)使用情况和配额限制
su - zhangsan
# 切换到 zhangsan 用户
cd /mailbox/
# 进入 /mailbox 目录
dd if=/dev/zero of=/mailbox/kc60.data bs=1M count=85
# 使用 dd 命令在 /mailbox 目录下创建一个名为 kc60.data 的 85MB 大小的文件
ls -hl kc60.data
# 查看创建的文件的详细信息
# -rw-rw-r--. 1 zhangsan zhangsan 85M 3月 20 22:42 kc60.data
exit
# 退出 zhangsan 用户
xfs_quota -c 'quota -uv zhangsan' /mailbox/
# 再次查看用户 zhangsan 的磁盘使用情况和配额限制,确认文件创建后的磁盘使用情况
# # Disk quotas for User zhangsan (1001)
# Filesystem Blocks Quota Limit Warn/Time Mounted on
# /dev/mapper/mail_store-mbox 87040 81920 102400 00 [6 days] /mailbox
# Warn/Time:00 [6 days] 表示用户已经达到了磁盘配额的警告限制,并且该警告会持续6天,到期后仅能读取无法写入
xfs_quota -x -c 'report -a'
# 生成关于磁盘使用情况和配额限制的报告,包括用户和组的配额情况
# User quota on /mailbox (/dev/mapper/mail_store-mbox)
# Blocks
# User ID Used Soft Hard Warn/Grace
# ---------- --------------------------------------------------
# root 0 0 0 00 [--------]
# zhangsan 102400 81920 102400 00 [6 days]
#
# Group quota on /mailbox (/dev/mapper/mail_store-mbox)
# Blocks
# Group ID Used Soft Hard Warn/Grace
# ---------- --------------------------------------------------
# root 0 0 0 00 [--------]
# users 0 1048576 2097152 00 [--------]
# zhangsan 102400 0 0 00 [--------]
玄子Share-LVM与磁盘配额 2024-03-19
玄子Share-LVM与磁盘配额
LVM概述
Logical Volume Manager,逻辑卷管理
- Linux系统中对磁盘分区进行管理的一种逻辑机制,是建立在硬盘和分区之上的一个逻辑层
- 动态调整磁盘容量,从而提高磁盘管理的灵活性
/boot分区用于存放引导文件,不能基于LVM创建。
LVM机制的基本概念
- PV(物理卷):是对物理磁盘和经过RAID之后逻辑磁盘的统称;
- VG(卷组):由一个或多个物理卷组成的存储池;
- LV(逻辑卷): 在卷组上进行的逻辑划分,可以建立文件系统;
LVM的管理命令
功能 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
---|---|---|---|
Scan 扫描 | pvscan | vgscan | lvscan |
Create 建立 | pvcreate | vgcreate | lvcreate |
Display 显示 | pvdisplay | vgdisplay | lvdisplay |
Remove 删除 | pvremove | vgremove | lvremove |
Extend 扩展 | ------------ | vgextend | lvextend |
Reduce 减少 | ------------ | vgreduce | lvreduce |
shell
pvcreate 设备名1 [设备名2 ... ...]
vgcreate 卷组名 物理卷名1 物理卷名2
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
lvextend -L +容量大小 /dev/卷组名/逻辑卷名
lvreduce -L -容量大小 /dev/卷组名/逻辑卷名
实操案例
shell
pvcreate /dev/sdb1 /dev/sdc1
pvdisplay
# 转换物理卷
vgcreate mail_store /dev/sdb1 /dev/sdc1
vgdisplay
# 创建卷组
lvcreate -L 50G mail_store -n mbox
lvdisplay
# 创建逻辑卷
mkfs.xfs /dev/mail_store/mbox
# 格式化为XFS文件系统
mkdir /mailbox
mount /dev/mail_store/mbox /mailbox/
# 挂载到 /mailbox 目录
df -hT
磁盘配额概述
磁盘配额是一种磁盘空间的管理机制,使用磁盘配额可限制用户或组在某个特定文件系统中使用较多空间。
- 实现磁盘限额的条件
- 需要 Linux 内核支持
- 安装 xfsprogs 与 quota 软件包
Linux 磁盘限额的特点
- 作用范围:针对指定的文件系统(分区)
- 限制对象:存在的用户帐号、存在的组帐号
- 限制类型:磁盘容量(默认为kb)、文件数量
- 限制方法:软限制(警告)、硬限制(完全限制)
启用磁盘配额支持
shell
[root@xuanzi ~]# mount -o usrquota,grpquota /dev/mail_store/mbox /mailbox/
[root@xuanzi ~]# mount | grep /mailbox
/dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
[root@xuanzi ~]# chmod 777 /mailbox/
[root@xuanzi ~]# ls -ld /mailbox/
drwxrwxrwx. 2 root root 6 3月 19 22:56 /mailbox/
[root@xuanzi ~]# vim /etc/fstab
# /dev/mapper/mail_store-mbox /mailbox xfs defaults,usrquota,grpquota 0 0
磁盘配额管理
编辑用户和组帐号的配额设置,使用 xfs_quota 命令编辑配额设置
shell
xfs_quota -x -c 'limit -u bsoft=N bhard=N isoft=N ihard=N 用户名' 挂载点
[root@xuanzi ~]# xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=80 ihard=100 XuanZi' /mailbox/
[root@xuanzi ~]# xfs_quota -c 'quota -iuv XuanZi' /mailbox/
Disk quotas for User XuanZi (1001)
Filesystem Files Quota Limit Warn/Time Mounted on
/dev/mapper/mail_store-mbox
0 80 100 00 [--------] /mailbox
- 常用选项
- -u(用户限额)
- -g(用户组限额)
- -x(专家模式)
- -c(调用管理命令)
- 限制字段
- bsoft:设置用户的磁盘容量软限制
- bhard:设置用户的磁盘容量硬限制
- isoft:设置用户的文件数量软限制
- ihard:设置用户的文件数量硬限制
验证磁盘配额功能
切换到设置配额的分区(挂载目录)创建指定数量的文件:使用touch命令,或cp命令创建指定容量的文件:使用dd命令,或cp命令
查看配额使用情况
shell
[root@bogon ~]# xfs_quota -x -c 'report -a'
User quota on /mailbox (/dev/mapper/mail_store-mbox)
Blocks
User ID Used Soft Hard Warn/Grace
---------- --------------------------------------------------
root 0 0 0 00 [--------]
zhangsan 102400 81920 102400 00 [6 days]
Group quota on /mailbox (/dev/mapper/mail_store-mbox)
Blocks
Group ID Used Soft Hard Warn/Grace
---------- --------------------------------------------------
root 0 0 0 00 [--------]
users 0 1048576 2097152 00 [--------]
zhangsan 102400 0 0 00 [--------]
磁盘配额实战
虚拟机添加两块硬盘,重启系统
shell
fdisk -l
# 查看系统中所有磁盘的分区情况,以便选择要操作的磁盘设备,/dev/sdb 和 /dev/sdc
fdisk /dev/sdb
# 使用 fdisk 对 /dev/sdb 磁盘进行分区管理,使用命令 n 创建新分区,p 显示分区表,t 修改分区类型,ID设为 8e 以支持 Linux LVM,w 保存并退出
fdisk /dev/sdc
# 同样使用 fdisk 对 /dev/sdc 磁盘进行分区管理,步骤与对 /dev/sdb 的操作一致
fdisk -l
# 再次查看系统中所有磁盘的分区情况,确认分区已经完成
partx /dev/sdb
partx /dev/sdc
# 更新内核关于磁盘分区表的信息
pvcreate /dev/sdb1 /dev/sdc1
# 创建物理卷,将 /dev/sdb1 和/ dev/sdc1 分区标记为LVM物理卷,以便后续创建逻辑卷
vgcreate mail_store /dev/sdb1 /dev/sdc1
# 创建卷组,将物理卷 /dev/sdb1 和 /dev/sdc1 添加到名为 mail_store 的卷组中
lvcreate -L 80G -n mbox mail_store
# 在 mail_store 卷组中创建一个名为 mbox 的逻辑卷,大小为 80GB
mkfs -t xfs /dev/mail_store/mbox
# 对新创建的逻辑卷 /dev/mail_store/mbox 进行文件系统格式化,使用 XFS 文件系统
mkdir /mailbox
# 创建一个目录 /mailbox,用于挂载文件系统
mount /dev/mail_store/mbox /mailbox/
# 将逻辑卷 /dev/mail_store/mbox 挂载到 /mailbox 目录,使其可被访问
mount | tail -1
# 查看最后一行挂载信息,确认挂载成功
# /dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
ll /dev/dm-3
# 查看 /dev/dm-3 的详细属性
# brw-rw----. 1 root disk 253, 3 3月 20 21:54 /dev/dm-3
ll /dev/mapper/mail_store-mbox
# 查看/dev/mapper/mail_store-mbox的详细属性,这是逻辑卷的符号链接
# lrwxrwxrwx. 1 root root 7 3月 20 21:54 /dev/mapper/mail_store-mbox -> ../dm-3
ll /dev/mail_store/mbox
# 查看/dev/mail_store/mbox的详细属性,这也是逻辑卷的符号链接
# root root 7 3月 20 21:54 /dev/mail_store/mbox -> ../dm-3
umount /mailbox/
# 卸载/mailbox目录下的文件系统
mount -o usrquota,grpquota /dev/mail_store/mbox /mailbox/
# 重新挂载 /mailbox 目录,并启用用户和组的磁盘配额功能
mount | tail -1
# 查看最后一行挂载信息,确认配额已启用
# /dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
chmod 777 /mailbox/
# 将 /mailbox 目录的权限设置为 777,以便所有用户都有读写执行权限
ll -d /mailbox/
# 查看 /mailbox 目录的详细属性,确认权限设置成功
# drwxrwxrwx. 2 root root 6 3月 20 21:54 /mailbox/
vim /etc/fstab
# 使用vim编辑器打开/etc/fstab文件,添加一行内容,以便系统启动时自动挂载文件系统
# 添加如下内容:/dev/mapper/mail_store-mbox /mailbox xfs defaults,usrquota,grpquota 0 0
useradd zhangsan
# 创建一个名为 zhangsan 的测试用户
passwd zhangsan
# 为用户 zhangsan 设置密码
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=80 ihard=100 zhangsan' /mailbox/
# 为用户 zhangsan 设置磁盘配额,软限制为80MB,硬限制为100MB
xfs_quota -c 'quota -uv zhangsan' /mailbox/
# 查看用户 zhangsa n的磁盘使用情况和配额限制
xfs_quota -c 'quota -uvi zhangsan' /mailbox/
# 查看用户 zhangsan 的文件索引节点(inode)使用情况和配额限制
su - zhangsan
# 切换到 zhangsan 用户
cd /mailbox/
# 进入 /mailbox 目录
dd if=/dev/zero of=/mailbox/kc60.data bs=1M count=85
# 使用 dd 命令在 /mailbox 目录下创建一个名为 kc60.data 的 85MB 大小的文件
ls -hl kc60.data
# 查看创建的文件的详细信息
# -rw-rw-r--. 1 zhangsan zhangsan 85M 3月 20 22:42 kc60.data
exit
# 退出 zhangsan 用户
xfs_quota -c 'quota -uv zhangsan' /mailbox/
# 再次查看用户 zhangsan 的磁盘使用情况和配额限制,确认文件创建后的磁盘使用情况
# # Disk quotas for User zhangsan (1001)
# Filesystem Blocks Quota Limit Warn/Time Mounted on
# /dev/mapper/mail_store-mbox 87040 81920 102400 00 [6 days] /mailbox
# Warn/Time:00 [6 days] 表示用户已经达到了磁盘配额的警告限制,并且该警告会持续6天,到期后仅能读取无法写入
xfs_quota -x -c 'report -a'
# 生成关于磁盘使用情况和配额限制的报告,包括用户和组的配额情况
# User quota on /mailbox (/dev/mapper/mail_store-mbox)
# Blocks
# User ID Used Soft Hard Warn/Grace
# ---------- --------------------------------------------------
# root 0 0 0 00 [--------]
# zhangsan 102400 81920 102400 00 [6 days]
#
# Group quota on /mailbox (/dev/mapper/mail_store-mbox)
# Blocks
# Group ID Used Soft Hard Warn/Grace
# ---------- --------------------------------------------------
# root 0 0 0 00 [--------]
# users 0 1048576 2097152 00 [--------]
# zhangsan 102400 0 0 00 [--------]
玄子Share-LVM与磁盘配额 2024-03-19
玄子Share-LVM与磁盘配额
LVM概述
Logical Volume Manager,逻辑卷管理
- Linux系统中对磁盘分区进行管理的一种逻辑机制,是建立在硬盘和分区之上的一个逻辑层
- 动态调整磁盘容量,从而提高磁盘管理的灵活性
/boot分区用于存放引导文件,不能基于LVM创建。
LVM机制的基本概念
- PV(物理卷):是对物理磁盘和经过RAID之后逻辑磁盘的统称;
- VG(卷组):由一个或多个物理卷组成的存储池;
- LV(逻辑卷): 在卷组上进行的逻辑划分,可以建立文件系统;
LVM的管理命令
功能 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
---|---|---|---|
Scan 扫描 | pvscan | vgscan | lvscan |
Create 建立 | pvcreate | vgcreate | lvcreate |
Display 显示 | pvdisplay | vgdisplay | lvdisplay |
Remove 删除 | pvremove | vgremove | lvremove |
Extend 扩展 | ------------ | vgextend | lvextend |
Reduce 减少 | ------------ | vgreduce | lvreduce |
shell
pvcreate 设备名1 [设备名2 ... ...]
vgcreate 卷组名 物理卷名1 物理卷名2
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
lvextend -L +容量大小 /dev/卷组名/逻辑卷名
lvreduce -L -容量大小 /dev/卷组名/逻辑卷名
实操案例
shell
pvcreate /dev/sdb1 /dev/sdc1
pvdisplay
# 转换物理卷
vgcreate mail_store /dev/sdb1 /dev/sdc1
vgdisplay
# 创建卷组
lvcreate -L 50G mail_store -n mbox
lvdisplay
# 创建逻辑卷
mkfs.xfs /dev/mail_store/mbox
# 格式化为XFS文件系统
mkdir /mailbox
mount /dev/mail_store/mbox /mailbox/
# 挂载到 /mailbox 目录
df -hT
磁盘配额概述
磁盘配额是一种磁盘空间的管理机制,使用磁盘配额可限制用户或组在某个特定文件系统中使用较多空间。
- 实现磁盘限额的条件
- 需要 Linux 内核支持
- 安装 xfsprogs 与 quota 软件包
Linux 磁盘限额的特点
- 作用范围:针对指定的文件系统(分区)
- 限制对象:存在的用户帐号、存在的组帐号
- 限制类型:磁盘容量(默认为kb)、文件数量
- 限制方法:软限制(警告)、硬限制(完全限制)
启用磁盘配额支持
shell
[root@xuanzi ~]# mount -o usrquota,grpquota /dev/mail_store/mbox /mailbox/
[root@xuanzi ~]# mount | grep /mailbox
/dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
[root@xuanzi ~]# chmod 777 /mailbox/
[root@xuanzi ~]# ls -ld /mailbox/
drwxrwxrwx. 2 root root 6 3月 19 22:56 /mailbox/
[root@xuanzi ~]# vim /etc/fstab
# /dev/mapper/mail_store-mbox /mailbox xfs defaults,usrquota,grpquota 0 0
磁盘配额管理
编辑用户和组帐号的配额设置,使用 xfs_quota 命令编辑配额设置
shell
xfs_quota -x -c 'limit -u bsoft=N bhard=N isoft=N ihard=N 用户名' 挂载点
[root@xuanzi ~]# xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=80 ihard=100 XuanZi' /mailbox/
[root@xuanzi ~]# xfs_quota -c 'quota -iuv XuanZi' /mailbox/
Disk quotas for User XuanZi (1001)
Filesystem Files Quota Limit Warn/Time Mounted on
/dev/mapper/mail_store-mbox
0 80 100 00 [--------] /mailbox
- 常用选项
- -u(用户限额)
- -g(用户组限额)
- -x(专家模式)
- -c(调用管理命令)
- 限制字段
- bsoft:设置用户的磁盘容量软限制
- bhard:设置用户的磁盘容量硬限制
- isoft:设置用户的文件数量软限制
- ihard:设置用户的文件数量硬限制
验证磁盘配额功能
切换到设置配额的分区(挂载目录)创建指定数量的文件:使用touch命令,或cp命令创建指定容量的文件:使用dd命令,或cp命令
查看配额使用情况
shell
[root@bogon ~]# xfs_quota -x -c 'report -a'
User quota on /mailbox (/dev/mapper/mail_store-mbox)
Blocks
User ID Used Soft Hard Warn/Grace
---------- --------------------------------------------------
root 0 0 0 00 [--------]
zhangsan 102400 81920 102400 00 [6 days]
Group quota on /mailbox (/dev/mapper/mail_store-mbox)
Blocks
Group ID Used Soft Hard Warn/Grace
---------- --------------------------------------------------
root 0 0 0 00 [--------]
users 0 1048576 2097152 00 [--------]
zhangsan 102400 0 0 00 [--------]
磁盘配额实战
虚拟机添加两块硬盘,重启系统
shell
fdisk -l
# 查看系统中所有磁盘的分区情况,以便选择要操作的磁盘设备,/dev/sdb 和 /dev/sdc
fdisk /dev/sdb
# 使用 fdisk 对 /dev/sdb 磁盘进行分区管理,使用命令 n 创建新分区,p 显示分区表,t 修改分区类型,ID设为 8e 以支持 Linux LVM,w 保存并退出
fdisk /dev/sdc
# 同样使用 fdisk 对 /dev/sdc 磁盘进行分区管理,步骤与对 /dev/sdb 的操作一致
fdisk -l
# 再次查看系统中所有磁盘的分区情况,确认分区已经完成
partx /dev/sdb
partx /dev/sdc
# 更新内核关于磁盘分区表的信息
pvcreate /dev/sdb1 /dev/sdc1
# 创建物理卷,将 /dev/sdb1 和/ dev/sdc1 分区标记为LVM物理卷,以便后续创建逻辑卷
vgcreate mail_store /dev/sdb1 /dev/sdc1
# 创建卷组,将物理卷 /dev/sdb1 和 /dev/sdc1 添加到名为 mail_store 的卷组中
lvcreate -L 80G -n mbox mail_store
# 在 mail_store 卷组中创建一个名为 mbox 的逻辑卷,大小为 80GB
mkfs -t xfs /dev/mail_store/mbox
# 对新创建的逻辑卷 /dev/mail_store/mbox 进行文件系统格式化,使用 XFS 文件系统
mkdir /mailbox
# 创建一个目录 /mailbox,用于挂载文件系统
mount /dev/mail_store/mbox /mailbox/
# 将逻辑卷 /dev/mail_store/mbox 挂载到 /mailbox 目录,使其可被访问
mount | tail -1
# 查看最后一行挂载信息,确认挂载成功
# /dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
ll /dev/dm-3
# 查看 /dev/dm-3 的详细属性
# brw-rw----. 1 root disk 253, 3 3月 20 21:54 /dev/dm-3
ll /dev/mapper/mail_store-mbox
# 查看/dev/mapper/mail_store-mbox的详细属性,这是逻辑卷的符号链接
# lrwxrwxrwx. 1 root root 7 3月 20 21:54 /dev/mapper/mail_store-mbox -> ../dm-3
ll /dev/mail_store/mbox
# 查看/dev/mail_store/mbox的详细属性,这也是逻辑卷的符号链接
# root root 7 3月 20 21:54 /dev/mail_store/mbox -> ../dm-3
umount /mailbox/
# 卸载/mailbox目录下的文件系统
mount -o usrquota,grpquota /dev/mail_store/mbox /mailbox/
# 重新挂载 /mailbox 目录,并启用用户和组的磁盘配额功能
mount | tail -1
# 查看最后一行挂载信息,确认配额已启用
# /dev/mapper/mail_store-mbox on /mailbox type xfs (rw,relatime,seclabel,attr2,inode64,usrquota,grpquota)
chmod 777 /mailbox/
# 将 /mailbox 目录的权限设置为 777,以便所有用户都有读写执行权限
ll -d /mailbox/
# 查看 /mailbox 目录的详细属性,确认权限设置成功
# drwxrwxrwx. 2 root root 6 3月 20 21:54 /mailbox/
vim /etc/fstab
# 使用vim编辑器打开/etc/fstab文件,添加一行内容,以便系统启动时自动挂载文件系统
# 添加如下内容:/dev/mapper/mail_store-mbox /mailbox xfs defaults,usrquota,grpquota 0 0
useradd zhangsan
# 创建一个名为 zhangsan 的测试用户
passwd zhangsan
# 为用户 zhangsan 设置密码
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=80 ihard=100 zhangsan' /mailbox/
# 为用户 zhangsan 设置磁盘配额,软限制为80MB,硬限制为100MB
xfs_quota -c 'quota -uv zhangsan' /mailbox/
# 查看用户 zhangsa n的磁盘使用情况和配额限制
xfs_quota -c 'quota -uvi zhangsan' /mailbox/
# 查看用户 zhangsan 的文件索引节点(inode)使用情况和配额限制
su - zhangsan
# 切换到 zhangsan 用户
cd /mailbox/
# 进入 /mailbox 目录
dd if=/dev/zero of=/mailbox/kc60.data bs=1M count=85
# 使用 dd 命令在 /mailbox 目录下创建一个名为 kc60.data 的 85MB 大小的文件
ls -hl kc60.data
# 查看创建的文件的详细信息
# -rw-rw-r--. 1 zhangsan zhangsan 85M 3月 20 22:42 kc60.data
exit
# 退出 zhangsan 用户
xfs_quota -c 'quota -uv zhangsan' /mailbox/
# 再次查看用户 zhangsan 的磁盘使用情况和配额限制,确认文件创建后的磁盘使用情况
# # Disk quotas for User zhangsan (1001)
# Filesystem Blocks Quota Limit Warn/Time Mounted on
# /dev/mapper/mail_store-mbox 87040 81920 102400 00 [6 days] /mailbox
# Warn/Time:00 [6 days] 表示用户已经达到了磁盘配额的警告限制,并且该警告会持续6天,到期后仅能读取无法写入
xfs_quota -x -c 'report -a'
# 生成关于磁盘使用情况和配额限制的报告,包括用户和组的配额情况
# User quota on /mailbox (/dev/mapper/mail_store-mbox)
# Blocks
# User ID Used Soft Hard Warn/Grace
# ---------- --------------------------------------------------
# root 0 0 0 00 [--------]
# zhangsan 102400 81920 102400 00 [6 days]
#
# Group quota on /mailbox (/dev/mapper/mail_store-mbox)
# Blocks
# Group ID Used Soft Hard Warn/Grace
# ---------- --------------------------------------------------
# root 0 0 0 00 [--------]
# users 0 1048576 2097152 00 [--------]
# zhangsan 102400 0 0 00 [--------]
玄子Share-LVM与磁盘配额 2024-03-19