Centos 大于4TB 硬盘LVM 水平扩容

本文介绍了如何在CentOS系统中,针对大于4TB的硬盘使用LVM进行水平扩容。通过Parted进行分区,将新硬盘添加到LVM卷组,然后扩展逻辑分区,并使用resize2fs更新文件系统大小,最终实现硬盘容量的增加。

环境

名称 属性
CPU x5650
内存 4G
磁盘 20G+4TB

这时候,我们假设服务器已经有如下东西:

  • 安装好了Parted(yum install parted)

  • 分区容量已经告捷,公司为服务器增加了一块4T硬盘用来增加容量!

  • 除了/boot分区外,其余都为LVM 模式的扩展逻辑分区

软件安装与信息查看

首先查看软件是否安装:

[root@Candy ~]# rpm -qa | grep lvm
lvm2-libs-2.02.118-2.el6.x86_64
lvm2-2.02.118-2.el6.x86_64
[root@Candy ~]# lv
lvchange     lvextend     lvmdiskscan  lvmsar       lvresize
lvconvert    lvm          lvmdump      lvreduce     lvs
lvcreate     lvmchange    lvmetad      lvremove     lvscan
lvdisplay    lvmconf      lvmsadc      lvrename
[root@Candy ~]# rpm -qa | grep parted
parted-2.1-29.el6.x86_64

软件准备好后顺便查看下 VM 硬件:

