332 字
2 分钟
PVE 中缩小 LXC 容器的 RAW 格式磁盘空间

前言#

俗话说,磁盘(空间)不足,技术来凑,当初(分配空间)有多浪,现在就有多痛苦(PVE 磁盘满后,所有 LXC 均不能写入操作!)。


操作步骤#

PVE 的 WebUI 中并没有提供缩小磁盘的功能(只能增加磁盘空间)。

  1. 关闭要操作的 LXC 容器

  2. 打开 PVE 的 shell 并执行如下操作:

Terminal window
# 安装必要软件, CT id=377 的 LXC 为例
apt install guestfs-tools
cd /var/lib/vz/images/377/
# 备份已有数据
cp vm-377-disk-0.raw vm-377.bak
# 查看 raw 磁盘情况
virt-df -h vm-377-disk-0.raw
# 执行结果:
——————————————————————————————————————————————————————————————————————————
Filesystem Size Used Available Use%
vm-377-disk-0.raw:/dev/sda 6.8G 927M 5.5G 14%
——————————————————————————————————————————————————————————————————————————
guestfish
><fs> add vm-377-disk-0.raw
><fs> run
><fs> list-filesystems
/dev/sda: ext4
><fs> e2fsck-f /dev/sda
><fs> resize2fs-size /dev/sda 3000M
><fs> e2fsck-f /dev/sda
><fs> quit
# 查看调整后的磁盘情况
virt-df -h vm-377-disk-0.raw
# 执行结果
————————————————————————————————————————————————————————————————————————————
Filesystem Size Used Available Use%
vm-377-disk-0.raw:/dev/sda 2.8G 928M 1.7G 33%
————————————————————————————————————————————————————————————————————————————
# 使用 qemu-img 调整磁盘大小
qemu-img resize --shrink -f raw vm-377-disk-0.raw 3G
# 执行结果
————————————————
Image resized.
————————————————
# 查看磁盘信息
qemu-img info vm-377-disk-0.raw
# 执行结果
—————————————————————————————————————————————
image: vm-377-disk-0.raw
file format: raw
virtual size: 3 GiB (3221225472 bytes)
disk size: 1.68 GiB
Child node '/file':
filename: vm-377-disk-0.raw
protocol type: file
file length: 3 GiB (3221225472 bytes)
disk size: 1.68 GiB
————————————————————————————————————————————
# 修改 LXC 信息,磁盘大小调整到 3G
nano /etc/pve/lxc/377.conf
# 重新启动 LXC
```bash
pct restart 377

参考资料#

shrink virtual disk size of VM

提示

内容转载自:PVE 缩小LXC中 RAW 格式磁盘


PVE 中缩小 LXC 容器的 RAW 格式磁盘空间
https://blog.devnak.win/posts/reduce_lxc_raw_disk_on_pve/
作者
Beyonme Devnak
发布于
2025-08-23
许可协议
CC BY-NC-SA 4.0