从 wheezy 升级到 jessie 期间,Debian 虚拟实例显示“设备上没有剩余空间”

从 wheezy 升级到 jessie 期间,Debian 虚拟实例显示“设备上没有剩余空间”

我已经完成了一半,升级过程在中途终止。这是关于我在 virtualbox 下设置的虚拟 debian wheezy 实例的升级。

df -h 的输出如下:

Filesystem           Type      Size  Used Avail Use% Mounted on
/dev/mapper/01a-root ext4      5.0G  4.9G     0 100% /
udev                 devtmpfs   10M     0   10M   0% /dev
tmpfs                tmpfs     149M  348K  148M   1% /run
tmpfs                tmpfs     5.0M     0  5.0M   0% /run/lock
tmpfs                tmpfs     297M     0  297M   0% /run/shm
/dev/sda1            ext4      236M   19M  205M   9% /boot
/dev/mapper/01a-home ext4      5.0G  246M  4.5G   6% /home
/dev/sdb1            ext4       47G  180M   47G   1% /gg/gg01
/dev/sdb2            ext4       47G  180M   47G   1% /gg/gg02
/dev/sdb3            ext4       47G  180M   47G   1% /gg/gg03
/dev/sdb4            ext4       57G  192M   56G   1% /gg/gg04
tmpfs                tmpfs     357M  4.0K  357M   1% /tmp
none                 vboxsf    222M   20M  203M   9% /media/sf_K2
none                 vboxsf    222M   20M  203M   9% /media/sf_k1
none                 vboxsf    346G  189G  158G  55% /media/sf_sh01
none                 vboxsf    346G  189G  158G  55% /media/sf_sh_mcn

  vgdisplay 01a
  --- Volume group ---
  VG Name               01a
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  8
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               3
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               29.05 GiB
  PE Size               4.00 MiB
  Total PE              7437
  Alloc PE / Size       2651 / 10.36 GiB
  Free  PE / Size       4786 / 18.70 GiB
  VG UUID               Vltnqr-dDCv-VnlD-7pts-MYCB-8u7w-QNCHk3

提前致谢。


在下面的评论中与@Sekenre 讨论后,对上述问题进行了补充说明

您好,以下是更详细的历史记录:首先,这是安装在 virtualbox 中的此 debian 实例的虚拟驱动器。从历史上看,在创建它时,我使用了以下选项:

*Partitions : /home and the rest
*Using LVM
*Name of Volume Group : 01a

接下来,大约 1.5 年前,我发现需要更多的空间,因此我采取了以下流程:

一开始,我只有 sda5 物理卷。

我使用 vboxmanage 将磁盘大小增加到 30000 mbs 接下来,使用 cfdisk 在新的空闲空间上添加新的物理卷 sda6 (lvmspace/8e)。接下来,将新的 sda5 pv 添加到主 vg 01a:

 vgextend 01a /dev/sda6

这样,vg 01a 就变成了 30gb 左右。然后,vg 01a 上名为“root”的第一个 lv 被扩展:

lvresize -L 5G /dev/01a/root

接下来,调整文件系统的大小:

resize2fs -f -p /dev/01a/root

这导致了我们当前的情形。目前:

>pvscan
PV /dev/sda5   VG 01a   lvm2 [7.76 GiB / 0    free]
PV /dev/sda6   VG 01a   lvm2 [21.29 GiB / 18.70 GiB free]
Total: 2 [29.05 GiB] / in use: 2 [29.05 GiB] / in no VG: 0 [0   ]

>pvdisplay -m
--- Physical volume ---
PV Name               /dev/sda5
VG Name               01a
PV Size               7.76 GiB / not usable 2.00 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              1986
Free PE               0
Allocated PE          1986
PV UUID               txt13Y-x6Rj-KgLM-hpNL-uklw-uJaf-Xx0ET1

--- Physical Segments ---
Physical extent 0 to 614:
Logical volume      /dev/01a/root
Logical extents     0 to 614
Physical extent 615 to 689:
Logical volume      /dev/01a/swap_1
Logical extents     0 to 74
Physical extent 690 to 1985:
Logical volume      /dev/01a/home
Logical extents     0 to 1295

