每次我看到运行的指令时apt-get install
,它都会说先运行。和也是apt-get update
一样。upgrade
dist-upgrade
为什么不自动安装update
?是否有你不想要的情况?
答案1
apt-get update
更新可用软件包及其版本号的列表。
您正在寻找的用例可能是:如果您想apt-get install
在短时间内运行两次,则只需要运行apt-get update
一次,因为在此期间包列表不太可能发生变化。
答案2
正如另一个答案中提到的,apt-get update
更新可用软件包列表。因此,除非可用软件包列表发生变化,否则它只是在浪费时间和(并不多)带宽。
apt-get update
之前经常看到的原因apt-get install
有两点:
- 通常这是在添加 PPA或其他一些包源;在这种情况下,您显然需要更新可用包列表,因为您所做的第一件事就是将其添加到可用包列表中。
- 在开发期间,档案库变化非常快;一天内软件包列表可能会有数百次更改,因此
apt-get update
首先进行更改通常是明智的,这样您就不会尝试下载不再可用的版本。发行版发布后,更改次数会急剧下降 - 通常每周不会超过几次。apt-get update
在这种情况下,在安装之前运行几乎没有意义。
答案3
除了sudo apt-get update
最近跑步,还有一些其他情况您可能决定在运行之前不运行它sudo apt-get install ...
:
- 您正在安装来自当地的已配置的软件源,例如刻录/写入 Ubuntu ISO 的 CD/DVD 或 USB 闪存驱动器。
您知道您想要安装的包已在本地缓存(在 中
/var/cache/apt/archives
),无论是因为它之前被安装过,还是已经运行过sudo apt-get --download-only install ...
,并且您想从那里安装它,而不是下载它。(也许您想用该版本做一些事情,即使它不是最新版本,或者您的互联网连接非常慢,或者您没有连接到互联网。)
您知道没有可用的软件包的更高版本。例如,
nano
Ubuntu 的启动板页面显示只有“发布”版本可用——“安全”、“更新”或“建议”中没有任何可用内容。(相比之下,你可以看到firefox
在 Ubuntu 中确实有这样的更新。您希望节省时间,即使面临安装比推荐版本更旧的软件包的风险,或者面临安装失败的风险,因为您的系统要安装的软件包不再可用,或者列出的依赖项不再可用,或者与系统上已有的一些较新的软件冲突。
如果您的系统配置为自动检查更新,并且全天候连接到互联网,则这种风险可能被认为足够低,以至于
sudo apt-get update
大多数时间都无需手动运行(请参阅RAOF 的回答和其中的评论)。