![由于 /var 空间不足,无法将 OpenSUSE 从 11.4 更新到 12.1](https://linux22.com/image/1299351/%E7%94%B1%E4%BA%8E%20%2Fvar%20%E7%A9%BA%E9%97%B4%E4%B8%8D%E8%B6%B3%EF%BC%8C%E6%97%A0%E6%B3%95%E5%B0%86%20OpenSUSE%20%E4%BB%8E%2011.4%20%E6%9B%B4%E6%96%B0%E5%88%B0%2012.1.png)
我正在尝试将 openSUSE 从 11.4 更新到 12.1。需要下载的大小超过 1.0 GB,但我的文件系统 /var 正好是 1.0 GB,这就是为什么 zypper 在下载 .rpm 软件包时会因为 /var 空间不足而停止的原因。
这个问题的可能决策是什么?
谢谢!
答案1
你能在 yast 中“扩展”包含 /var 的分区吗?如果不能,请在某处创建一个新分区,然后在那里创建一个新的 /var。
答案2
最简单的方法是创建一个比当前 /var 更大的新 /var。
这应该离线完成,因此请使用 Live CD,以便您可以修改操作系统。以下假设
- /(根)是 /dev/sda1
- /var 是 /dev/sda2
- 您将在 /dev/sda3 中创建一个新的 /var
启动 livecd,并创建一些挂载点:
mkdir /mnt/root
mkdir /mnt/var
mkdir /mnt/newvar
现在使用 parted 或 fdisk 为 var - /dev/sda3 创建一个新分区
然后在 /dev/sda3 中为新变量创建一个文件系统:
mkfs.ext4 /dev/sda3
安装所有内容:
mount /dev/sda1 /mnt/root
mount /dev/sda2 /mnt/var
mount /dev/sda3 /mnt/newvar
现在将所有内容从旧变量复制到新变量:
rsync -ax --progress /mnt/var/ /mnt/newvar/
现在编辑 /mnt/root/etc/fstab 文件以反映新的 var 位置:
/dev/sdb3 /var ext4 defaults 0 0
然后重新启动。
请注意,您需要修改 devs 以匹配您的设置,并确保 fstab 行包含适当的文件系统(您不必使用 ext4,只是一个建议)