前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >centos7上的xfs配置

centos7上的xfs配置

作者头像
小小科
发布2018-05-02 17:24:32
1.5K0
发布2018-05-02 17:24:32
举报
文章被收录于专栏:北京马哥教育北京马哥教育

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功能

代码语言:javascript
复制
[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

代码语言:javascript
复制
[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

代码语言:javascript
复制
[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

代码语言:javascript
复制
[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来增大

代码语言:javascript
复制
[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开启文件系统配额。

代码语言:javascript
复制
[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命令来查看配额信息以及为用户和目录分配配额,并验证配额限制是否生效。

代码语言:javascript
复制
[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计数)

代码语言:javascript
复制
[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
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2014-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 马哥Linux运维 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档