如何更新单个软件包?至于man apt-get
说不apt-get upgrade
以软件包/软件包列表作为参数:
升级
upgrade 用于安装系统中当前安装的所有软件包的最新版本,这些软件包均来自 中列举的源
/etc/apt/sources.list
。当前安装的软件包如果有新版本可用,则将被检索和升级;在任何情况下,当前安装的软件包都不会被删除,或者尚未安装的软件包不会被检索和安装。如果当前安装的软件包的新版本无法在不更改其他软件包的安装状态的情况下升级,则将保留其当前版本。必须先执行更新,以便 apt-get 知道有新版本的软件包可用。
答案1
你只需要执行apt-get install --only-upgrade <packagename>
。这将仅升级该单个软件包,并且仅当它已安装时才升级。
如果您希望安装该软件包(如果它不存在)或者升级它(如果它存在),您可以省略--only-upgrade
。
答案2
为了使用 CLI 更新单个包:
sudo apt-get install --only-upgrade <packagename>
例如,sudo apt-get install --only-upgrade ack
Reading package lists... Done
Building dependency tree
Reading state information... Done
Skipping **ack**, it is not installed and only upgrades are requested.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
答案3
我能想到两种可能的方法:
sudo apt-get install nameofpackage
即使已经安装,这也会升级该软件包:
~$ sudo apt-get install emesene Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be upgraded: emesene 1 upgraded, 0 newly installed, 0 to remove and 5 not upgraded. Need to get 1,486 kB of archives. After this operation, 696 kB disk space will be freed. Get:1 http://il.archive.ubuntu.com/ubuntu/ natty-updates/universe emesene all 2.11.4+dfsg-0ubuntu1 [1,486 kB]
使用
Synaptic Package Manager
:右键点击→标记为升级:笔记:有时它可能会要求提供额外的包或依赖项,这是正常的。
答案4
在 Ubuntu 9.04 Jaunty 上,
apt-get --only-upgrade install <package>
产量:
E: Sense only is not understood, try true or false.
命令
apt-get --only-upgrade true install <package>
对我来说是有效的。