centos7 xfs 文件系统配置quota 用户磁盘配额

简介:  centos7的xfs配置 XFS是扩展性高、高性能的文件系统。也是rhel7/centos7的默认文件系统。XFS支持metadata journaling,这使其能从crash中更快速的恢复。

 

centos7的xfs配置

 

XFS是扩展性高、高性能的文件系统。也是rhel7/centos7的默认文件系统。
XFS支持metadata journaling,这使其能从crash中更快速的恢复。
它也支持在挂载和活动的状态下进行碎片整理和扩容。
通过延迟分配,XFS 赢得了许多机会来优化写性能。
可通过工具xfsdump和xfsrestore来备份和恢复xfs文件系统,
xfsdump可使用dump级别来完成增量备份,还可通过size,subtree,inode flags来排除文件。
也支持user、group、project配额。

下面将介绍如何创建xfs文件系统,分配配额以及对其扩容:
###############################################################################
将/dev/sdb分区(2G),并启动LVM功能

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root @localhost  zhongq] #parted /dev/sdb                              
GNU Parted 3.1
Using /dev/sdb
Welcome to GNU Parted! Type  'help'  to view a list of commands.
(parted) mkpart primary 4 2048
(parted) set 1 lvm on                                                   
(parted) p                                                            
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 2147MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
 
Number  Start   End     Size    File  system   Name     Flags
  1      4194kB  2048MB  2044MB               primary  lvm

 

###############################################################################
创建PV

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[root @localhost  zhongq] # pvcreate /dev/sdb1
   Physical volume  "/dev/sdb1"  successfully created
 
[root @localhost  zhongq] # pvdisplay
   --- Physical volume ---
   PV Name               /dev/sda2
   VG Name               centos
   PV Size               24.51 GiB / not usable 3.00 MiB
   Allocatable           yes (but full)
   PE Size               4.00 MiB
   Total PE              6274
   Free PE               0
   Allocated PE          6274
   PV UUID               9hp8U7-IJM6-bwbP-G9Vn-IVuJ-yvE8-AkFjcB
    
   "/dev/sdb1"  is a new physical volume of  "1.90 GiB"
   --- NEW Physical volume ---
   PV Name               /dev/sdb1
   VG Name              
   PV Size               1.90 GiB
   Allocatable           NO
   PE Size               0  
   Total PE              0
   Free PE               0
   Allocated PE          0
   PV UUID               bu7yIH-1440-BPy1-APG2-FpvX-ejLS-2MIlA8

###############################################################################
将/dev/sdb1分配到名为xfsgroup00的VG

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
[root @localhost  zhongq] # vgcreate  xfsgroup00 /dev/sdb1
  Volume group  "xfsgroup00"  successfully created
[root @localhost  zhongq] # vgdisplay
  --- Volume group ---
   VG Name               centos
   System ID            
   Format                lvm2
   Metadata Areas        1
   Metadata Sequence No  3
   VG Access              read / write
   VG Status             resizable
   MAX LV                0
   Cur LV                2
   Open LV               2
   Max PV                0
   Cur PV                1
   Act PV                1
   VG Size               24.51 GiB
   PE Size               4.00 MiB
   Total PE              6274
   Alloc PE / Size       6274 / 24.51 GiB
   Free  PE / Size       0 / 0  
   VG UUID               T3Ryyg-R0rn-2i5r-7L5o-AZKG-yFkh-CDzhKm
    
   --- Volume group ---
   VG Name               xfsgroup00
   System ID            
   Format                lvm2
   Metadata Areas        1
   Metadata Sequence No  1
   VG Access              read / write
   VG Status             resizable
   MAX LV                0
   Cur LV                0
   Open LV               0
   Max PV                0
   Cur PV                1
   Act PV                1
   VG Size               1.90 GiB
   PE Size               4.00 MiB
   Total PE              487
   Alloc PE / Size       0 / 0  
   Free  PE / Size       487 / 1.90 GiB
   VG UUID               ejuwcc-sVES-MWWB-3Mup-n1wB-Kd0g-u7jm0H

###############################################################################
使用命令lvcreate来创建xfsgroup00组大小为1G的名为xfsdata的LV

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
[root @localhost  zhongq] # lvcreate -L 1024M -n xfsdata xfsgroup00
WARNING: xfs signature detected on /dev/xfsgroup00/xfsdata at offset 0. Wipe it? [y/n] y
   Wiping xfs signature on /dev/xfsgroup00/xfsdata.
   Logical volume  "xfsdata"  created
