抱歉我的英语不好,希望你能理解我。
一个月前,我建立了一个带有 500GB 硬盘的 Ubuntu 服务器,在安装系统时我创建了常规的非 LVM 分区 - 这是它们的布局。
root@skysquad:~# fdisk -l 磁盘 /dev/sda:500.1 GB,500107862016 字节 255 个磁头、63 个扇区/磁道、60801 个磁柱 单位 = 16065 * 512 = 8225280 字节的柱面 磁盘标识符:0x000c9f61 设备启动开始结束块ID系统 /dev/sda1 * 1 10942 87891583+ 83 Linux /dev/sda2 10943 60801 400492417+ 5 扩展 /dev/sda5 12159 60801 390724866 83 Linux /dev/sda6 10943 12158 9767457 82 Linux 交换 / Solaris 分区表条目不按磁盘顺序排列
基本上是;
sda1 (90GB) 用于操作系统 (ext4)
sda5 (~370GB) 用于 /home (我稍后会解释) (ext4)
sda6 (10GB) 用于 SWAP
后来我意识到当 sda5(/home 为 385GB)满了的时候,我想通过添加新的硬盘来增加它的大小,所以我将 sda5 创建为一个 LVM 分区,如下所示;
root@skysquad:~# pvdisplay --- 物理体积 --- PV 名称 /dev/sda5 VG 名称 vg1 PV 大小 372.62 GB / 不可用 3.25 MB 可分配是(但已满) PE大小(KB)4096 总市盈率 95391 免费 PE 0 已分配 PE 95391 PV UUID lewQnp-NdvK-Ac0N-sCgE-NGOH-K2cX-WxJ2tL root@skysquad:~# vgdisplay --- 卷组 --- VG 名称 vg1 系统 ID 格式化 lvm2 元数据区域 1 元数据序列号 3 VG 访问 读/写 VG 状态可调整大小 最高等级 0 当前 LV 1 打开 LV 1 最大 PV 0 电流 PV 1 幕 PV 1 VG 大小 372.62 GB 大小 4.00 MB 总市盈率 95391 分配 PE / 大小 95391 / 372.62 GB 免费 PE / 尺寸 0 / 0 VG UUID yRkcP7-zvZ0-DjIR-xDWS-Ia6V-InSu-6Hwvpe root@skysquad:~# lvdisplay --- 逻辑卷 --- LV 名称 /dev/vg1/home VG 名称 vg1 LV UUID jXCi37-iWmp-xVd7-9TsL-56pg-6x9m-73flLT LV 写访问 读/写 LV 状态可用 # 打开 1 LV 大小 372.62 GB 当前 LE 95391 段 1 分配继承 自动预读扇区 - 目前设置为 256 块设备 252:0
现在我的 sda5(LVM)已满(见下文),但我的钱包还没有满,而且我不能再买另一个 HDD。
root@skysquad:~# df 文件系统 1K 块已使用可用使用率% 已安装于 /dev/sda1 86511612 3829536 78287500 5% / tmpfs 1677788 0 1677788 0%/lib/init/rw varrun 1677788 520 1677268 1% /var/运行 varlock 1677788 0 1677788 0%/var/锁 udev 1677788 144 1677644 1%/dev tmpfs 1677788 84 1677704 1%/ dev / shm lrm 1677788 2192 1675596 1%/lib/modules/2.6.28-15-generic/volatile /dev/mapper/vg1-home 384590900 332537772 32517052 92% /home
正如您所看到的,我只使用了 /(sda1)的 5%(我不知道当我为 / 设置 90GB 时我在想什么)。
所以最后我的问题是 - 是否有任何安全的方法来调整非 LVM 分区的大小(例如,将 sda1 大小减少 60GB,从 90GB 减少到 30GB,并将 sda5 的大小从这 60GB 增加到从 ~370GB 到 ~430GB),然后将 sda5 的 LVM 增加到这 60GB?
谢谢你,
Lulaz
答案1
理论上,您可以减小 的大小sda1
,增加扩展分区的大小,将扩展分区的内容向下移动,然后增加扩展分区上的 PV 的大小,这样您就会有额外的空间。但是,可能出错的事情数量简直是天文数字,所以我建议要么购买第二块硬盘(并可能以更合理的布局将所有内容转移到该硬盘上,然后更好地重新分区您当前的硬盘),要么只是将各种零碎的东西从 中绑定到 中/home
以/
释放更多空间。
答案2
简易捷径:
如果您是该机器的 root 用户(看起来您是 root 用户),请在“/”上创建一个目录,即 sda1。在本例中,我们将其称为“/data/overflow”。然后在您的主目录中,取出一些过大的目录,将数据移动到 /data/overflow,并使用符号链接指向它。
示例命令:
# make directory on empty partition
mkdir -p /data/overflow
chown username /data/overflow
# move data to empty disk
cd /home/username
mv bigdir /data/overflow
# put the link in, so your old names match
ln -s /data/overflow/bigdir bigdir
答案3
GParted 直播将允许您调整非 LVM 分区的大小,理论上不会丢失数据,但是 1. 在此期间您将无法使用您的服务器,并且 2. 就像 womble 所说的那样,很有可能出现问题。
答案4
创建 Ubuntu Live USB 棒,启动它,然后运行 GParted 以完成重新配置。我发现它可以完美地创建、移动、复制和调整常规分区的大小。