the*_*cer 88 apt software-installation
上面的错误是什么意思?什么是安装候选?
我试图做
sudo apt-get install munin-memcached
Run Code Online (Sandbox Code Playgroud)
我收到这条消息:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package munin-memcached is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package munin-memcached has no installation candidate
Run Code Online (Sandbox Code Playgroud)
我用谷歌搜索了这个问题,有人说要做一个,apt-get upgrade但它仍然没有解决我的问题。
Man*_*nha 75
当您尝试安装 APT 不知道的软件包时,就会发生这种情况。添加软件源时,您需要执行以下操作,apt-get update以便使用软件源列表中列出的存储库中的所有软件包更新系统 APT 的数据库。
然后,当您尝试安装任何软件包时,APT 会检查其数据库中的软件包名称,找到它并检查它从何处获取的存储库名称。然后它从该 repo 下载包。
这意味着您的软件源中列出的所有存储库都没有名为munin-memcached. 我再次检查,它在官方 Ubuntu 存储库中不可用。
经过一番谷歌搜索后,我发现它在这个 PPA 中可用:chris-lea/munin-plugins
添加此 PPA 并自行承担安装包的风险。我不认识这个人。
要添加 PPA,请发出以下命令:
sudo add-apt-repository ppa:chris-lea/munin-plugins
Run Code Online (Sandbox Code Playgroud)
要安装 package munin-memcached,请发出以下命令:
sudo apt-get update && sudo apt-get install munin-memcached
Run Code Online (Sandbox Code Playgroud)
这意味着某些已安装的软件包说它需要一个名为 munin-memcached 的软件包才能工作。但是包管理器在存储库中找不到它。它通常后面跟着一些关于缺少哪些包的信息,但这里没有。
标准 Ubuntu 存储库中没有包名称 munin-memcached,因此您可能使用了一些额外的存储库。如果你把它贴在这里,我们可以尝试找到原因。
这Package <package> has no installation candidate意味着在您的 Ubuntu 发行版软件源中找不到该软件包。
出现此消息的一个可能原因是该软件包是一个旧软件包,已从您的版本的默认存储库中停止使用。例如,qt4-default 已从 Ubuntu 20.04 及更高版本的默认存储库中停止使用。要检查这种可能性,请运行以下命令:
雷麦迪森<包>
此命令将显示哪些 Ubuntu 版本提供此软件包,还将显示哪个存储库提供此软件包。
出现此消息的另一个可能原因是此软件包不适用于您计算机的 CPU 架构。如果您的计算机具有 ARM 处理器,则值得检查。再次运行rmadison <package>即可显示此信息。rmadison <package>还将显示您正在查找的软件包是否仅作为源代码提供,在这种情况下,您必须使用 下载软件包的源代码apt-get source <package>,从使用 checkinstall 等程序下载的源代码构建 .deb 文件,然后安装 .deb 文件文件与sudo apt install ./package.deb
出现此消息的另一个可能原因是,由于软件源中的可用软件列表尚未更新,因此在可用软件列表中找不到此软件包。要更新可用软件列表,请运行以下命令:
rmadison <package>
出现此消息的另一个可能原因是代理配置问题。
aptitude是一个基于终端的包管理器,其命令行模式与 apt-get 类似,只是它更智能。aptitude 可以帮助解决生成 E: Package 'package-name' has no installation candidate错误消息的包冲突。
sudo apt 安装 aptitude sudo aptitude install package-name # 将 package-name 替换为包的名称
假设您在 Ubuntu 20.04 中收到以下错误消息。
sudo apt update
Run Code Online (Sandbox Code Playgroud)
看来 libssl 可能在 Ubuntu 20.04 默认存储库中可用,但它已被重命名,因为 libssl 已升级到较新的版本。要检查 libssl0.9.8 是否已在 Ubuntu 20.04 中重命名,请运行以下命令:
sudo apt install aptitude sudo aptitude install package-name # replace package-name with the name of a package
18.04-22.04的结果apt-cache search "^libssl.*"显示libssl0.9.8已经升级到libssl1.1。
| 归档时间: |
|
| 查看次数: |
396205 次 |
| 最近记录: |