[root@Candy ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_candy-root
                      7.3G  231M  6.7G   4% /
tmpfs                 1.9G     0  1.9G   0% /dev/shm
/dev/sda1             477M   30M  422M   7% /boot
/dev/mapper/vg_candy-home
                      3.9G  8.0M  3.7G   1% /home
/dev/mapper/vg_candy-usr
                      3.9G  382M  3.3G  11% /usr
/dev/mapper/vg_candy-var
                      3.9G   63M  3.6G   2% /var
[root@Candy ~]# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0006e71c
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              64        2611    20458496   8e  Linux LVM
Disk /dev/sdb: 4398.0 GB, 4398046511104 bytes
255 heads, 63 sectors/track, 534698 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/mapper/vg_candy-root: 8061 MB, 8061452288 bytes
255 heads, 63 sectors/track, 980 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/mapper/vg_candy-usr: 4294 MB, 4294967296 bytes
255 heads, 63 sectors/track, 522 cylinders
Units = cylinders of 16065 * 512 
<think>首先,用户的问题是:“我想使用gdisk工具进行磁盘扩容操作 请问gdisk 扩容磁盘 分区调整”。这涉及到使用gdisk工具进行磁盘分区调整以扩容。 回顾系统级指令: - 所有行内数学表达式必须使用$...$格式。 - 独立公式必须使用$$...$$格式并单独成段。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识。 - 回答结构清晰,帮助用户逐步解决问题。 用户的问题是关于磁盘扩容的,具体是使用gdisk工具。参考提供的引用: - 引用[1]:提到fdisk适用于2T及以下磁盘,gdisk用于更大容量。 - 引用[2]:gdisk支持任何大小盘的分区,最大支持128个主分区。 - 引用[3]:gdisk用于扩容5T的例子。 - 引用[4]:磁盘分区、扩容、缩容,提到gdisk可以分128个主分区。 - 引用[5]:gdisk扩容磁盘9T的具体命令序列。 用户的问题是关于“gdisk 扩容磁盘 分区调整”,所以我需要提供如何使用gdisk进行磁盘扩容的步骤,包括分区调整。 关键点: - gdisk用于GPT分区表,支持大于2T的磁盘。 - 扩容可能涉及添加新分区、调整现有分区大小或使用逻辑卷管理(LVM)。 - 从引用[5]看,扩容过程包括使用gdisk创建分区,然后使用pvcreate、vgextend、lvextend等命令来扩展逻辑卷。 用户说“分区调整”,这可能意味着调整现有分区大小或添加新分区。在GPT分区表中,gdisk可以用于调整分区大小,但通常扩容是通过添加新分区并扩展文件系统来实现的,尤其是对于已存在的分区。 在Linux中,直接调整分区大小可能有限制,特别是对于已挂载的分区。更常见的方法是: 1. 添加新磁盘或使用未分配空间。 2. 使用gdisk创建新分区。 3. 如果使用LVM,将新分区添加到卷组并扩展逻辑卷。 4. 扩展文件系统。 用户指定“gdisk 扩容磁盘”,所以焦点在gdisk部分。 步骤概述: 1. 准备:备份数据,确保磁盘有未分配空间。 2. 使用gdisk创建新分区。 3. 格式化新分区(如果需要)。 4. 如果使用LVM,将新分区添加到卷组并扩展逻辑卷和文件系统。 5. 如果不使用LVM,直接挂载新分区或扩展现有分区(但后者更复杂)。 从引用[5]:具体命令包括: - gdisk -l 或 fdisk -l 查看磁盘信息。 - gdisk /dev/sdb 进入交互模式。 - 创建新分区(n)。 - 设置分区类型(例如,Linux LVM)。 - 保存(w)。 - 然后 pvcreate /dev/sdb1 - vgextend centos /dev/sdb1 - lvextend -L +9T /dev/centos/root - xfs_growfs /dev/centos/root 或 resize2fs 对于ext4文件系统。 用户可能没有指定是否使用LVM,所以我应该覆盖两种情况。 回答结构: - 介绍gdisk和适用场景。 - 详细步骤如何使用gdisk进行分区调整以扩容。 - 包括命令示例。 - 注意事项。 - 生成相关问题。 使用中文回答。 引用标识:在回答中引用参考段落时添加[^n]。 参考引用: - 引用[1]:fdisk和gdisk的区分。 - 引用[2]:gdisk的优势。 - 引用[3]:gdisk用于大容量。 - 引用[4]:分区操作。 - 引用[5]:具体命令。 在回答中自然地融入这些引用。 最终回答应包括: 1. 清晰步骤。 2. 代码块显示命令。 3. 相关问题。</think>### 使用gdisk进行磁盘扩容与分区调整指南 在Linux系统中,`gdisk`工具专用于管理GPT分区表(GUID Partition Table),适用于大于2TB的磁盘扩容操作[^2]。与传统的`fdisk`相比,`gdisk`支持更大容量(最大128个主分区)和更灵活的分区调整[^4]。本指南将逐步说明如何使用`gdisk`进行磁盘扩容、分区创建或调整。**注意:操作前务必备份重要数据,并确保磁盘有未分配空间(例如通过添加新磁盘或缩容其他分区)。** #### 步骤1: 确认磁盘信息 首先,使用以下命令查看当前磁盘和分区情况,识别需要扩容的磁盘(如`/dev/sdb`): ```bash lsblk # 查看磁盘和分区树状结构 sudo gdisk -l /dev/sdb # 查看指定磁盘的GPT分区详情,包括未分配空间[^3] ``` - **关键点**:确保目标磁盘有足够的未分配空间(例如通过云服务扩展磁盘大小或物理添加硬盘)。如果磁盘未初始化,`gdisk`会自动将其转换为GPT格式[^2]。 #### 步骤2: 使用gdisk创建或调整分区 进入`gdisk`交互模式,创建新分区或调整现有分区(**注意:直接调整分区大小风险较高,推荐添加新分区后扩展文件系统**): ```bash sudo gdisk /dev/sdb # 进入gdisk交互界面 ``` 在交互界面中,执行以下操作(以添加新分区为例): - 输入`n`创建新分区。 - 选择分区号(例如默认回车)。 - 设置起始扇区(默认回车,使用未分配空间)。 - 设置结束扇区或大小(例如`+5T`表示添加5TB空间)。 - 输入`t`设置分区类型:选择`8300`(Linux文件系统)或`8e00`(Linux LVM,推荐用于灵活扩容)[^4]。 - 输入`w`保存并退出(或`q`放弃更改)。 **示例输出片段**: ``` Command (? for help): n Partition number (1-128, default 1): First sector (34-209715166, default = 2048) or {+-}size{KMGTP}: Last sector (2048-209715166, default = 209715166) or {+-}size{KMGTP}: +5T Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): 8e00 Changed type of partition to 'Linux LVM' Command (? for help): w ``` > **说明**:若需调整现有分区大小(如扩展分区),可使用`d`删除旧分区后重建(但需谨慎,可能导致数据丢失)。更安全的方法是添加新分区后通过LVM扩展[^5]。 #### 步骤3: 格式化分区并扩展文件系统 根据分区用途,选择以下路径: - **场景A: 不使用LVM(直接挂载新分区)** ```bash sudo mkfs.xfs /dev/sdb1 # 格式化新分区(XFS文件系统,替换为ext4等) sudo mount /dev/sdb1 /mnt/new_disk # 挂载到目录 echo "/dev/sdb1 /mnt/new_disk xfs defaults 0 0" | sudo tee -a /etc/fstab # 开机自动挂载 ``` - **场景B: 使用LVM(推荐,支持在线扩容)** ```bash sudo pvcreate /dev/sdb1 # 将新分区初始化为物理卷[^5] sudo vgextend <卷组名> /dev/sdb1 # 添加到现有卷组(如`centos`) sudo lvextend -L +5T /dev/<卷组名>/<逻辑卷名> # 扩展逻辑卷(如`/dev/centos/root`) sudo resize2fs /dev/<卷组名>/<逻辑卷名> # 扩展ext4文件系统(或`xfs_growfs`用于XFS) ``` **示例命令**(基于引用[5]): ```bash sudo pvcreate /dev/sdb1 sudo vgextend centos /dev/sdb1 sudo lvextend -L +5T /dev/centos/root sudo xfs_growfs /dev/centos/root # 若文件系统为XFS df -Th # 验证空间扩展 ``` #### 注意事项 1. **分区表兼容性**:`gdisk`仅适用于GPT磁盘。若磁盘原为MBR,转换时需备份数据(使用`sgdisk -g /dev/sdb`)[^2]。 2. **LVM优势**:LVM支持动态调整,避免直接分区操作的风险[^5]。 3. **文件系统限制**:调整后需扩展文件系统(如`resize2fs`或`xfs_growfs`),否则新增空间不可用。 4. **大容量支持**:`gdisk`可处理超过2TB的磁盘,而`fdisk`仅适用于小容量[^1][^3]。 #### 验证结果 运行以下命令确认扩容成功: ```bash lsblk # 查看分区大小 df -Th # 查看文件系统使用率 sudo vgdisplay # 检查LVM卷组空间(如适用) ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值