AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1163525
Accepted
King David
King David
Asked: 2024-08-06 05:34:06 +0800 CST2024-08-06 05:34:06 +0800 CST 2024-08-06 05:34:06 +0800 CST

Linux + 如何根据磁盘大小增加分区

  • 772

我们有一些红帽服务器,其详细信息如下(当操作系统磁盘大小为 230G 时)

# lsblk
NAME             MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                8:0    0  230G  0 disk
├─sda1             8:1    0    1G  0 part /boot/efi
├─sda2             8:2    0    1G  0 part /boot
└─sda3             8:3    0  228G  0 part
  ├─VG100-lv_root 253:0    0   20G  0 lvm  /
  ├─VG100-lv_swap 253:1    0   16G  0 lvm  [SWAP]
  └─VG100-lv_var  253:2    0   30G  0 lvm  /var


fdisk -l

Disk /dev/sda: 193.3 GB, 193273528320 bytes, 377487360 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 label type: dos
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1   209715199   104857599+  ee  GPT

目标是在当前 /var 为 30G 且根文件系统为 20G 的情况下,基于磁盘大小为 230G 来增加 /var 和根文件系统

因此,我们从以下步骤开始,该步骤应该为我们提供足够的 PFREE 或足够的“物理可用”空间。

parted /dev/sda resizepart 3 100%
Error: The backup GPT table is not at the end of the disk, as it should be.  This might mean that another operating system believes the disk is smaller.  Fix, by moving the backup to the end (and removing the old backup)?
parted: invalid token: 3
Fix/Ignore/Cancel?


sgdisk -e /dev/sda

注意 - sgdisk:修复备份 GPT 表的最简单方法是使用带有 -e 选项的 sgdisk 命令,该命令将备份 GPT 数据结构移动到磁盘末尾

parted /dev/sda resizepart 3 100%
Information: You may need to update /etc/fstab.

partprobe /dev/sda

pvresize /dev/sda
  Failed to find physical volume "/dev/sda".
  0 physical volume(s) resized or updated / 0 physical volume(s) not resized

但来自 pvsPfree仍为 0

# pvs
  PV         VG   Fmt  Attr PSize  PFree
  /dev/sda3  VG100 lvm2 a--  66.00g    0

关于能够增加 /var 和根文件系统分区的其他方法有什么想法吗?

更多信息

# vgs
  VG   #PV #LV #SN Attr   VSize    VFree
  VG100  1   3   0 wz--n- <228.00g <162.00g

我们也尝试这个(例如)

lvextend -l +100%FREE -r /dev/mapper/VG100-lv_root
  Size of logical volume VG100/lv_root unchanged from 20.00 GiB (5120 extents).
  Logical volume VG100/lv_root successfully resized.

xfs_growfs /dev/mapper/VG100-lv_root

但根文件系统的大小相同

df -h | grep VG100-lv_root
/dev/mapper/VG100-lv_root   20G  3.8G   17G  19% /

 pvs
  PV         VG   Fmt  Attr PSize  PFree
  /dev/sda3  VG100 lvm2 a--  66.00g    0
linux
  • 2 2 个回答
  • 62 Views

2 个回答

  • Voted
  1. Best Answer
    Romeo Ninov
    2024-08-06T13:46:48+08:002024-08-06T13:46:48+08:00

    root使用上述命令,您可以尝试扩展分区。并且您的分区已经分配了整个磁盘。似乎您想扩展挂载为( )的逻辑卷/。为此,您需要执行以下命令:

    lvextend -l +100%FREE -r /dev/mapper/VG100-lv_root
    

    这将扩展VG100-lv_root卷以使用 VG 中的整个可用空间。还将-r扩展文件系统。

    但我强烈建议更适度,例如向卷中添加 20-30GB,其余空间保持未使用状态。并且仅在需要扩展卷的情况下。由于此命令(上面)可以在已安装的文件系统上运行并且可以即时工作,因此您无需担心停机时间。另一方面,如果您想缩小卷,则需要/从实时 CD 启动,缩小文件系统,然后缩小卷(这样您就有停机时间)。有些文件系统无法缩小(例如 XFS)。

    • 1
  2. telcoM
    2024-08-06T23:05:34+08:002024-08-06T23:05:34+08:00

    由于您的磁盘已分区,并且 LVM PV 是sda3,因此您必须在命令中使用该设备,pvresize而不仅仅是sda:

    pvresize /dev/sda3
    

    你pvresize /dev/sda告诉你它没有实现任何目标:

    pvresize /dev/sda
      Failed to find physical volume "/dev/sda".
      0 physical volume(s) resized or updated / 0 physical volume(s) not resized
    

    这是因为整个磁盘设备sda不是 LVM PV,并且不可能像这样制作,因为磁盘需要是 UEFI 可启动的系统磁盘。

    成功 后pvresize,pvs命令应该显示非零的 PFree 值,然后lvextend命令才能成功。

    • 0

相关问题

  • Linux 主机到主机迁移

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 如何在 Linux 下监控每个进程的网络 I/O 使用情况?

  • 在 RHEL4 上修改 CUPS 中的现有打印机设置

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve