Luk*_*ins 7 upgrade updates apt
我有一个最新的 Ubuntu 安装 (13.10)。
当我运行/usr/lib/update-notifier/apt-check它时返回7:0,即 7 个可用更新,但没有一个是安全的。
但是,当我尝试升级时,我得到以下信息:
sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages have been kept back:
linux-generic linux-headers-generic linux-image-generic
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
Run Code Online (Sandbox Code Playgroud)
谁能解释为什么以及如何让 apt-check 返回正确的值?如果 apt-check 返回,3:0那么这似乎是有道理的,但是 7 是从哪里来的?
顺便说一句,apt-check 是随sudo apt-get install update-notifier.
/usr/lib/update-notifier/apt-check
Run Code Online (Sandbox Code Playgroud)
实际上相当于返回的统计信息
apt-get -s dist-upgrade | grep "^[[:digit:]]\+ upgraded"
Run Code Online (Sandbox Code Playgroud)
并不是
apt-get upgrade|grep "^[[:digit:]]\+ upgraded"
Run Code Online (Sandbox Code Playgroud)
例如
/usr/lib/update-notifier/apt-check --human-readable
Run Code Online (Sandbox Code Playgroud)
返回
22 packages can be updated.
0 updates are security updates.
Run Code Online (Sandbox Code Playgroud)
然而
apt-get -s dist-upgrade | grep "^[[:digit:]]\+ upgraded"
Run Code Online (Sandbox Code Playgroud)
返回
18 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Run Code Online (Sandbox Code Playgroud)
它实际上18+4相当于22.
从 apt-get 手册:
upgrade
upgrade is used to install the newest versions of all packages
currently installed on the system from the sources enumerated in
/etc/apt/sources.list. Packages currently installed with new
versions available are retrieved and upgraded; under no
circumstances are currently installed packages removed, or packages
not already installed retrieved and installed. New versions of
currently installed packages that cannot be upgraded without
changing the install status of another package will be left at
their current version. An update must be performed first so that
apt-get knows that new versions of packages are available.
dist-upgrade
dist-upgrade in addition to performing the function of upgrade,
also intelligently handles changing dependencies with new versions
of packages; apt-get has a "smart" conflict resolution system, and
it will attempt to upgrade the most important packages at the
expense of less important ones if necessary. So, dist-upgrade
command may remove some packages. The /etc/apt/sources.list file
contains a list of locations from which to retrieve desired package
files. See also apt_preferences(5) for a mechanism for overriding
the general settings for individual packages.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6741 次 |
| 最近记录: |