--- Physical volume ---
PV Name               /dev/sda6
VG Name               01a
PV Size               21.30 GiB / not usable 3.97 MiB
Allocatable           yes
PE Size               4.00 MiB
Total PE              5451
Free PE               4786
Allocated PE          665
PV UUID               Z2JwLd-d5Zs-0GGR-hE5P-69eP-9TTD-fF4y01

--- Physical Segments ---
Physical extent 0 to 664:
Logical volume      /dev/01a/root
Logical extents     615 to 1279
Physical extent 665 to 5450:
FREE

>lvdisplay
--- Logical volume ---
LV Path                /dev/01a/root
LV Name                root
VG Name                01a
LV UUID                qh5Lon-k6eL-ZlOM-3RGv-mMvg-aPLW-1f1TuW
LV Write Access        read/write
LV Creation host, time D-710-64-01, 2013-06-23 17:16:42 +0530
LV Status              available
# open                 1
LV Size                5.00 GiB
Current LE             1280
Segments               2
Allocation             inherit
Read ahead sectors     auto
- currently set to     256
Block device           254:0

--- Logical volume ---
LV Path                /dev/01a/swap_1
LV Name                swap_1
VG Name                01a
LV UUID                2Glp7C-20Mc-H0RT-G0xt-Nqyt-wp3v-6wGz0p
LV Write Access        read/write
LV Creation host, time D-710-64-01, 2013-06-23 17:16:43 +0530
LV Status              available
# open                 2
LV Size                300.00 MiB
Current LE             75
Segments               1
Allocation             inherit
Read ahead sectors     auto
- currently set to     256
Block device           254:1

--- Logical volume ---
LV Path                /dev/01a/home
LV Name                home
VG Name                01a
LV UUID                l3dh7W-fPkC-Chj2-EXdK-5egB-QUOw-iWz5I6
LV Write Access        read/write
LV Creation host, time D-710-64-01, 2013-06-23 17:16:43 +0530
LV Status              available
# open                 1
LV Size                5.06 GiB
Current LE             1296
Segments               1
Allocation             inherit
Read ahead sectors     auto
- currently set to     256
Block device           254:2

================

@Sekenre,我希望你的建议与当前配置同步。只是想与你分享这一点,供你审阅。再次感谢朋友。感激!

答案1

我建议您创建一个具有足够空间的新逻辑卷,将其安装到临时位置,移动/复制当前/var目录的内容,编辑 fstab 以便/var/将其安装在新位置,从原始位置删除一些包文件/var然后重新启动。

首先,创建新的 var 逻辑卷:

lvcreate -L10G --name var 01a

现在,在其上创建一个文件系统:

mkfs.ext4 -L VAR /dev/mapper/01a-var

将其安装到临时位置:

mkdir /tmp/new-var
mount /dev/mapper/01a-var /tmp/new-var

将现有文件复制/var到新位置:

cd /var
tar -cf - . | (cd /tmp/new-var && tar -xf -)
cd -

在继续之前请确保此命令成功!

ls /tmp/new-var
# Did everything copy ok?
umount /tmp/new-var

删除一些 apt 缓存文件,以便您在 root 上有工作空间:

rm /var/cache/apt/archives/*.deb

现在运行以下命令以确保新的逻辑卷在启动时出现/var

echo "/dev/mapper/01a-var   /var  ext4 defaults 0 2" >> /etc/fstab

现在您应该能够重新启动并且在 root 和 var 中都拥有足够的空间!

编辑以添加有关所有 LVM 内容的指南:http://www.tutonics.com/2012/11/ubuntu-lvm-guide-part-1.html

答案2

pv sda6 似乎有未分配的空间:

Physical extent 665 to 5450: FREE

和 :

/dev/01a/root is 5GiB
/dev/01a/swap_1 300MiB
/dev/01a/home is 5Gib

我希望我们可以使用 01a 上未分配的空间。我们可以直接执行以下操作并向添加 5 个 GiB 吗:

lvresize -L 10G /dev/01a/root
resize2fs -f -p /dev/01a/root

...我们的问题应该解决了吧?/root 应该变成 10G,对吧?我应该继续吗?

相关内容