我的平台是Ubuntu 12.04。
我一直在阅读,这篇文章实际上遵循了链接上的流程,更新后损坏的软件包:linux-headers,错误:BrokenCount >0
更新后,我的软件包损坏了。最初我的磁盘已满,但后来我修复了这个问题,现在我有 4+ GB 的可用空间。
然后我在这里读到我应该运行以下命令:
sudo apt-get -f install
sudo apt-get install --fix-broken,
我得到了以下结果:
(Reading database ... 897477 files and directories currently installed.)
Unpacking linux-image-3.2.0-67-generic (from .../linux-image-3.2.0-67-generic_3.2.0-67.101_amd64.deb) ...
Done.
dpkg: error processing /var/cache/apt/archives/linux-image-3.2.0-67-generic_3.2.0-67.101_amd64.deb (--unpack):
unable to create `/lib/modules/3.2.0-67-generic/kernel/drivers/usb/gadget/g_dbgp.ko.dpkg-new' (while processing `./lib/modules/3.2.0-67-generic/kernel/drivers/usb/gadget/g_dbgp.ko'): No space left on device
No apport report written because the error message indicates a disk full error
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.2.0-67-generic /boot/vmlinuz-3.2.0-67-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.2.0-67-generic /boot/vmlinuz-3.2.0-67-generic
Unpacking linux-headers-3.2.0-67 (from .../linux-headers-3.2.0-67_3.2.0-67.101_all.deb) ...
dpkg: error processing /var/cache/apt/archives/linux-headers-3.2.0-67_3.2.0-67.101_all.deb (--unpack):
error creating directory `./usr/src/linux-headers-3.2.0-67/crypto/async_tx': No space left on device
No apport report written because the error message indicates a disk full error
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Unpacking linux-headers-3.2.0-67-generic (from .../linux-headers-3.2.0-67-generic_3.2.0-67.101_amd64.deb) ...
dpkg: error processing /var/cache/apt/archives/linux-headers-3.2.0-67-generic_3.2.0-67.101_amd64.deb (--unpack):
unable to create `/usr/src/linux-headers-3.2.0-67-generic/include/config/mtd/scb2/flash.h.dpkg-new' (while processing `./usr/src/linux-headers-3.2.0-67-generic/include/config/mtd/scb2/flash.h'): No space left on device
No apport report written because the error message indicates a disk full error
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/linux-image-3.2.0-67-generic_3.2.0-67.101_amd64.deb
/var/cache/apt/archives/linux-headers-3.2.0-67_3.2.0-67.101_all.deb
/var/cache/apt/archives/linux-headers-3.2.0-67-generic_3.2.0-67.101_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
然后我读了一些内容并运行了这个命令,
df -i
并得到了这些结果。
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda3 915712 914583 1129 100% /
udev 253906 560 253346 1% /dev
tmpfs 256105 502 255603 1% /run
none 256105 3 256102 1% /run/lock
none 256105 5 256100 1% /run/shm
/dev/sda6 1220608 30875 1189733 3% /home
/dev/sdb1 821888880 141598 821747282 1% /media/Seagate Backup Plus Drive
所以我运行了这个命令,
sudo du -h /* | grep '[0-9]M'
我也得到了一个很长的列表,确切地说是 10 页文本。
但那时我迷失了方向。我不知道哪个文件太大,哪个文件不大。有些文件大到
- 354M /var/lib
- 636M /var
- 130M /var/缓存/apt
- 260M /var/缓存
但列表中没有“垃圾”这个词,当我运行命令时,
sudo rm -r /root/.local/share/Trash/files/
它告诉我找不到文件垃圾。我想我明白我要做的是弄清楚如何获取以下行
/dev/sda3 915712 914583 1129 100% /
阅读一些不完全的内容,这样我才有空间修复损坏的包装,但我不知道该怎么做。我担心会开始随意删除东西。
我愿意阅读,所以如果有链接讨论这方面的问题,请指出我,我会尽我所能去消化。感谢任何人的帮助。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 14G 12G 2.1G 85% /
udev 992M 4.0K 992M 1% /dev
tmpfs 201M 1.1M 200M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 1001M 140K 1001M 1% /run/shm
/dev/sda6 19G 14G 4.0G 78% /home
/dev/sdb1 932G 148G 784G 16% /media/Seagate Backup Plus Drive
/dev/sda7 104G 188M 99G 1% /media/cd3f76e1-724f-4b8f-b29c-cc901b071fdb
/dev/sda2 94G 84G 9.8G 90% /media/069CBC4E9CBC3A4F
$ df -h /boot
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 14G 12G 2.1G 85% /
答案1
我觉得你不会太在意这些,但还是说说看。你的根目录 ('/') 在 sda3 上,而且已经满了。12 GB 对于 Ubuntu 操作系统 + 程序 + 各种其他项目和设置来说不算多。你的 /boot 位于同一个分区中,因此你可以删除旧内核以恢复一些空间。
下面的命令从终端运行,将删除除当前内核之外的所有内容。我没有编写此脚本,而是从以下位置获取的:如何删除旧内核版本来清理启动菜单? 这可能*会减少足够的空间供您继续操作一段时间。
sudo apt-get remove --purge $(dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d')
答案2
我看到 /dev/sda3 已满 100%
SDA3 可能是您的交换分区。启动“磁盘使用情况分析器”以确定是否是这种情况。使用此程序,您可以查看 /dev/sda3 的用途:文件系统还是交换。如果是交换,那么这不是问题。
否则,请尝试清空垃圾箱。