详解linux下软件安装的NOKEY问题
2012-11-12 00:00
148 查看
1.开始~疑心?NOKEY?
事情缘起于安装flash-plugin,相信很多人跟我一样,都对这个插件的安装很熟悉了,不过还是扯一下吧。开始的时候是去adobe官网下载了yum版本(yum install adobe-release-i386-1.0-1.noarch.rpm),执行安装的时候出现一段提示:
code:
$ sudo rpm -ivh adobe-release-i386-1.0-1.noarch.rpm
warning: adobe-release-i386-1.0-1.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID f6777c67: NOKEY
Preparing... ########################################### [100%]
1:adobe-release-i386 ########################################### [100%]
虽然显示百分百,但重新打开网页,还是没有一样的,没有安装上去,于是就选择了rpm版本(flash-plugin-11.2.202.251-release.i386.rpm),简单地使用rpm命令安装了,但是这也使我萌发了对key的疑惑。
2.探索~chrome~这是一把钥匙!
firefox的书签同步总是让我心烦,于是我就想尝试使用chrome,去官网下载了chrome安装包(google-chrome-stable_current_i386.rpm),执行安装时出现一段提示:
code:
$ sudo rpm -ivh google-chrome-stable_current_i386.rpm
warning: google-chrome-stable_current_i386.rpm: Header V4 DSA/SHA1 Signature, key ID 7fac5991: NOKEY
error: Failed dependencies:
lsb >= 4.0 is needed by google-chrome-stable-23.0.1271.64-165188.i386
又是NOKEY!!!这回我下定决心要解决这个问题了,于是通过百度google查询之后,总结了几点,供大家斟酌采纳。
3.究竟什么是KEY?
KEY,翻译过来就是“钥匙”,谷歌对 RPM key的解释是:
The Linux Package Signing Key
Google’s Linux packages are signed with a GNU Privacy Guard (GPG) key. Google’s packages will automatically configure your package manager to verify product updates with the public signing key, but you may also install it separately if, for instance, you want to verify the integrity of an initial package download. Follow the instructions below to manually configure your package manager to use the key.
也就是说,谷歌使用KEY验证软件包,也许这是出于对软件的保护吧,总之现在利用KEY来验证软件包是很常有的事啦。
应该注意到的是如果签名校验失败,你就会看到KEY ID的错误消息:
error: V3 DSA signature: BAD, key ID 0352860f
如果它是新的、只针对文件头的签名,你会看到如下所示的错误消息:
error: Header V3 DSA signature: BAD, key ID 0352860f
如果你没有安装合适的钥匙来校验签名,消息中就会包含 NOKEY ,如:
warning: V3 DSA signature: NOKEY, key ID 0352860f
在CentOS或者Fedora下有时候用yum安装软件的时候最后会提示:
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID*****
这是由于yum安装了旧版本的GPG keys造成的,解决办法就是
rpm --import /etc/pki/rpm-gpg/RPM*
再安装软件时就不会有这个错误提示了。
The Linux Package Signing Key
但是以上只说明了一种情况,也就是Header V3 DSA****NOKEY,实际情况是还存在另外一种,也即:Header V4 DSA****NOKEY。
出现这个的原因是linux的发行版和linux应用软件之间的兼容性出现问题,也就是LSB。具体说来,LSB是:1、一个二进制接口规范,是指应用程序在系统间迁移时不用重新编译,保证应用程序在所有经过认证的LINUX发行版上都具有兼容性(最直接的价值体现)。2、一个测试规范,测试LINUX发行版和LINUX应用程序是否符合LSB标准(抽象意义了)。3、搭建遵从LSB规范的应用程序的开发环境(对于开发者而言)。4、为在纯LSB环境下运行和测试应用程序而提供的运行环境样本(是啊,模板)。详细
4000
参见百度百科:http://baike.baidu.com/view/1000668.htm
那么怎么解决呢?很简单,只要输入:
sudo yum install lsb
即可,再次安装软件包就不会出现这个问题啦。
事情缘起于安装flash-plugin,相信很多人跟我一样,都对这个插件的安装很熟悉了,不过还是扯一下吧。开始的时候是去adobe官网下载了yum版本(yum install adobe-release-i386-1.0-1.noarch.rpm),执行安装的时候出现一段提示:
code:
$ sudo rpm -ivh adobe-release-i386-1.0-1.noarch.rpm
warning: adobe-release-i386-1.0-1.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID f6777c67: NOKEY
Preparing... ########################################### [100%]
1:adobe-release-i386 ########################################### [100%]
虽然显示百分百,但重新打开网页,还是没有一样的,没有安装上去,于是就选择了rpm版本(flash-plugin-11.2.202.251-release.i386.rpm),简单地使用rpm命令安装了,但是这也使我萌发了对key的疑惑。
2.探索~chrome~这是一把钥匙!
firefox的书签同步总是让我心烦,于是我就想尝试使用chrome,去官网下载了chrome安装包(google-chrome-stable_current_i386.rpm),执行安装时出现一段提示:
code:
$ sudo rpm -ivh google-chrome-stable_current_i386.rpm
warning: google-chrome-stable_current_i386.rpm: Header V4 DSA/SHA1 Signature, key ID 7fac5991: NOKEY
error: Failed dependencies:
lsb >= 4.0 is needed by google-chrome-stable-23.0.1271.64-165188.i386
又是NOKEY!!!这回我下定决心要解决这个问题了,于是通过百度google查询之后,总结了几点,供大家斟酌采纳。
3.究竟什么是KEY?
KEY,翻译过来就是“钥匙”,谷歌对 RPM key的解释是:
The Linux Package Signing Key
Google’s Linux packages are signed with a GNU Privacy Guard (GPG) key. Google’s packages will automatically configure your package manager to verify product updates with the public signing key, but you may also install it separately if, for instance, you want to verify the integrity of an initial package download. Follow the instructions below to manually configure your package manager to use the key.
也就是说,谷歌使用KEY验证软件包,也许这是出于对软件的保护吧,总之现在利用KEY来验证软件包是很常有的事啦。
应该注意到的是如果签名校验失败,你就会看到KEY ID的错误消息:
error: V3 DSA signature: BAD, key ID 0352860f
如果它是新的、只针对文件头的签名,你会看到如下所示的错误消息:
error: Header V3 DSA signature: BAD, key ID 0352860f
如果你没有安装合适的钥匙来校验签名,消息中就会包含 NOKEY ,如:
warning: V3 DSA signature: NOKEY, key ID 0352860f
在CentOS或者Fedora下有时候用yum安装软件的时候最后会提示:
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID*****
这是由于yum安装了旧版本的GPG keys造成的,解决办法就是
rpm --import /etc/pki/rpm-gpg/RPM*
再安装软件时就不会有这个错误提示了。
The Linux Package Signing Key
但是以上只说明了一种情况,也就是Header V3 DSA****NOKEY,实际情况是还存在另外一种,也即:Header V4 DSA****NOKEY。
出现这个的原因是linux的发行版和linux应用软件之间的兼容性出现问题,也就是LSB。具体说来,LSB是:1、一个二进制接口规范,是指应用程序在系统间迁移时不用重新编译,保证应用程序在所有经过认证的LINUX发行版上都具有兼容性(最直接的价值体现)。2、一个测试规范,测试LINUX发行版和LINUX应用程序是否符合LSB标准(抽象意义了)。3、搭建遵从LSB规范的应用程序的开发环境(对于开发者而言)。4、为在纯LSB环境下运行和测试应用程序而提供的运行环境样本(是啊,模板)。详细
4000
参见百度百科:http://baike.baidu.com/view/1000668.htm
那么怎么解决呢?很简单,只要输入:
sudo yum install lsb
即可,再次安装软件包就不会出现这个问题啦。
相关文章推荐
- linux下软件安装的NOKEY问题
- Linux下软件源码包安装问题解决方法
- 【linux】详解linux 下安装软件tar.gz, rpm,deb的方法
- Linux下软件安装详解
- 【ZYNQ_LINUX】使用问题:05 apt-get 安装软件出错
- 解决linux安装软件:/lib/ld-linux.so.2: bad ELF interpreter问题
- Linux使用apt-get安装软件时出现的问题
- linux工作中软件运行安装常见问题
- dpkg-preconfigure命令_Linux dpkg-preconfigure 命令用法详解:Debian Linux中软件包安装之前询问问题
- linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决
- Linux常用yum命令—安装、升级、卸载、软件包查询、软件组管理命令、以及升级、卸载需要注意的问题
- linux学习之samba安装问题详解
- 安装Linux软件时没有图形界面的问题
- linux下各种软件安装方法详解
- Linux 安装软件 常见问题 x86 or x64
- linux安装软件(rpm/yum/apt-get/python)等解决依赖问题
- Linux下软件安装详解- -
- Linux第一天 ssh登录和软件安装详解
- Linux下安装软件命令详解
- Linux下软件安装详解