朋友今天突然找我,说是要把他的 Linux 系统的根分区磁盘扩大。接到这个问题,我马上开始查看下系统情况。是一台 CentOS 6.6 的系统,有两块磁盘分别是:/dev/vda1 是 15G 的根卷,/dev/vda2 是 1G 的交换分区,而整个 /dev/vda 磁盘总大小是 21G(有 5G 的 /dev/vda5 空闲空间)。现在要求增大/dev/vda1 分区。
有三个解决方案:
第一个就是将 /dev/vda 上的空闲分区(/dev/vda5)随意作为 /home、/var 之类的挂载;
第二个就是做符号链接到 /dev/vda1,5G 加上 15G 也勉强扩大了;
最后一种也就是最麻烦的,做一个 LVM,将数据迁移到 LVM、将 /dev/vda1 加入到 LVM,最后实现系统的扩容。
朋友选择了最后一种,后面测试数据备份我用了很多种办法,网上推荐了 dd 以及 tar,最后我还尝试了 cpio、backup、dump,然后发现最后一种 dump 的性能远远高于 dd。
本次教程也是从头再试验一遍,并且记录好便己便人。
兄弟连Linux培训
友情提示~本文思路仅供参考!应该根据你的实际情况予以调整。如果在生产服务器上进行,请务必做好整个系统的全盘备份。操作不慎,有可能导致整个系统数据的丢失!本文作者及本站不对任何可能出现的风险承担任何责任。
一、预备知识
了解什么是 dd 以及什么是 dump?
dd 命令用于复制一个设备/分区,原样输出到另外一个文件/设备/分区。
dump 命令用于备份 ext2 或者 ext3 文件系统。可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。
备份好了用什么恢复?
restore 命令是 dump 命令的逆过程,用于还原dump 命令生成的备份文件。
二、环境模拟
首先要求有一个可以正常启动的分区,然后要有剩余空间!(这里有两种情况:一个是某分区,一个是新磁盘。两者类似,为了方便本文使用的是新磁盘的方式。)
使用虚拟机模拟了服务器的真实情况:/dev/sda1 是正常系统启动分区、/dev/sdb1 是新的磁盘分区。(必须注意 /dev/sdb1 的容量大于/dev/sda1)
三、实战部分
1、首先备份 MBR 主引导记录
dd if=/dev/sda1 of=/mnt/lvm/mbr.bin bs=512count=1
2、创建 LVM 卷
首先卸载 /dev/sdb1,然后在其上用 pvcreate 创建物理卷和 vgcreate 创建卷组 vgtest:
umount /dev/sdb1
pvcreate /dev/sdb1
vgcreate vgtest /dev/sdb1
卷组创建好之后,可以用 vgs 命令查看卷组。
用 lvs 命令查看逻辑卷,这个时候我们还没有任何逻辑卷。开始创建逻辑卷和文件系统:
lvcreate -L 25G -n lvtest vgtest
mkfs.ext4 /dev/mapper/vgtest-lvtest
3、备份 / 目录和 /boot 目录
首先备份 / 目录。在 dump 命令前后输入的 date 命令是为了查看备份使用的时长。
date && dump -0f/mnt/lvm/rootfs-20160824.bak / && date
保险起见我们也备份一下/boot 目录:
date && dump -0f/mnt/lvm/boot-20160824.bak /boot && date
4、尝试恢复
restore -rf rootfs-20160828.bakboot-20160824.bak
5、修改启动文件
注意:这里根分区(启动分区)需要更改成实际要启动的磁盘。否则不更改的话系统会出现应该使用 /dev/sdb1 LVM ,却使用了原来的 /dev/sda1 的情况!
首先通过 blkid 查看分区的 UUID:
blkid
然后修改 /mnt/lvm/etc/fstab 文件(切换了跟分区之后将变成 /etc/fstab)中的根分区指向:
vim /mnt/lvm/etc/fstab
chroot 到新的分区里面,然后检查相应的分区设置。
chroot /mnt/lvm
注意:要 chroot 进入目录查看是否正确!并且确定防火墙 SELinux 等的设置,最最最重要的是 OpenSSH 要打开的!
6、恢复 MBR 主引导记录
dd if=./mbr.binof=/dev/mapper/vgtest-lvtest
7、修正 GRUB 引导
这样可以让新磁盘可以脱离源磁盘的引导。
chroot 进入新磁盘。并重建 /boot 目录:
chroot /mnt/lvm
ls /boot/
rm -rf /boot/*
yum install grub -y
然后输入:
root (hd1,0)
setup (hd1)
quit
这样就将 GRUB 引导指向了新的磁盘。
重启可以看看是否有问题。
P.S.参与活动就可以获得包邮的linux光盘教程一份哦:http://www.hdb.com/party/8f84u.htmll
分享到:
相关推荐
通过这个实验,你可以深入了解LVM的工作原理,掌握如何创建、管理和维护LVM分区,这对于日常的Linux系统管理和数据中心的存储优化至关重要。在实践中不断操作和熟悉这些命令,能帮助你更有效地处理存储需求,提升...
LVM是一种用于Linux系统的磁盘管理技术,它可以将多个物理磁盘或分区组合成一个或多个逻辑卷,提供灵活的存储空间管理和扩展能力。LVM的主要组成部分包括: - **物理卷(Physical Volume,PV)**:可以是整个硬盘、...
Linux 逻辑卷管理 LVM 是一种完美的解决方案,可以在零停机前提下方便地调整文件系统的大小,並且可以跨越多个硬盘驱动器的文件系统。 二、 LVM 基本术语 LVM 是在磁盘分区和文件系统之间添加的一个逻辑层,来为...
Linux LVM,全称为Logical Volume Manager,是Linux操作系统下的一种磁盘管理工具,它提供了一种灵活、可扩展的方式来管理磁盘存储空间。LVM允许系统管理员创建和管理逻辑卷,这些逻辑卷可以跨越多个物理硬盘,从而...
Linux系统逻辑盘卷管理LVM(Logical Volume Manager)技术是一种高级的磁盘管理机制,它提供了灵活的磁盘分区管理方案,允许在不中断服务的情况下调整文件系统的大小,并支持跨多个硬盘的文件系统。LVM的主要优点...
Linux系统逻辑盘卷管理LVM(Logical Volume Manager)是一种先进的磁盘管理机制,它为Linux环境提供了更加灵活的磁盘分区方案。LVM允许管理员在物理磁盘和分区之上创建一个逻辑层,使得磁盘管理和扩展变得更加简单。...
在Linux系统管理中,合理规划磁盘分区是一项至关重要的任务。系统管理员不仅要考虑当前的磁盘需求,还需要预测未来可能出现的空间需求增长。传统的磁盘分区方法在面对磁盘空间不足时往往显得力不从心,通常的解决...
在本文中,我们将介绍如何在 Linux 系统中添加新的硬盘,并使用 LVM 技术来管理硬盘空间。我们将详细介绍添加新的硬盘、初始化物理卷、创建逻辑卷组、创建逻辑卷、格式化逻辑分区、挂载逻辑卷、扩展逻辑卷等步骤。 ...
通过学习和实践这个Linux AS5.0的LVM录像,你将能够熟练地运用LVM来管理和优化你的Linux服务器的存储资源,提高系统的稳定性和效率。同时,LVM的知识也能帮助你在面对复杂的存储需求时做出更灵活和高效的设计。
linux 重装系统后 挂载原有LVM磁盘分区 linux 重装系统后 挂载原有LVM磁盘分
Linux 操作系统中,逻辑卷管理器(Logical Volume Manager,LVM)是一种高级存储管理技术,允许用户动态地分配和管理存储空间。LVM 由三个主要组件组成:物理卷(Physical Volume,PV)、卷组(Volume Group,VG)和...
Linux系统中的LVM(Logical Volume Manager)是一种先进的磁盘管理技术,它允许系统管理员在物理磁盘之上创建逻辑卷,从而实现磁盘空间的动态扩展、收缩、迁移和备份等功能。LVM的主要优势在于它的灵活性和可扩展性...
LVM为Linux系统提供了强大的磁盘管理和存储扩展能力,使得管理员可以更有效地利用硬件资源,同时降低了因存储规划不当而导致的系统维护成本。通过熟练掌握LVM,系统管理员可以更好地应对复杂的企业级存储管理挑战。
Linux磁盘管理中的LVM(Logical Volume Manager)是一种高级的磁盘管理技术,它允许管理员在多个物理磁盘上创建虚拟的逻辑卷,以便更灵活地管理和分配...了解和熟练掌握LVM的使用,对于Linux系统管理员来说至关重要。
- **/boot 分区**:为了确保系统的稳定性,通常不将 /boot 分区放在卷组内,因为大多数引导加载程序无法识别 LVM 结构。 - **备份策略**:使用 LVM 时,应该制定合理的备份策略,确保数据的安全性。 #### 九、总结 ...
掌握LVM的基本概念和操作对于任何从事Linux系统管理的人来说都是至关重要的技能。 通过本文的学习,读者应该能够理解LVM的基本原理,并具备使用LVM进行存储管理的基础知识。希望这些信息对大家有所帮助。
下面我们将详细介绍如何在Linux系统中使用LVM来扩展根分区硬盘。 首先,我们需要添加一个新的磁盘到系统中。这通常通过硬件操作完成,如在云环境中增加虚拟磁盘。例如,添加了一个300GB的磁盘/dev/vdb。 接下来,...
Linux LVM(Logical Volume Manager,逻辑卷管理)是Linux操作系统中一种高级的磁盘管理工具,它提供了一种灵活的方式来组织存储空间,使得磁盘管理更为便捷和高效。本资料包整合了关于LVM管理的各种知识,涵盖了从...