1. LVM逻辑卷管理

2. ext4文件系统

2.1 扩容CentOS6的根文件系统(ext4)

根文件系统在 /dev/VolGroup/lv_root 逻辑卷上,文件系统类型为ext4,大小为10G,现在要将其扩容成20G。

1)调整分区类型为8e

# 调整分区类型为LVM,也就是8e类型
fdisk /dev/sdb
# 选定分区后使用 t 选项,然后选择8e类型 # 通知内核重读分区表
partx -a /dev/sdb # 查看
cat /proc/partitions
lsblk

2)进行扩容

# 1. 创建pv
pvcreate /dev/sdb7 # 2. 对根 / 所在的vg进行扩容,将/dev/sdb7这个pv添加到VolGroup这个vg中去
vgextend VolGroup /dev/sdb7 # 3. 对根 / 所在的lv进行扩容
# 先通过vgdisplay命令查看对应vg中空闲的pe数量,然后再将这些空闲的pe添加到lv中去
lvextend -l +2194 /dev/VolGroup/lv_root # 4. 扩容文件系统
resize2fs /dev/VolGroup/lv_root # 自动扩容,将可分配的空间全部分配完
# 或者扩容成指定的大小 resize2fs /dev/VolGroup/lv_root 15G # 5. 查看是否扩容成功
df -hT
  • 注意:LV扩容前最好先卸载挂载的设备,然后再使用 lvextend 进行扩容,这里因为是对根文件系统进行扩容,故而没有卸载

2.2 收缩ext4文件系统

/dev/sdb6 和 /dev/sdb4 一共分区大小为5G,分区类型为8e,它们被添加到了卷组VolGroup中,并做成 lv_mnt 逻辑卷挂载在了 /mnt 目录。

现在要将 lv_mnt 缩小成3G,并且不能损坏其数据

# 1. 卸载设备
umount /mnt # 2. 进行磁盘检查
e2fsck -f /dev/VolGroup/lv_mnt # 3. 收缩文件系统
resize2fs /dev/VolGroup/lv_mnt 3G # 4. 收缩LV
lvreduce -L -2G /dev/VolGroup/lv_mnt # 5. 将PE移动到空闲的地方
### 查看哪些PV上有空闲的PE
pvdisplay | grep 'PV Name\| Free'
### 将PE移动到有空闲PE的PV上
pvmove /dev/sdb6:0-99 /dev/sdb4
# 6. 从VG中移除PV
vgreduce VolGroup /dev/sdb6 # 7. 移除该PV
pvremove /dev/sdb6

3. xfs文件系统

3.1 扩容CentOS7的根文件系统(xfs)

# 1. 与CentOS6一样,先要创建一个8e格式磁盘分区
fdisk /dev/sdb # 2. 创建PV
pvcreate /dev/sdb5 # 3. 将pv添加到根所在的VG中
vgextend centos /dev/sdb5 # 4. 扩容LV
# 特别注意:在扩容LV之前最好要先卸载设备,这里没有卸载是因为扩容的根文件系统
lvextend -l +2048 /dev/centos/root # 5. 扩容xfs文件系统
xfs_growfs /dev/centos/root
# 6. 查看是否扩容成功
df -hT

3.2 收缩xfs文件系统

xfs文件系统只能扩容而无法收缩,如果要想收缩,可以先备份,之后再进行减容重建,再恢复数据。

1)备份

# xfsdump的方式备份
xfsdump -f /data/home.img /home
-f 备份保存的位置
# cp直接复制文件的方式备份
cp -aR /home /data/home

2)减容重建

# 1. 卸载home目录
umount /home/ # 2. 删除 lv_home
### 删除之前要备份或者将PE移动到空闲的PV中
lvremove /dev/centos/home # 3. 扩容根所在的的 lv
lvresize -L 20G /dev/centos/root # 4. 扩容根文件系统
xfs_growfs /dev/centos/root # 5. 重建home的LV
lvcreate -L 1G -n home centos # 6. 格式化并挂载
mkfs.xfs /dev/centos/home
mount /dev/centos/home /home # 7. 还原数据
xfsrestore -f /data/home.img /home
  • 注意:尽量避免对重要数据所在的文件系统做收缩操作

