让 apt install 忽略丢失的包

让 apt install 忽略丢失的包

我经常发现自己这样做::~$ sudo apt install php7.4 mysql-server git composer curl apache2 --yes

我有时会得到这样的回应:

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package mysql-server 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 'mysql-server' has no installation candidate

我怎样才能避免这种情况?我尝试重定向 stderr 但没有运气。我用谷歌搜索没有结果,但似乎没有人遇到这种情况。

基本上,我想扔掉 apt install 一堆我想安装的软件包,如果我出错了,我希望程序继续其余的。

提前谢谢了!

答案1

apt-get(和apt)可以-m选择忽略丢失的包。从man apt-get

-m, --ignore-missing,--fix-missing

忽略丢失的包裹;如果无法检索包或检索后未通过完整性检查(包文件损坏),则保留这些包并处理结果。

在某些情况下,与 一起使用此选项-f可能会产生错误。

如果选择安装某个软件包(特别是在命令行中提到该软件包)并且无法下载该软件包,那么它将被静默地阻止。

配置项:APT::Get::Fix-Missing.

相关内容