[root @localhost  zhongq] # lvdisplay
   --- Logical volume ---
   LV Path                /dev/centos/swap
   LV Name                swap
   VG Name                centos
   LV UUID                EnW3at-KlFG-XGaQ-DOoH-cGPP-8pSf-teSVbh
   LV Write Access         read / write
   LV Creation host,  time  localhost, 2014-08-18 20:15:25 +0800
   LV Status              available
   # open                 2
   LV Size                2.03 GiB
   Current LE             520
   Segments               1
   Allocation             inherit
   Read ahead sectors     auto
   - currently set to     8192
   Block device           253:0
    
   --- Logical volume ---
   LV Path                /dev/centos/root
   LV Name                root
   VG Name                centos
   LV UUID                zmZGkv-Ln4W-B8AY-oDnD-BEk2-6VWL-L0cZOv
   LV Write Access         read / write
   LV Creation host,  time  localhost, 2014-08-18 20:15:26 +0800
   LV Status              available
   # open                 1
   LV Size                22.48 GiB
   Current LE             5754
   Segments               1
   Allocation             inherit
   Read ahead sectors     auto
   - currently set to     8192
   Block device           253:1
    
   --- Logical volume ---
   LV Path                /dev/xfsgroup00/xfsdata
   LV Name                xfsdata
   VG Name                xfsgroup00
   LV UUID                O4yvoY-XGcD-0zPm-eilR-3JJP-updU-rRCSlJ
   LV Write Access         read / write
   LV Creation host,  time  localhost.localdomain, 2014-09-23 15:50:19 +0800
   LV Status              available
   # open                 0
   LV Size                1.00 GiB
   Current LE             256
   Segments               1
   Allocation             inherit
   Read ahead sectors     auto
   - currently set to     8192
   Block device           253:3

###############################################################################
格式化分区为xfs文件系统。
注意:xfs被创建后,其size将无法缩小,但可以通过xfs_growfs来增大

1
2
3
4
5
6
7
8
9
10
[root @localhost  zhongq] # mkfs.xfs /dev/xfsgroup00/xfsdata
meta-data=/dev/xfsgroup00/xfsdata isize=256    agcount=4, agsize=65536 blks
          =                       sectsz=512   attr=2, projid32bit=1
          =                       crc=0
data     =                       bsize=4096   blocks=262144, imaxpct=25
          =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log       =internal  log            bsize=4096   blocks=2560, version=2
          =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

###############################################################################
挂载xfs系统分区到指定目录,并通过参数uquota,gquota开启文件系统配额。

1
2
3
4
5
[root @localhost  zhongq] # mkdir /xfsdata
[root @localhost  zhongq] # mount -o uquota,gquota /dev/xfsgroup00/xfsdata /xfsdata
[root @localhost  zhongq] # chmod 777 /xfsdata
[root @localhost  zhongq] # mount|grep xfsdata
/dev/mapper/xfsgroup00-xfsdata on /xfsdata type xfs (rw,relatime,attr2,inode64,usrquota,grpquota)

###############################################################################
使用xfs_quota命令来查看配额信息以及为用户和目录分配配额,并验证配额限制是否生效。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
[root @localhost  zhongq] # xfs_quota -x -c 'report' /xfsdata
User quota on /xfsdata (/dev/mapper/xfsgroup00-xfsdata)
                                Blocks                    
User ID          Used       Soft       Hard    Warn/Grace    
---------- --------------------------------------------------
root                0          0          0     00 [--------]
 
Group quota on /xfsdata (/dev/mapper/xfsgroup00-xfsdata)
                                Blocks                    
Group ID         Used       Soft       Hard    Warn/Grace    
---------- --------------------------------------------------
root                0          0          0     00 [--------]
 
[root @localhost  zhongq] # xfs_quota -x -c 'limit bsoft=100M bhard=120M zhongq' /xfsdata
[root @localhost  zhongq] #xfs_quota -x -c 'report' /xfsdata
User quota on /xfsdata (/dev/mapper/xfsgroup00-xfsdata)
                                Blocks                    
User ID          Used       Soft       Hard    Warn/Grace    
---------- --------------------------------------------------
root                0          0          0     00 [--------]
zhongq              0     102400     122880     00 [--------]
 
Group quota on /xfsdata (/dev/mapper/xfsgroup00-xfsdata)
                                Blocks                    
Group ID         Used       Soft       Hard    Warn/Grace    
---------- --------------------------------------------------
root                0          0          0     00 [--------]
 
[root @localhost  zhongq] # su zhongq
[zhongq @localhost  ~]$ dd  if =/dev/zero of=/xfsdata/zq00 bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 28.9833 s, 3.6 MB/s
[zhongq @localhost  ~]$ dd  if =/dev/zero of=/xfsdata/zq01 bs=1M count=100
dd: error writing ‘/xfsdata/zq01’: Disk quota exceeded
21+0 records in
20+0 records out
20971520 bytes (21 MB) copied, 4.18921 s, 5.0 MB/s
 
[zhongq @localhost  ~]$  exit
 
