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

[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

[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

[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

[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来增大

[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开启文件系统配额。

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

[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计数)

[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

centos7的xfs配置的更多相关文章

  1. [原创]Centos7 从零配置Nginx+PHP+MySql

    序言 这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先 ...

  2. Centos7下安装配置Redsocks

    Redsocks是一个开源的网络程序,代码依赖开源的libevent网络库.Redsocks允许你将所有TCP连接重定向到SOCKS或HTTPS代理,比如Shadowsocks(Centos7下安装配 ...

  3. Centos7安装并配置mysql5.6完美教程

    Centos7安装并配置mysql5.6完美教程 Centos7将默认数据库mysql替换成了Mariadb,对于我们这些还想使用mysql的开发人员来说并不是一个好消息.然而,网上关于Linux安装 ...

  4. Hadoop(一)Centos7虚拟机网络配置

    Centos7虚拟机网络配置(桥接模式) 一 VirtualBox提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式). 1 桥接模式(br ...

  5. Centos7中hadoop配置

    Centos7中hadoop配置 1.下载centos7安装教程: http://jingyan.baidu.com/article/a3aad71aa180e7b1fa009676.html (注意 ...

  6. [Centos7]无法访问配置好的nginx

    Centos7无法访问配置好的nginx 临时生效 # 重启虚拟机,将失效 iptables -I INPUT -p TCP --dport 80 -j ACCEPT 永久有效 # 在防火墙中开放80 ...

  7. VirtualBox安装CentOS7的网络配置

    VirtualBox安装CentOS7的网络配置 这几天在本机VirtualBox安装CentOS时遇到了网络的坑... VirtualBox的下载地址:https://www.virtualbox. ...

  8. 安装centos7启动项配置

    安装centos7启动项配置 1.将 setparams 'Install CentOS Linux 7' linuxefi/images/pxeboot/vmlinuz inst.stage2=hd ...

  9. 基于CentOS7系统一键配置Aria2 实现服务器离线下载工具

    我们有些网友购买的海外VPS主机并不是用来做网站的,而是用来作为下载资源工具使用的.确实用这样的工具搭建之后是比本地下载速度快,因为有些资源.软件等是海外资源,而且挂载在服务器上不占用本地的资源.在这 ...

随机推荐

  1. jQuery颜色面板插件

    /** * jQuery颜色面板插件 * * 使用方法:input框的id默认为inputObj,button框的id默认为btnObj,也可以自定义aaa,bbb * 1.初始化颜色面板:$.col ...

  2. MVC 嵌套页面Html.Partial

    return View()相关简介 在asp.net mvc中返回View时使用的是ViewResult,它继承自ViewResultBase 同时它还有个兄弟PartialViewResult.一个 ...

  3. VC 模拟CMD 匿名管道

    #include "stdafx.h" #include <Windows.h> #include <stdio.h> #include <stdli ...

  4. QT 文本html显示格式的问题,如在QTextBrowser.setText用tr(),其中为html格式

    QObject::tr("<h1><font color = green>%1</font>的人品指数:<font color = orange&g ...

  5. 新东方雅思词汇---7.1、probation

    新东方雅思词汇---7.1.probation 一.总结 一句话总结:prob(检查,试验)+ation 英 [prə'beɪʃ(ə)n]  美 [pro'beʃən]  n. 试用:缓刑:查验 短语 ...

  6. 理解面向消息的中间件和 JMS

    本章知识点: 企业消息和面向消息的中间件 理解 Java Message Service(JMS) 使用 JMS APIs 发送和接收消息 消息驱动 bean 的一个例子 简介 一般来说,掌握了企业级 ...

  7. 动态链接库(dll)文件的动态调用(使用动态链接库,解析Wis文件--测井数据文件的一种)

    在画出井眼轨迹后,老师又给了三口井的数据,不过这次给的数据是WIS格式的,可以使用一个动态链接库进行解析,解析结束后会生成一个固定格式的txt文件,然后再读取txt文件,画井眼轨迹. 学长给了一个可以 ...

  8. 2D游戏摄像机跟随不出界

    做2D游戏的时候碰上摄像机要跟随人物时要防止摄像机看到界面外的黑幕,直接上代码. using System.Collections; using System.Collections.Generic; ...

  9. 使用 docker 拉取镜像和创建容器-nginx

    本文主要分享通过从docker  hub上获取nginx镜像 1.首先查找nginx镜像 [root@node1 ~]# docker search nginx NAME DESCRIPTION ST ...

  10. shell 学习之脚本编写1

    脚本要求: 执行脚本后 接受输入1,显示当前时间,并提示是否继续选择. 接受输入2,显示CPU负载,并提示是否继续选择.  接受输入3,显示剩余内存,并提示是否继续选择. 接受输入0,退出脚本. ·· ...