使用LVM添加磁盘

我确信之前在这里已经回答了(我甚至在这里找到了一个指南,但似乎有点不稳定和不完整)但我想知道是否有人可以帮助我或者至少指出我正确的方向得到我正在尝试完成的事情。

基本上我在20GB磁盘上安装了Ubuntu 14.04(通过“引导 – 使用整个磁盘并设置LVM”)。 然后我在机器上添加了一个干净的80GB磁盘,它被检测为’sdb’。

基本上我的问题是,我希望能够将分配的新磁盘空间(80GB)添加/组合到我的机器中,这样它就可以显示一个驱动器(100GB),而不是显示两个驱动器(20GB和80GB)。 。 我并不担心RAID或任何其他特殊插件。

我对Linux有些新意,但我知道我需要使用LVM来实现这一目标。

如果有人可以帮助我或将我链接到一个有用的指南/教程,我将非常感谢! 不确定是否需要这个,但这是我的’fdisk -l’和’/ etc / fstab’输出:

fdisk输出(缩短):

Disk /dev/sda: 21.5 GB, 21474836480 bytes Device Boot Start End Blocks Id System /dev/sda1 * 2048 499711 248832 83 Linux /dev/sda2 501758 41940991 20719617 5 Extended /dev/sda5 501760 41940991 20719616 8e Linux LVM Disk /dev/sdb: 85.9 GB, 85899345920 bytes Disk /dev/sdb doesn't contain a valid partition table Disk /dev/mapper/ubuntu--vg-root: 20.4 GB, 20392706048 bytes Disk /dev/mapper/ubuntu--vg-root doesn't contain a valid partition table Disk /dev/mapper/ubuntu--vg-swap_1: 801 MB, 801112064 bytes Disk /dev/mapper/ubuntu--vg-swap_1 doesn't contain a valid partition table 

/ etc / fstab(缩写):

 #       /dev/mapper/ubuntu--vg-root / ext4 errors=remount-ro 0 1 # /boot was on /dev/sda1 during installation UUID=26710773-7a64-4f34-a34e-0057cb1739d7 /boot ext2 defaults 0 2 /dev/mapper/ubuntu--vg-swap_1 none swap sw 0 0 

在网上查看随机指南和教程的组合之后,我能够成功地将磁盘添加到我的Ubuntu Server 14.04计算机上,并且基本上将其设置为所以我将多个硬盘驱动器显示为单个驱动器。 为此,我使用了LVM。

为了帮助其他可能想要在某个时候做到这一点的人,我会在这里发布我的所作所为。


这些步骤假设您基本上从头开始,除非已经在您的计算机上安装了Ubuntu(通过“引导 – 使用整个磁盘并设置LVM”),并实际添加了额外的磁盘。 如果您在机器上有现有数据,这些步骤可能会有效,但我不能确定这样做是否安全。

这些命令假定以下信息,并将根据您的设置而有所不同:

  • 你的新磁盘是’sdb’
    • 这可以通过运行ls /dev/sd*
  • 您的卷组名称是’ubuntu-vg’
    • 这可以通过运行vgdisplay找到
  • 你的逻辑卷路径是’/ dev / ubuntu-vg / root’
    • 这可以通过运行lvdisplay找到
  • 您的新磁盘是20GB
    • 希望你知道磁盘有多大。

  1. 安装逻辑卷管理器(您可能需要也可能不需要这样做)。

     sudo apt-get install system-config-lvm 
  2. 将新磁盘转换为物理卷(在这种情况下,新磁盘为’sdb’)。

     sudo pvcreate /dev/sdb 
  3. 通过“vgextend”将物理卷添加到卷组。

     sudo vgextend ubuntu-vg /dev/sdb 
  4. 将物理卷分配给逻辑卷(按新磁盘大小扩展卷大小)。

     sudo lvextend -l +100%FREE /dev/ubuntu-vg/root 
  5. 调整逻辑卷上的文件系统大小,以便使用额外的空间。

     sudo resize2fs /dev/ubuntu-vg/root 

应该这样做。 五个简单的步骤! 您也不必重新启动。 只需运行df -h ,您的新磁盘空间应该正确显示已分配,以及您可能正在运行的任何Web应用程序将获取新的磁盘空间量。

我试图在14.04 64位台式机中使用3X500GB SATA驱动器设置一个大型LVM磁盘。 它在安装期间因设备错误而失败。 我发现一个链接,指出超过256G的驱动器是范围的限制,但我不知道这是否适用于此。