[root @localhost  zhongq] # xfs_quota
xfs_quota> help
df [-bir] [-hn] [-f file] -- show free and used counts  for  blocks and inodes
help [command] -- help  for  one or all commands
print  -- list known mount points and projects
quit --  exit  the program
quota [-bir] [-gpu] [-hnNv] [-f file] [id|name]... -- show usage and limits
 
Use  'help commandname'  for  extended help.
xfs_quota>  print
Filesystem          Pathname
/                   /dev/mapper/centos-root
/boot               /dev/sda1
/var/lib/docker     /dev/mapper/centos-root
/xfsdata            /dev/mapper/xfsgroup00-xfsdata (uquota, gquota)
xfs_quota> quota -u zhongq
Disk quotas  for  User zhongq (1000)
Filesystem                        Blocks      Quota      Limit  Warn/Time      Mounted on
/dev/mapper/xfsgroup00-xfsdata    122880     102400     122880   00  [6 days]   /xfsdata

###############################################################################
先使用命令lvextend将LV扩展为1.5G(初始容量是1G),然后使用命令xfs_growfs来对xfs文件系统扩容(这里以block计数)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root @localhost  zhongq] # lvextend -L 1.5G /dev/xfsgroup00/xfsdata
   Extending logical volume xfsdata to 1.50 GiB
   Logical volume xfsdata successfully resized
   
[root @localhost  zhongq] # xfs_growfs /dev/xfsgroup00/xfsdata -D 393216
meta-data=/dev/mapper/xfsgroup00-xfsdata isize=256    agcount=4, agsize=65536 blks
          =                       sectsz=512   attr=2, projid32bit=1
          =                       crc=0
data     =                       bsize=4096   blocks=262144, imaxpct=25
          =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log       =internal               bsize=4096   blocks=2560, version=2
          =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 262144 to 393216
   
[root @localhost  zhongq] # df -h|grep xfsdata
/dev/mapper/xfsgroup00-xfsdata  1.5G  153M  1.4G  10% /xfsdata
目录
相关文章
|
10月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
936 87
|
8月前
|
存储 Linux Apache
在CentOS上配置SVN至Web目录的自动同步
通过上述配置,每次当SVN仓库中提交新的更改时,`post-commit`钩子将被触发,SVN仓库的内容会自动同步到指定的Web目录,从而实现代码的连续部署。
240 16
|
8月前
|
NoSQL 安全 Linux
设置Redis在CentOS7上的自启动配置
这些步骤总结了在CentOS 7系统上设置Redis服务自启动的过程。这些命令提供了一个直接且明了的方式,确保Redis作为关键组件在系统启动时能自动运行,保障了依赖于Redis服务的应用的稳定性和可用性。
649 9
|
10月前
|
安全 Linux 定位技术
如何在CentOS中卸载LVM磁盘
综上,卸载LVM的过程就像是一场探险,需要小心翼翼地按照地图行动,不能偏离原定的路线。希望我手绘的这张地图对你有所帮助,让你能平安顺利地完成解除LVM的挑战。记住,整个过程中你都得小心谨慎,否则就可能会丢掉紧张刺激、惊险无比的宝石。在这个探险中,我为你解答了如何卸载LVM,提供了明确的指导和路线。人生就是一场探险,希望你在这个过程中学到的不仅仅是如何卸载LVM,更多的是如何在解决问题的过程中,认识自我,挑战自我,超越自我。那么,探险家们,还在等什么,让我们开始吧!
448 35
|
10月前
|
Linux
Centos6配置阿里云yum源报错
在CentOS 6配置阿里云Yum源时,可能出现EPEL仓库访问报错(404 Not Found)。解决方法:编辑`/etc/yum.repos.d/epel.repo`文件,将`enabled`和`gpgcheck`参数设为0 ``` 此设置可解决仓库无法访问的问题。
2119 29
|
10月前
|
Ubuntu 安全 Linux
CentOS与Ubuntu中防火墙配置命令集汇
有了这些,你就能遨游在 CentOS 和 Ubuntu 的海洋中,频繁地改变你的防火墙设置,快速地应对各种安全威胁,同时也能保证你的系统可以正常工作。出发吧,勇敢的编程者,随着这些命令集的涌动,扬帆起航,走向安全的网络世界!
337 5
|
域名解析 弹性计算 Ubuntu
如何在Ubuntu和CentOS系统中挂载文件系统
本文主要为大家介绍如何在Ubuntu操作系统和CentOS操作系统中安装CPFS客户端并挂载CPFS文件系统。
916 0
如何在Ubuntu和CentOS系统中挂载文件系统
|
域名解析 弹性计算 Ubuntu
在 Ubuntu 和 CentOS 系统中挂载文件系统
本文主要为大家介绍如何在Ubuntu操作系统和CentOS操作系统中安装CPFS客户端并挂载CPFS文件系统。
1101 0
在 Ubuntu 和 CentOS 系统中挂载文件系统
|
7月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
1328 69