最近刚刚装好了一个系统,但是因为没有分好区,导致home分区过大,所以想把home分区的一大半移动到根分区里面。

1、先说一下我的环境。

安装的是centos6版本的系统,使用的默认文件系统是ext4格式的。

2、查看当前分区的大小

[root@centos6-chaofeng2 src]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
ext4 50G .4G 42G % /
tmpfs tmpfs .9G .9G % /dev/shm
/dev/sda2 ext4 477M 39M 413M % /boot
/dev/sda1 vfat 200M 264K 200M % /boot/efi
/dev/mapper/VolGroup-lv_home
ext4 G 24M G % /home

可以看出home分区的是相当大的。但是现在我不想使用这么大的home分区,因此我需要把一大部分size移动到根分区下。接下来我们看一下操作步骤:

3、首先是卸载home分区

[root@centos6-chaofeng2 src]# mount
/dev/mapper/VolGroup-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=,mode=)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda2 on /boot type ext4 (rw)
/dev/sda1 on /boot/efi type vfat (rw,umask=,shortname=winnt)
/dev/mapper/VolGroup-lv_home on /home type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
[root@centos6-chaofeng2 src]# umount /home

mount命令可以查看当前系统设备的挂载信息。

4、强制进行磁盘检测。可以检测坏块等。

[root@centos6-chaofeng2 src]# e2fsck -f /dev/mapper/VolGroup-lv_home
e2fsck 1.41. (-May-)
Pass : Checking inodes, blocks, and sizes
Pass : Checking directory structure
Pass : Checking directory connectivity
Pass : Checking reference counts
Pass : Checking group summary information
/dev/mapper/VolGroup-lv_home: / files (0.0% non-contiguous), / blocks

5、先使用针对ext文件系统的工具调整大小。resize2fs命令专门用来管理ext4文件系统的size大小的工具

[root@centos6-chaofeng2 src]# resize2fs /dev/mapper/VolGroup-lv_home 2000M
resize2fs 1.41. (-May-)
Resizing the filesystem on /dev/mapper/VolGroup-lv_home to (4k) blocks.
The filesystem on /dev/mapper/VolGroup-lv_home is now blocks long.

原来是50G的大小,现在调整为2G大小就够了。

注意:调整后的size大小必须大于原来占用整个home分区的所有文件的总大小,否则,整个home分区的数据全部丢失。

6、接着使用针对lvm管理的磁盘调整大小

[root@centos6-chaofeng2 src]# lvreduce -L 2000M /dev/mapper/VolGroup-lv_home
WARNING: Reducing active logical volume to 1.95 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce VolGroup/lv_home? [y/n]: y
Size of logical volume VolGroup/lv_home changed from 53.30 GiB ( extents) to 1.95 GiB ( extents).
Logical volume lv_home successfully resized.

7、重新挂载home分区。

[root@centos6-chaofeng2 src]# mount /dev/mapper/VolGroup-lv_home /home

8、我们将home分区从50G缩减到2G的大小。那么此时缩减出来的48G的空间怎么查看呢?

[root@centos6-chaofeng2 dev]# vgdisplay
--- Volume group ---
VG Name VolGroup
System ID
Format lvm2
Metadata Areas
Metadata Sequence No
VG Access read/write
VG Status resizable
MAX LV
Cur LV
Open LV
Max PV
Cur PV
Act PV
VG Size 111.10 GiB
PE Size 4.00 MiB
Total PE
Alloc PE / Size / 59.75 GiB
Free PE / Size / 51.35 GiB
VG UUID R2SyTs-XBry-ULRF-Qnfz-MCS8-p8CW-Cp675N

这一行的”Free  PE/Size“就表示缩减掉的那部分空间。

9、现在我们把这部分空间加到根分区上。

[root@centos6-chaofeng2 dev]# lvextend -L +51.3G /dev/mapper/VolGroup-lv_root
Rounding size to boundary between physical extents: 51.30 GiB.
Size of logical volume VolGroup/lv_root changed from 50.00 GiB ( extents) to 101.30 GiB ( extents).
Logical volume lv_root successfully resized.

10、接着使用resize2fs命令调整ext4的文件系统的size大小

[root@centos6-chaofeng2 dev]# resize2fs /dev/mapper/VolGroup-lv_root
resize2fs 1.41. (-May-)
Filesystem at /dev/mapper/VolGroup-lv_root is mounted on /; on-line resizing required
old desc_blocks = , new_desc_blocks =
Performing an on-line resize of /dev/mapper/VolGroup-lv_root to (4k) blocks.
The filesystem on /dev/mapper/VolGroup-lv_root is now blocks long.

11、到此基本就已经完成磁盘扩容了,此时再来看看各个分区大小

[root@centos6-chaofeng2 dev]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
ext4 100G .4G 90G % /
tmpfs tmpfs .9G .9G % /dev/shm
/dev/sda2 ext4 477M 39M 413M % /boot
/dev/sda1 vfat 200M 264K 200M % /boot/efi
/dev/mapper/VolGroup-lv_home
ext4 .8G 24M .7G % /home

磁盘大小基本就调整完毕了。

