如何在使用apt-get安装软件包之前检查版本

我正在考虑安装上个月发布在我的Debian PC上的hylafax + 5.5.4版本。

我检查了dpkg -l | grep "hylafax" dpkg -l | grep "hylafax" ,发现目前的版本是5.5.3。 然后我检查了apt-cache search hylafax ,看到这些软件包是可用的,但我看不到任何版本号。

如何findapt-get可用的软件包版本?

好的,我find了。

apt-cache policy <package name>会显示版本信息。

它还显示当前安装了哪个版本以及可以安装哪些版本。

例如, apt-cache policy hylafax+

apt-cache policy <package-name>

 $ apt-cache policy redis-server redis-server: Installed: (none) Candidate: 2:2.8.4-2 Version table: 2:2.8.4-2 0 500 http://us.archive.ubuntu.com/ubuntu/ trusty/universe amd64 Packages 

apt-get install -s <package-name>

 $ apt-get install -s redis-server NOTE: This is only a simulation! apt-get needs root privileges for real execution. Keep also in mind that locking is deactivated, so don't depend on the relevance to the real current situation! Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libjemalloc1 redis-tools The following NEW packages will be installed: libjemalloc1 redis-server redis-tools 0 upgraded, 3 newly installed, 0 to remove and 3 not upgraded. Inst libjemalloc1 (3.5.1-2 Ubuntu:14.04/trusty [amd64]) Inst redis-tools (2:2.8.4-2 Ubuntu:14.04/trusty [amd64]) Inst redis-server (2:2.8.4-2 Ubuntu:14.04/trusty [amd64]) Conf libjemalloc1 (3.5.1-2 Ubuntu:14.04/trusty [amd64]) Conf redis-tools (2:2.8.4-2 Ubuntu:14.04/trusty [amd64]) Conf redis-server (2:2.8.4-2 Ubuntu:14.04/trusty [amd64]) 

apt-cache show <package-name>

 $ apt-cache show redis-server Package: redis-server Priority: optional Section: universe/misc Installed-Size: 744 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Original-Maintainer: Chris Lamb <lamby@debian.org> Architecture: amd64 Source: redis Version: 2:2.8.4-2 Depends: libc6 (>= 2.14), libjemalloc1 (>= 2.1.1), redis-tools (= 2:2.8.4-2), adduser Filename: pool/universe/r/redis/redis-server_2.8.4-2_amd64.deb Size: 267446 MD5sum: 066f3ce93331b876b691df69d11b7e36 SHA1: f7ffbf228cc10aa6ff23ecc16f8c744928d7782e SHA256: 2d273574f134dc0d8d10d41b5eab54114dfcf8b716bad4e6d04ad8452fe1627d Description-en: Persistent key-value database with network interface Redis is a key-value database in a similar vein to memcache but the dataset is non-volatile. Redis additionally provides native support for atomically manipulating and querying data structures such as lists and sets. . The dataset is stored entirely in memory and periodically flushed to disk. Description-md5: 9160ed1405585ab844f8750a9305d33f Homepage: http://redis.io/ Bugs: https://bugs.launchpad.net/ubuntu/+filebug Origin: Ubunt 

dpkg -l <package-name>

 $ dpkg -l nginx Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-========================================-=========================-=========================-===================================================================================== ii nginx 1.6.2-1~trusty amd64 high performance web server 

另外, apt-show-versions软件包(单独安装)会分析有关安装的dpkg信息,并告诉您软件包是否为最新版本。

例..

 $ sudo apt-show-versions --regex chrome google-chrome-stable/stable upgradeable from 32.0.1700.102-1 to 35.0.1916.114-1 xserver-xorg-video-openchrome/quantal-security uptodate 1:0.3.1-0ubuntu1.12.10.1 $ 

以下可能工作得很好:

 aptitude versions ^hylafax+ 

在aptitude中查看更多(8)

 apt policy <package> 

简而言之

在其他地方张贴,这也适用:

apt-cache madison <package_name>

另外,根据手册页:

 apt-cache showpkg <package_name> 

也可以用来:

…显示有关在命令行上列出的软件包的信息。 剩余的参数是软件包名称。 列出了每个软件包的可用版本和反向依赖关系,以及每个版本的转发依赖关系。 转发(正常)依赖项是所涉及的包所依赖的那些包; 反向依赖关系是那些依赖于所涉及的软件包的软件包。 因此,一个包必须满足前向依赖关系,但是反向依赖关系不需要。

例如:

 apt-cache policy conky conky: Installed: (none) Candidate: 1.10.3-1 Version table: 1.10.3-1 500 500 http://us.archive.ubuntu.com/ubuntu yakkety/universe amd64 Packages 500 http://us.archive.ubuntu.com/ubuntu yakkety/universe i386 Packages 

在debian上:

 apt list --upgradable 

给出包的列表,要升级的版本以及包的实际版本。

结果:

 base-files/stable 8+deb8u8 amd64 [upgradable from: 8+deb8u7] bind9-host/stable 1:9.9.5.dfsg-9+deb8u11 amd64 [upgradable from: 1:9.9.5.dfsg-9+deb8u9] ca-certificates/stable 20141019+deb8u3 all [upgradable from: 20141019+deb8u2] certbot/jessie-backports 0.10.2-1~bpo8+1 all [upgradable from: 0.8.1-2~bpo8+1] dnsutils/stable 1:9.9.5.dfsg-9+deb8u11 amd64 [upgradable from: 1:9.9.5.dfsg-9+deb8u9]