我还尝试设置RAID(RAID 1 / boot 300MB,RAID 0 swap 2GB和/ RAID 5其他一切。更多故障。

$ sudo apt-get install -y mdadm

从Live CD“尝试Ubuntu无需安装”选项,您仍然可以安装MDADM。 仍然没有运气。 GParted检测似乎有点重新发现并且不会在LVM或RAID / dev / mdX中的某些卷中获取一些卷,除非已经为所有文件系统提供了文件系统;

$ sudo mkfs.etx4 / dev / md2

此外,RAID配置现在面临更多挑战。 MDADM似乎不再被添加到安装的/ target / usr / sbin包列表中,并且在那里安装它以便在重启时启动安装会是一个巨大的考验,对此我根本就没有时间或耐心,只是为了发现这些新的Windows 8性能黑客主板(UEFI)之后的GRUB问题还有几个小时的工作时间。

从Ubiquity安装LVM非常有用,直到您需要向/(根分区)添加更多磁盘,此时您很有可能完成整个安装.LVMresize操作会一直失败,您最终会回到方块1 。

尝试14.04服务器安装程序Partman节省了一天。

启动14.04服务器安装程序,它确定架构很好,安装了MDADM,grub安装到所有3个磁盘,一切都很好。

3个磁盘(500GB SATA)

每个3个分区。 所有分区在fdisk中设置为Linux Raid类型。

RAID 1 /启动,300MB分区,RAID 0交换,2GB分区和RAID 5 /,500GB(无论剩下什么。)

$ sudo fdisk -l
设备启动开始结束块ID系统
/ dev / sda1 2048 616447 307200 83 Linux
/ dev / sda2 616448 4810751 2097152 83 Linux
/ dev / sda3 4810752 976773167 485981208 fd Linux raid autodetect

设备启动开始结束块ID系统
/ dev / sdc1 * 2048 616447 307200 83 Linux
/ dev / sdc2 616448 4810751 2097152 83 Linux
/ dev / sdc3 4810752 976773167 485981208 fd Linux raid autodetect

设备启动开始结束块ID系统
/ dev / sdb1 2048 616447 307200 83 Linux
/ dev / sdb2 616448 4810751 2097152 83 Linux
/ dev / sdb3 4810752 976773167 485981208 fd Linux raid autodetect

$ sudo ls / dev / md *
/ dev / md0 / dev / md1 / dev / md2

的/ dev / MD:
0 1 2

$ sudo mdadm -D / dev / md0
的/ dev / md0的:
版本:1.2
创作时间:2014年8月6日星期三13:03:01
突袭等级:raid1
arrays大小:306880(299.74 MiB 314.25 MB)
二手Dev Size:306880(299.74 MiB 314.25 MB)
袭击设备:3
设备总数:3
持久性:超级块是持久的

 Update Time : Mon Aug 11 19:51:44 2014 State : clean 

有源器件:3
工作装置:3
设备失败:0
备用设备:0

  Name : ubuntu:0 UUID : 03a4f230:82f50f13:13d52929:73139517 Events : 19 

编号主要次要RaidDevice状态0 8 1 0活动同步/ dev / sda1 1 8 17 1活动同步/ dev / sdb1 2 8 33 2活动同步/ dev / sdc1

$ sudo mdadm -D / dev / md1 / dev / md1:版本:1.2创建时间:2014年8月6日星期三13:03:31 Raid等级:raid0数组大小:6289920(6.00 GiB 6.44 GB)Raid设备:3个设备总数: 3持久性:超级块是持久的

更新时间:2014年8月6日星期三13:03:31状态:清洁有源设备:3个工作设备:3个故障设备:0个备用设备:0

 Chunk Size : 512K Name : ubuntu:1 UUID : 9843bdd3:7de01b63:73593716:aa2cb882 Events : 0 

Number Major RaidDevice State 0 8 2 0 active sync / dev / sda2 1 8 18 1 active sync / dev / sdb2 2 8 34 2 active sync / dev / sdc2

$ sudo mdadm -D / dev / md2 / dev / md2:版本:1.2创建时间:2014年8月6日星期三13:03:50 Raid等级:raid5数组大小:971699200(926.68 GiB 995.02 GB)使用开发大小:485849600(463.34) GiB 497.51 GB)Raid设备:3个设备总数:3个持久性:超级块是持久的

更新时间:2014年8月11日星期一19:54:49状态:活动设备:3个工作设备:3个设备故障:0个备用设备:0

  Layout : left-symmetric Chunk Size : 512K Name : ubuntu:2 UUID : 6ead2827:3ef088c5:a4f9d550:8cd86a1a Events : 14815 

Number Major RaidDevice State 0 8 3 0 active sync / dev / sda3 1 8 19 1 active sync / dev / sdb3 3 8 35 2 active sync / dev / sdc3

$ sudo cat / etc / fstab
‘#/ etc / fstab:静态文件系统信息。’
‘#’
‘#使用’blkid’打印’的通用唯一标识符’
‘#device; 这可以与UUID =一起用作命名设备的更强大的方式
‘#即使添加和删除磁盘也能正常工作。 见fstab(5)。
‘#’
‘#’
‘#/在安装期间在/ dev / md126上’
UUID = 2af45208-3763-4cd2-b199-e925e316bab9 / ext4 errors = remount-ro 0 1
‘#/ boot在安装期间在/ dev / md125上’
UUID = 954e752b-30e2-4725-821a-e143ceaa6ae5 / boot ext4默认值0 2
安装过程中#swap在/ dev / md127上
UUID = fb81179a-6d2d-450d-8d19-3cb3bde4d28a无交换sw 0 0

现在就像纯种马一样奔跑。

在我看来,如果你使用32位硬件,这对你不起作用,但我认为在这一点上软RAID可能比单个磁盘LVM更小的选择,而JBOD用于任何比这更旧的东西。

谢谢。

这项技术适用于128GB SSD主要和2TB HDD扩展。
如果在向卷组添加物理卷时使用“ubuntu-vg”遇到问题,请尝试发出命令

 sudo vgdisplay 

通常,卷组名称的格式为NAME_OF_COMPUTER-vg ,因此,如果您的系统名为SKYNET您的卷组可能会被命名

 SKYNET-vg