ext4和xfs文件系统的扩容和收缩的更多相关文章

  1. linux -- 扩容 /home 空间( xfs文件系统分区扩容指定挂载点)

    问题: /home空间容量不够使用,扩容卷组,扩容挂载点 方法: 1. 确认有可用的物理磁盘 fdisk -l -- 查看磁盘信息 df -h -- 查看当前挂载信息 vgs -- 查看当前卷组信息 ...

  2. 裸磁盘上ext4与xfs在线扩容,非LVM

    虚拟机添加一个20G的硬盘,磁盘为sdb,分区为ext4 格式化一个5Gib的磁盘出来,用dd命令写入4G数据. 一.需求是容量为5G的磁盘,文件系统为ext4的sdb1扩容到10G. 操作步骤为 1 ...

  3. Linux日志文件系统(EXT4、XFS、JFS)及性能分析

    Ext4 ReiserFS Btrfs 等七种文件系统性能比拼 自上一篇<Ext2 v.s. Ext3 v.s. Ext4 性能比拼> 发布以来,社会各界纷纷来电来函,给出了“Ext4 我 ...

  4. 文件系统类型(ext4、xfs、fat32、vfat、ntfs、....)

    Linux 1.Linux:存在几十个文件系统类型:ext2,ext3,ext4,xfs,brtfs,zfs(man 5 fs可以取得全部文件系统的介绍) 不同文件系统采用不同的方法来管理磁盘空间,各 ...

  5. ext与xfs文件系统比较与总结

    centos7.0开始默认文件系统是xfs,centos6是ext4,centos5是ext3 1.EXT2简介 EXT2第二代扩展文件系统(英语:second extended filesystem ...

  6. 关于ext3,ext4,xfs和btrfs文件系统性能对比

    关于ext3,ext4,xfs和btrfs文件系统性能对比 应为原文:http://www.ilsistemista.net/index.php/linux-a-unix/6-linux-filesy ...

  7. ext3,ext4,xfs和btrfs文件系统性能对比

    应为原文:http://www.ilsistemista.net/index.php/linux-a-unix/6-linux-filesystems-benchmarked-ext3-vs-ext4 ...

  8. 16_用LVM扩展xfs文件系统(当分区空间不够时)

    1. 查看当前卷组空间(volume group)使用情况 [root@localhost ~]# vgdisplay 从下面的代码中发现剩余空间为0 --- Volume group --- VG ...

  9. xfs文件系统磁盘配额

    引言 这篇文章简单介绍一下xfs文件系统的磁盘配额配置. 文章目录 0×1.开启分区磁盘配额 0×2.使用xfs_quota命令配置磁盘配额 0×1.开启分区磁盘配额 对于ext4文件以前的文件系统, ...

随机推荐

  1. Eclipse中构造方法自动生成

    代码中点击右键(快捷键Ctrl+Alt+S) ->Source ->Generate Constructor using Fields... ->默认全选(可选择需要作为构造方法参数 ...

  2. TIOBE 11月指数:C语言居首,稳居宝座,Python直逼第二!

    官方网址:https://www.tiobe.com/tiobe-index/   ​ 这是自近20年前TIOBE指数开始以来,Java和C第一次不再占据前两位.C仍然是第一位的,但是现在第二个位置是 ...

  3. 在运行tsc编译.ts文件时,“因为在此系统上禁止运行脚本” 怎么解决?

    tsc : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\tsc.ps1,因为在此系统上禁止运行脚本.有关详细信息,请参阅 https:/go.m ...

  4. Android动画系列之属性动画

    原文首发于微信公众号:jzman-blog,欢迎关注交流! 属性动画相较帧动画和补间动画更强大,帧动画和补间动画只能应用于 View 及其子类,而属性动画可以修改任何对象的属性值,属性值可在指定的一段 ...

  5. VS2019配置C+++mingW32配置

    两个安装教程博客 http://t.sg.cn/yq22mn http://t.sg.cn/wsavo0 基于调试报错,是因为文件夹是中文,贴一个详细的博客:http://t.sg.cn/3j5e4z

  6. form 表单上传文件及传输数据的编码格式

    form中的 action  控制请求往什么地方提交 method  请求方式 如果不写默认是get 请求 如果想传文件 必须要把默认的urlencoded的改成enctype="multi ...

  7. 20190713_windows 2008 R2在启动网站时报错_另一个程序正在使用此文件,进程无法访问

    80端口已经被占用了; 换个端口就好了, 如果你是云服务器, 记得控制台也要开放对应的端口

  8. Java面试专题-多线程(3)-原子操作

  9. C#实例化对象的三种方式及性能对比

    前言 做项目过程中有个需求要实例化两万个对象并添加到List中,这个过程大概需要1min才能加载完(传参较多),于是开启了代码优化之旅,再此记录. 首先想到的是可能实例化比较耗时,于是开始对每种实例化 ...

  10. AcWing 326. XOR和路径

    大型补档计划 题目链接 如果整体来做,发现既有加法,也有整体异或,这样不容易搞. 考虑异或,各个位置互不干扰,按位考虑一下. 枚举每一位 \(k\) 发现如果设 \(f[u]\) 为这一位的期望结果还 ...