lvm管理卷之缩减卷大小的更多相关文章

  1. LVM管理之减少LV的大小

    LVM管理之减少LV的大小 规定动作 1.umount filesystem 2.e2fsck filesystem 3.resize2fs filesystem 4.lvredure 实例演示——— ...

  2. GNU/Linux下LVM配置管理以及快照卷、物理卷、卷组、逻辑卷的创建和删除

    LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上.文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性.最大的优点是在不损伤数据的前提下调整存储空间的大小. 本篇主要讲述L ...

  3. LVM管理及扩容(转)

    LVM磁盘管理 一、LVM简介... 1 二、 LVM基本术语... 2 三、 安装LVM... 3 四、 创建和管理LVM... 4 2、 创建PV.. 6 3、 创建VG.. 7 4、 创建LV. ...

  4. Redhat 平台下 LVM 管理说明

    Redhat 平台下  LVM 管理说明 LVM 是 Logical Volume Manager(逻辑卷管理器)的简写,它为主机提供了更高层次的磁盘存储管理能力.LVM 可以帮助系统管理员为应用与用 ...

  5. Linux权限及归属管理 磁盘管理 文件系统 LVM管理

    第五六七章   alias 查看系统别名   67 chmod 设置文件或目录的权限 -R表示以递归的方式设置目录及目录下的所有子目录及文件的权限 u:属主 g:属组 o:其他人 a:所有人 +:添加 ...

  6. lvm - Logical Volume Manager - 逻辑卷管理

    下午突然感觉 lvm 相关的知识忘记了,恰好机房里的fedora服务器上 挂了4个500GB的HDD 硬盘没有使用,就拿来操作了一番: 下面有几篇关于lvm不错的文章,进行了链接,网上也有很多不错的博 ...

  7. Linux LVM Logical Volume Management 逻辑卷的管理

    博主是一个数据库DBA,但是一般来说,是不做linux服务器LVM 逻辑卷的创建.扩容和减容操作的,基本上有系统管理员操作,一是各司其职,专业的事专业的人做,二是做多了你的责任也多了,哈哈! 但是li ...

  8. LVM(2)逻辑卷的扩展、缩减、快照卷

    一.扩展逻辑卷:lvextend   扩展逻辑卷物理边界    -L [+]# /PATH/TO/LV2G, +3G5G

  9. 自学Linux Shell8.2-linux逻辑卷LVM管理

    点击返回 自学Linux命令行与Shell脚本之路 8.2-linux逻辑卷LVM管理 Linux逻辑卷管理器软件包用来通过将另外一个硬盘上的分区加入已有文件系统,动态地添加存储空间. 1. 逻辑卷L ...

随机推荐

  1. Kafka实战-实时日志统计流程

    1.概述 在<Kafka实战-简单示例>一文中给大家介绍来Kafka的简单示例,演示了如何编写Kafka的代码去生产数据和消费数据,今天给大家介绍如何去整合一个完整的项目,本篇博客我打算为 ...

  2. 反调试手法之CreateProcess反调试

    反调试手法之CreateProcess反调试 在学习Win32 创建进程的时候.我们发现了有一个进程信息结构体. STARTUPINFO. 这个结构体可以实现反调试. 具体CreateProcess可 ...

  3. 【Shell实战】批量在多台服务器上执行命令

    功能说明:批量在多台服务器上执行命令 #!/bin/bash # ========================================== # 功能:批量在多台服务器上执行命令 # 方法: ...

  4. ASP.NET MVC5 + EF6 + LayUI实战教程,通用后台管理系统框架(3)

    前言 本节将我们自己的CSS样式替换系统自带的 开始搭建 将脚本文件夹删掉,将内容文件夹里的内容删掉,将我们自己的CSS样式文件,全部复制到内容里边 新建家庭控制器 给家庭控制器添加索引视图 指数代码 ...

  5. C++基础知识小记

    最近在帮华为接口人研究自动化部署项目AutoDeploy,把代码发给我了,不过都是用C++写的,自己虽然在大学也学了一学期的C++不过也是很菜鸟,只是学了基本语法,还远未达到实战项目,不管怎么说就是撸 ...

  6. 比较两个DataTable是否相等

    ///   <summary>        ///   比较两个DataTable内容是否相等,先是比数量,数量相等就比内容         ///   </summary> ...

  7. Hive数据倾斜

    数据倾斜是进行大数据计算时最经常遇到的问题之一.当我们在执行HiveQL或者运行MapReduce作业时候,如果遇到一直卡在map100%,reduce99%一般就是遇到了数据倾斜的问题.数据倾斜其实 ...

  8. Vim settings file on Windows

    Question: I can't believe I am typing a question for a simple thing like this but here we are. I can ...

  9. Mysql数据库多表查询

    一.介绍 首先说一下,我们写项目一般都会建一个数据库,那数据库里面是不是存了好多张表啊,不可能把所有的数据都放到一张表里面,肯定要分表来存数据,这样节省空间,数据的组织结构更清晰,解耦和程度更高,但是 ...

  10. Salesforce服务云简介

    服务云简介 Salesforce的服务云(Service Cloud)是专注于客服和呼叫中心解决方案的子系统.它是Salesforce核心CRM系统的一部分. 服务云特性 服务云提供了客户服务和呼叫中 ...