Jos*_*ker 14 partitioning lvm disk-management hyper-v
在我的实验室环境中,我有一个 Ubuntu 服务器 12.04,我正在尝试为其添加空间。LVM 是在启动时设置的,在通过编辑磁盘向导添加 100GB 后,我无法将该空间添加到分区。我曾尝试使用 Part Magic,但它不允许扩大尺寸,即使我确实看到了增加的空间。
fdisk -l 给我;
Disk /dev/sda: 108.4 GB, 108447924224 bytes
255 heads, 63 sectors/track, 13184 cylinders, total 211812352 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00097307
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 501758 33552383 16525313 5 Extended
/dev/sda5 501760 33552383 16525312 8e Linux LVM
Disk /dev/mapper/ubuntu--vg-root: 14.8 GB, 14751367168 bytes
255 heads, 63 sectors/track, 1793 cylinders, total 28811264 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/mapper/ubuntu--vg-root doesn't contain a valid partition table
Disk /dev/mapper/ubuntu--vg-swap_1: 2143 MB, 2143289344 bytes
255 heads, 63 sectors/track, 260 cylinders, total 4186112 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/mapper/ubuntu--vg-swap_1 doesn't contain a valid partition table
Run Code Online (Sandbox Code Playgroud)
我以前没有真正使用过 LVM,也根本不是 Linux 专家,所以我不确定下一步会是什么,因为我正在寻找有关此过程的方法。最后,我还想为引导分区添加一些空间。
感谢您花时间阅读这个问题,如果有其他细节我可以给你,请告诉我。
Tob*_*s J 15
如果你想在没有 GUI 工具的情况下做到这一点,你可以使用parted
.
在我的系统上,我将根文件系统(位于dev/sda3
)从 128GB 扩展到 160GB。根据您的设置调整以下示例。所有命令都必须以 rootsudo -i
身份运行(以root身份登录)。
之前,我的使用率为 95%:
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv 124G 113G 6.3G 95% /
Run Code Online (Sandbox Code Playgroud)
使用 Gen2 虚拟机,一切都可以在线完成,而来宾操作系统正在运行,无需重新启动。每一步几乎都是瞬间完成的。
首先,使用 Hyper-V GUI 或 CLI 工具扩展虚拟磁盘(最简单的方法是打开 VM 的设置,选择 SCSI 控制器下的硬盘,然后选择“编辑”然后“扩展”)。
接下来,您需要告诉 Ubuntu 重新扫描块设备,在这种情况下sda
:
# echo 1 > /sys/block/sda/device/rescan
接下来,运行parted
并选择p
for print
。它应该认识到分区表没有使用完整空间并询问您是否要修复它,因此此时选择Fix
。
# parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p
Warning: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use all of the space (an
extra 69206016 blocks) or continue with the current setting?
Fix/Ignore? Fix
Model: Msft Virtual Disk (scsi)
Disk /dev/sda: 172GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 boot, esp
2 538MB 1612MB 1074MB ext4
3 1612MB 136GB 135GB
Run Code Online (Sandbox Code Playgroud)
现在您需要实际扩展分区。仍在 中时parted
,输入resizepart
命令以完成此操作。就我而言,由于我正在扩展,sda3
我告诉它将分区 3 的大小调整为可用空间的 100%。再次,为您的设置调整命令。
(parted) resizepart 3 100%
(parted) p
Model: Msft Virtual Disk (scsi)
Disk /dev/sda: 172GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 boot, esp
2 538MB 1612MB 1074MB ext4
3 1612MB 172GB 170GB
(parted) quit
Run Code Online (Sandbox Code Playgroud)
键入quit
退出parted
。
如果您正在使用 LVM,您现在需要告诉它扩展物理卷。pvs
显示有关您的物理卷的信息;用pvresize
将其展开。如果没有给出参数,它将使用所有可用空间。
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda3 ubuntu-vg lvm2 a-- <125.50g 0
# pvresize /dev/sda3
Physical volume "/dev/sda3" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda3 ubuntu-vg lvm2 a-- <158.50g 33.00g
Run Code Online (Sandbox Code Playgroud)
现在,您需要扩展逻辑卷以及文件系统本身。lvextend
与-r
开关将两者同时进行,假设你使用它知道如ext3 / 4文件系统。
# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
ubuntu-lv ubuntu-vg -wi-ao---- <125.50g
# lvextend -l +100%FREE -r /dev/mapper/ubuntu--vg-ubuntu--lv
Size of logical volume ubuntu-vg/ubuntu-lv changed from <125.50 GiB (32127 extents) to <158.50 GiB (40575 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.
resize2fs 1.44.1 (24-Mar-2018)
Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required
old_desc_blocks = 16, new_desc_blocks = 20
The filesystem on /dev/mapper/ubuntu--vg-ubuntu--lv is now 41548800 (4k) blocks long.
Run Code Online (Sandbox Code Playgroud)
就是这样!现在验证文件系统是否看到额外的空间:
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv 156G 113G 38G 76% /
Run Code Online (Sandbox Code Playgroud)
如果您不使用 LVM,则可以将pvresize
/lvextend
步骤替换为resize2fs
。
这篇关于 Teknophiles 的文章提供了有关此过程的更多详细信息以及 Hyper-V 工具的屏幕截图。
您用于gparted
调整分区大小。在 12.04 中,您需要从 livecd 启动并从那里运行它,因为它无法调整已安装分区的大小。在以后的版本中,它可以在安装时增长许多分区。这只会为 LVM 提供更多空间来分配给逻辑卷。如果您想增加逻辑卷,您可以运行例如将lvresize -L 30g ubuntu-vg/root
根 lv 的大小增加到 30g。然后,您需要告诉文件系统使用该新空间,resize2fs /dev/ubuntu-vg/root
假设您使用的是默认的 ext4 文件系统,您可以使用 来执行此操作。后两个步骤可以在线执行,而不是从其他介质启动。您还可以指定100%
而不是30g
使用lvresize
所有可用空间,但这有点违背了首先使用 LVM 将所有空间分配给一个逻辑卷的目的,因为您没有任何可用空间来创建快照,新逻辑卷,或稍后增加一些卷。
归档时间: |
|
查看次数: |
21381 次 |
最近记录: |