怎么在Linux系统中创建和使用XFS系统

怎么在Linux系统中创建和使用XFS系统,第1张

你说的是xfs文件系统

第一步:添加一块新的硬盘,假设他名字为/dev/sdb

第二步:使用fdisk命令对sdb硬盘进行分区

[root@linuxprobe ~]# fdisk /dev/sdb

Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.

Be careful before using the write command.

Device does not contain a recognized partition table

Building a new DOS disklabel with disk identifier 0x47d24a34.

敲击字符p查看分区表信息(当前为空):

Command (m for help): p

Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk label type: dos

Disk identifier: 0x47d24a34

Device Boot Start End Blocks Id System

敲击字符n创建新的分区信息:

Command (m for help): n

敲击字符p,这个p代表是主分区,e为扩展分区:

Partition type:

p primary (0 primary, 0 extended, 4 free)

e extended

Select (default p): p

敲击数字1代表分区编号为1:

Partition number (1-4, default 1): 1

磁盘的起始扇区,直接回车即可:

First sector (2048-41943039, default 2048):

键入+2G,代表该分区的大小为2G:

Using default value 2048

Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +2G

Partition 1 of type Linux and of size 2 GiB is set

再看下分区表信息(增加了sdb1分区信息):

Command (m for help): p

Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk label type: dos

Disk identifier: 0x47d24a34

Device Boot Start End Blocks Id System

/dev/sdb1 2048 4196351 2097152 83 Linux

敲击字符w,将上述分区信息保存:

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

让内核同步分区信息(此步骤仅在没有找到分区设备的情况下才需要执行,非必要动作。):

[root@linuxprobe ~]# partprobe

第3步:格式化为xfs文件系统。

在Linux系统中用于格式化的命令是mkfs,它支持的文件类型有:

cramfs,ext2,ext3,ext4,fat,msdos,xfs,btrfs,minix,vfat

使用方法非常的简单:"mkfs.文件类型名称",例如要格式分区为ext4,则命令为"mkfs.ext4 硬盘分区名称"。

使用mkfs.xfs来对/dev/sdb1进行格式化:

[root@linuxprobe ~]# mkfs.xfs /dev/sdb1

meta-data=/dev/sdb1 isize=256 agcount=4, agsize=131072 blks

= sectsz=512 attr=2, projid32bit=1

= crc=0

data = bsize=4096 blocks=524288, 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

第4步:将硬盘设备挂载到/newFS目录。

[root@linuxprobe ~]# mkdir /newFS

[root@linuxprobe ~]# mount /dev/sdb1 /newFS/

第5步:设置系统启动后自动挂载该硬盘设备。

[root@linuxprobe ~]# vim /etc/fstab

/dev/sdb1 /newFS xfs defaults 0 0

建议你看下http://www.linuxprobe.com/chapter-06.html系统学习

1、由于MBR分区表只支持2T磁盘,所以大于2T的磁盘必须使用GPT分区表

2、fdisk -l 确定2T硬盘文件,例如/dev/sdb

3、parted /dev/sdb mklabel gpt

4、添加分区命令格式:

parted device mkpart part-type [fs-type] start end

parted /dev/sdb mkpart primary xfs 0 -0

5、格式化xfs分区:

mkfs.xfs -f /dev/sdb1

6、挂载xfs分区:

mount -t xfs /dev/sdb1 /data1

7、df -h检查

Filesystem Size Used Avail Use% Mounted on

/dev/sdb1 1.7T 335G 1.3T 21% /data1

8、为了重启系统自动mount新硬盘,编辑/etc/fstab,添加

/dev/sdb1 /data1 xfs defaults0 0

系统盘:/dev/vda1   数据盘:/dev/vdb1

在数据盘上建立LVM

1. fdisk -l

2.fdisk /dev/vdb (在数据盘上创建linux_8e分区)

2.1 

2.2 同步分区表 partprobe或者重启

3.pvscan

4.pvcreate /dev/vdb1

5.pvdisplay 或 pvs

6.vgscan

7.vgcreate your_vgname /dev/vdb1 例:vgcreate vg1 /dev/vdb1

注:如已存在该vg,将新硬盘空间加入该vg使用vgextend your_vgname /dev/vdb1

8.vgdisplay 或 vgs

9.lvcreate -L 40G -n your_lvname  your_vgname 

lvcreate -l PE总个数 your_lvname  your_vgname 

例:lvcreate -L 40956M -n lv1 vg1 

因为实际容量为40G减去1个PE,每个PE是4M(用vgdisplay查看),所以Free总容量是(1024x40-4)M

lvcreate -l 76799 -n lv1 vg1 

76799是PE总个数(用vgdisplay查看)

10.lvdisplay

11.fdisk -l

12.mkfs.ext4  /dev/mapper/vg1-lv1

或 mkfs.xfs /dev/mapper/vg1-lv1   但xfs文件系统无法缩容,不建议使用

注:使用fdisk -l 来确定lv和/dev/mapper/****的对应关系,参考http://blog.csdn.net/gtlions/article/details/22440095

13.mount  /dev/mapper/vg1-lv1  /data

参考:

https://www.qcloud.com/doc/product/213/2974

-------扩容---------------------

1.备份

xfsdump -f root.dump /

xfsdump -I

2.通过fdisk的n指令增加一个分区(如增加磁盘)

fdisk -l

fdisk /dev/sdb3

partprobe 分区立即生效

3.创建物理卷PV(如增加磁盘)

fdisk -l

pvcreate  /dev/sdb3

4.vg扩容

vgextend centos /dev/sdb3

5.lv扩容

lvresize -r -L +450G  /dev/mapper/centos-root  (该处可填写lvdisplay中显示的LV Path)

或lvextend -r -l +100%FREE  /dev/mapper/centos-root

注意:-r 或--resizefs参数表示自动调用在线扩容程序,ext调用resize2fs,xfs调用xfs_growfs

6.在线扩容文件系统(上一步中如带-r或--resizefs且文件系统支持fsadm,则该步可跳过)

ext文件系统:resize2fs /dev/mapper/centos-root

xfs文件系统:xfs_growfs /dev/mapper/centos-root

7.查看 df -lh

参考:http://www.cnblogs.com/haoyufeng/p/4439192.html

---------缩容---------------

ext支持缩容,xfs不支持缩容只能扩容,

以下是ext缩容步骤

1.

xfs要缩小容量,只能先删除然后再建立lv

1.备份 

tar zcvf  home.tar.gz  /home

或xfsdump -f home.dump /home

2.卸载并查看是否有应用仍在使用对应的目录分区

umount /home

lsof -f |grep /home

注意:在跑的容器挂载卷会使用文件系统,需要lsof -f |grep 多几次

3.删除对应lv

lvdisplay

lvremove /dev/centos/home

4.建立新的lv

lvcreate -L 300GB -n home centos

5.格式化

fdisk -l

mkfs.xfs  /dev/mapper/centos-home

注:如想更换为ext4,此处使用.mkfs.ext4 /dev/mapper/centos-home

6.挂载

mount  /dev/mapper/centos-home /home

vi /etc/fstab

7.还原

tar zxvf home.tar.gz


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/bake/11378404.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存