我正在尝试安装新的 2016 年开放 ssl 软件包,但在 Ubuntu 12.04 上仍然看到旧的 2012 版本。
我有一堆 Ubuntu 12.04 专用机器无法连接到互联网。他们都在运行 2012 年的 openssl 1.0.1 (运行时:openssl version
我得到:)OpenSSL 1.0.1 14 Mar 2012
。
我需要将 openssl 升级到新的版本,因此在可以访问互联网的测试机器上,我安装了 openssl_1.0.1-4ubuntu5.33_amd64.deb ,这是我们主 2016 年的新包,其 dpkg 如下所示:
sudo apt-get download openssl
sudo dpkg -i openssl_1.0.1-4ubuntu5.33_amd64.deb
输出是:
(Reading database ... 70268 files and directories currently installed.)
Preparing to replace openssl 1.0.1-4ubuntu5.33 (using openssl_1.0.1-4ubuntu5.33_amd64.deb) ...
Unpacking replacement openssl ...
Setting up openssl (1.0.1-4ubuntu5.33) ...
Processing triggers for man-db ...
就是这样。我openssl version
再次运行:仍然看到:OpenSSL 1.0.1 14 Mar 2012
我重新启动,只是为了它。没有帮助。我尝试sudo apt-get install openssl
并得到了
openssl is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 354 not upgraded
叹:-( 我做错了吗?
答案1
所以,问题是(如果我理解正确的话)假设上游版本没有改变,如何找出被 Debian 修改过的软件包的日期。
上游(非本机)软件的 Debian/Ubuntu 软件包版本号始终由两部分组成。破折号之前的部分,是上游编号,破折号之后的部分,对应 Debian/Ubuntu 所做的更改。要查看 Debian/Ubuntu 的特定更改,请查看/usr/share/doc/openssl/changelog.Debian.gz
. Debian 编号(无论叫什么)有时可能会反映在版本字符串中,但并非总是如此。如果是这种情况,则版本字符串可能已被 Debian/Ubuntu 修改。在这种情况下,似乎还没有。要查看曾经发生过的情况,请参阅
gcc --version
gcc-4.9.real (Debian 4.9.2-10) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
gcc 指向 gcc-4.9。
root@orwell:/home/faheem# ls -lah /usr/bin/gcc lrwxrwxrwx 1 root root 7 Feb 25 2015 /usr/bin/gcc -> gcc-4.9
该系统上的 gcc 4.9 软件包的版本是:
dpkg -l gcc-4.9
||/ Name Version Architecture Description
+++-=================================-=====================-=====================-=======================================================================
ii gcc-4.9 4.9.2-10 amd64 GNU C compiler