每当我尝试使用以下命令安装 python 包时:
sudo apt-get install python-package
我得到以下输出:
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
linux-headers-generic : Depends: linux-headers-3.2.0-36-generic but it is not going to be installed
linux-headers-generic-pae : Depends: linux-headers-3.2.0-36-generic-pae but it is not going to be installed
linux-image-generic : Depends: linux-image-3.2.0-36-generic but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
这似乎是当这三个软件包出现在 Ubuntu 的更新管理器中时发生的,当我尝试在那里安装它们时,出现了错误。根据上面输出中的建议,我尝试运行:
sudo apt-get -f install
但这只给了我以下错误的几个实例:
dpkg: error processing /var/cache/apt/archives/linux-image-3.2.0-36-generic_3.2.0-36.57_i386.deb (--unpack):
unable to create `/lib/modules/3.2.0-36-generic/kernel/drivers/net/wireless/ath/carl9170/carl9170.ko.dpkg-new' (while processing `./lib/modules/3.2.0-36-generic/kernel/drivers/net/wireless/ath/carl9170/carl9170.ko'): No space left on device
现在我可能完全偏离了主题,但我想知道错误是否可能来自“设备上没有剩余空间”部分?问题是,我正在以 VirtualBox VM 的形式运行 Ubuntu,但我已将其设置为根据需要动态增加其虚拟硬盘空间,那么为什么我仍然收到此错误?
这是我使用时的输出dh -f
:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 6.9G 5.7G 869M 88% /
udev 494M 4.0K 494M 1% /dev
tmpfs 201M 784K 200M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 501M 76K 501M 1% /run/shm
VB_Shared_Folder 466G 271G 195G 59% /media/sf_VB_Shared_Folder
当我表演时sudo apt-get -f install
,系统说,
After this operation, 192 MB of additional disk space will be used.
这是否意味着我的虚拟机当前内存为 192 MB,还是剩余可用空间的 192 MB?正如我所说,我的机器通常会从主机动态分配额外内存,所以我不明白为什么会有内存限制……
答案1
“设备上没有剩余空间”错误可能与“未满足的依赖项”问题有关。无论如何,您都必须修复这两个问题。
使用以下方法检查可用空间任何这些方法(例如df -h
)。如果您的资金不足,可以使用这些方法(删除旧内核;也适用于/boot
不是单独分区的情况)和这些方法(删除未使用的包和缓存的包档案)。
特别是如果“未满足的依赖关系”问题是由于磁盘空间用完后软件未正确安装和配置而引起的,您应该能够简单地修复它:
sudo dpkg --configure -a
sudo apt-get update && sudo apt-get -f install
但是,如果这不起作用,请不要担心 - 还有许多其他强大(且易于应用)的技术可以修复“未满足的依赖关系”:
答案2
如果你碰巧使用
sudo apt-get -f install python-package
尝试运行
sudo apt-get -f install
(没有任何包名称),完成此步骤后,尝试运行原始命令:
sudo apt-get install python-package
答案3
看起来像 virtualbox+apt= 错误
我在 virtalbox 上使用 ubuntu12.10 时也遇到了同样的问题。
很可能是 apt/dpkg 错误,或者 virtualbox 无法正确处理某些内容。
也许其他 pkg 管理器可以工作……您可以尝试使用它们;您也可以通过从以下网址下载软件包来安装它们http://packages.ubuntu.com/
cd ~/downloads
dpkg -i *.deb
答案4
如果你安装了teamviewer,也会出现这种情况。并且输出可能会通知你teamviewer的依赖性未得到满足。首先,删除软件包teamviewer,然后就没问题了。