在 Linux 中从分区创建逻辑卷

在 Linux 中从分区创建逻辑卷

我有一台运行 RHEL 的服务器,其硬盘配置如下。

[root@localhost indika]# fdisk -l

Disk /dev/sda: 150.3 GB, 150323855360 bytes
255 heads, 63 sectors/track, 18275 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: 0x0008feb6

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          26      204800   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              26        1301    10240000   83  Linux
/dev/sda3            1301        1938     5120000   82  Linux swap / Solaris
/dev/sda4            1938       18276   131234816    f  W95 Ext'd (LBA)
/dev/sda5            1938       18276   131233792   83  Linux

Disk /dev/sdb: 53.7 GB, 53687091200 bytes
64 heads, 32 sectors/track, 51200 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x8f903139

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       51200    52428784    5  Extended
/dev/sdb5               1       51200    52428768   83  Linux

我在 /dev/sda5 中运行 MySQL 数据库,现在需要增加 MySQL 数据库的磁盘容量。我添加了辅助硬盘 /dev/sdb5,并计划使用 /dev/sda5 和 /dev/sdb5 创建逻辑卷。

是否可以使用这样的磁盘分区创建逻辑卷。如果可以,那么不建议这样做。

答案1

为了正确回答您的问题,是的,您当然可以在一个逻辑卷中聚合两个驱动器,但您必须执行一些额外的迁移步骤。

首先,准备第二个硬盘作为 LVM PhysicalVolume,简称 PV。其次,从此 PV 创建一个 VolumeGroup,简称 VG。然后创建一个位于 VG 上的逻辑卷(大小取决于您的需要),然后为其创建一个挂载点(或者不创建,由您决定),并使用您最喜欢的 mkfs.FS 对其进行格式化

让我们继续你的例子:

在这里我们将执行:

pvcreate /dev/sdb5
vgcreate VolGroup00 /dev/sdb5
lvcreate l+(Extends) or L+(Size) VolGroup00 LogVol00

然后:

mkdir /databases
mount /dev/mapper/VolGroup00/LogVol00 /databases
mkfs.ext4 /databases

一旦您有了这个目录,您就可以将您的数据库放入其中(由您执行热迁移或服务中断的手动迁移)。

然后,您将对 /dev/sda5 磁盘执行相同的操作。

fdisk -l /dev/sda5
t
8e
w

然后:

pvcreate /dev/sda5
vgextend VolGroup00 /dev/sda5
lvextend l+(Extends an int) or L+(Size in MB/GB) VolGroup00 LogVol00

最后:

resize2fs /databases

它将执行在线调整大小,因此有时在旧版本的 RHEL(如 4.x 和某些 5.x)上可能会失败

所以现在,如果你做了:

df -h

数据库的挂载点将是 LogVol00 的大小,它将适合您在创建期间指定的大小,并且不一定是 VolGroup00 的总量。

重要警告,我没有检查 LV 部分的命令行的准确性,因此之前使用命令--help 仔细检查,但应该没问题。

答案2

您可以使用 LVM 创建组,如指南。但是,遗憾的是您无法这样做并保留数据,因为两个磁盘都需要格式化为 LVM。

相关内容