yum list kernel-headers --showduplicates
在 Ubuntu 等上是否有这个命令的等效项。apt-get, apt-cache
上述命令列出了 F20/RHEL 或安装上可用的内核头 rpm 的各种版本。
我可以使用壁橱apt-cache showpkg
,不知道是否有更好的方法?
$ apt-cache showpkg linux-image
Package: linux-image
Versions:
Reverse Depends:
firmware-crystalhd,linux-image
systemtap,linux-image
fiaif,linux-image
Dependencies:
Provides:
Reverse Provides:
linux-image-3.13.0-27-lowlatency 3.13.0-27.50
linux-image-3.13.0-27-generic 3.13.0-27.50
linux-image-3.13.0-24-lowlatency 3.13.0-24.47
linux-image-3.13.0-24-generic 3.13.0-24.47
linux-image-3.13.0-24-lowlatency 3.13.0-24.46
linux-image-3.13.0-24-generic 3.13.0-24.46
期望类似的输出:
$ yum list kernel-headers --showduplicates
Loaded plugins: langpacks, refresh-packagekit
Installed Packages
kernel-headers.x86_64 3.11.10-301.fc20 @fedora
Available Packages
kernel-headers.x86_64 3.11.10-301.fc20 fedora
kernel-headers.x86_64 3.14.4-200.fc20 updates
这将帮助我简单地降级或升级到特定版本。
答案1
您有正确的命令,但 linux-image 不是真正的包名称。
$ apt-cache show linux-image
N: Can't select versions from package 'linux-image' as it is purely virtual
N: No package found
apt-cache showpkg
应该适用于真正的包裹。例如
$ apt-cache showpkg lyx
Package: lyx
Versions:
2.1.0-1~trusty~ppa4 (/var/lib/apt/lists/ppa.launchpad.net_lyx-devel_release_ubuntu_dists_trusty_main_binary-amd64_Packages) (/var/lib/dpkg/status)
Description Language:
File: /var/lib/apt/lists/ppa.launchpad.net_lyx-devel_release_ubuntu_dists_trusty_main_binary-amd64_Packages
MD5: 8c75d53cfd29c5b19c2172cb07b7fe9a
2.0.6-1build1 (/var/lib/apt/lists/ftp.iinet.net.au_pub_ubuntu_dists_trusty_universe_binary-amd64_Packages)
如果你想查看类似软件包的所有版本linux-image
,你可以进行搜索,例如
$ apt-cache search linux-image | grep '^linux-image'
问题在于内核的不同版本(linux-image
)位于单独的软件包中,并根据版本单独命名。它们并不是同一个软件包的所有版本。
编辑
这将列出所有可用的软件包。要显示已安装的软件包,您可以使用dpkg -l
。例如
$ dpkg -l lyx
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 lyx 2.1.0-1~trusty~ppa4 amd64 Document Processor
编辑2
获取有关不同但名称相似的包(例如linux-image*
)的信息的另一种方式是使用aptitude search
。
$ aptitude search linux-image
您还可以使用 grep 进行过滤语法不通解决能力缺陷/特性。
$ aptitude -w $COLUMNS search linux-image | grep '32 bit'
第一列中的表示i
已安装。man aptitude
其他字符请参见。
答案2
我认为你正在寻找麦迪逊apt-cache 中的命令:
apt-cache madison chromium-browser
输出:
chromium-browser | 50.0.2661.102-0ubuntu0.14.04.1.1117 | http://archive.ubuntu.com/ubuntu/ trusty-updates/universe amd64 Packages
chromium-browser | 50.0.2661.102-0ubuntu0.14.04.1.1117 | http://security.ubuntu.com/ubuntu/ trusty-security/universe amd64 Packages
chromium-browser | 34.0.1847.116-0ubuntu2 | http://archive.ubuntu.com/ubuntu/ trusty/universe amd64 Packages
显示所有可用版本及其来源仓库的快速参考。如果您使用 PPA 软件包并想检查 PPA 和主仓库之间的版本差异,这非常有用。
有关 madison 的更多信息,请参阅手册页:
madison pkg...
apt-cache's madison command attempts to mimic the output format and a subset of the functionality of the Debian archive management tool,
madison. It displays available versions of a package in a tabular format. Unlike the original madison, it can only display information
for the architecture for which APT has retrieved package lists (APT::Architecture).
答案3
您可以使用dpkg
以下命令查看所有已安装的包:
$ dpkg --get-selections | grep -v deinstall | grep linux-image
在 Debian 上调用 Linux 内核元包linux-image-generic
。
$ apt-cache madison linux-image-generic
将为您提供 APT 存储库中可用的所有版本(不一定安装在您的系统上)。
答案4
您是否尝试过启动旧内核,并在终端中输入:
showpkg kernel-header.list
我认为它可能在启动目录中,并且所有内核都位于那里,并且它可能工作正常。
然后您只需在终端中输入降级即可:
sudo apt-get -y --force-yes purge linux-shim-efi shim-amd64-generic linux-shim-amd64
这样也许能很好地发挥作用。