我在 CentOS 机器上。几周前我更新并安装了一些软件包,但我不记得每个软件包的名称或每个依赖项的名称。我用过yum。
我可以按上次安装或更新的日期列出系统上的软件包吗?
这些文件格式是什么?它们与.msiWindows 中的格式有何不同?另外这些包管理方案的优缺点是什么?
我有一台具有网络连接的服务器,我可以在其中使用“yum install $PACKAGE”。
我想要一些 yum 命令,yum cache-rpms $PACKAGE $DIRECTORY例如所有需要的 RPM 文件都将下载到 $DIRECTORY,其中还有一个文件 ( Install.sh),说明在许多其他没有网络连接的服务器上安装这些 RPM 的顺序。
Install.sh甚至可能是一个 shell 脚本,它的行为与 相同yum install $PACKAGE,只是它不会使用网络,而只会使用$DIRECTORY.
可能的?
我正在寻找可以使用 yum 和 RPM 的通用解决方案,但为了特殊性:它位于一组 CENTOS 6.7 服务器上。
可以使用该rpm -K命令验证 RPM 的加密签名。如果签名在 RPM 的数据库中并且有效,这将返回一个包含gpg(或pgp) 并以 结尾的字符串OK。
如果包未签名但校验和有效,您仍然会得到OK,但不会得到gpg。
如果包已签名但密钥从 RPM 数据库中丢失,您会得到(GPG)(大写字母)和NOT OKAY,后跟(MISSING KEYS: GPG#deadbeef).
如果我想弄清楚我应该找到什么密钥来安装我的包安装工作,这很方便。
但是,如果我想验证RPM 密钥环中的哪些密钥用于对给定的包进行签名,该怎么办?
我在命令行模式下使用YUM包管理器在我的 Red Hat Enterprise Linux Server 6 机器上下载并安装包。
当我在Android手机上安装apk文件时,它们会转到目录,我想知道RHEL6将其安装的rpm文件保存在哪里?/data/app
我想知道理论上是否有可能构建一个既支持 rpm 又支持 debian 包的 Linux 发行版。
是否有任何发行版同时支持两者?
如果不是,它甚至可能吗?
我想在 Arch Linux 上从 Oracle 安装 sqldeveloper。唯一的 Linux 下载选项是 RPM。我对使用 arch 存储库安装 sqldeveloper 不感兴趣。我只能使用供应商提供的东西。
对于 Ubuntu,有这个方便的 PPA 服务可用,您可以在其中获得自己的包存储库。
你可以把开源许可下的源包放在那里,例如你的软件的开发快照。
(服务器负责创建正确的二进制包并使用存储库密钥对其进行签名。)
然后用户只需要用一个命令添加存储库地址,就可以通过 apt-get 安装软件包。
由于我正在研究 Fedora - 是否有类似的东西可用于 Fedora 软件包?
如果是,支持哪些架构/分发版本?有多少可用空间?
通过这样的服务(例如当前的 Fedora 版本和 RHEL)为多个 rpm 发行版发布包的方式是什么?
我遇到了问题,yum我正在尝试重新安装它。我已经下载yum.3.2.0-40-el6.centos.noarch.rpm。
当我尝试:
$ rpm -ivh yum.3.2.0-40-el6.centos.noarch.rpm
Run Code Online (Sandbox Code Playgroud)
我得到:
错误:无法在 /var/lib/rpm/.rpm.lock 上创建事务锁(权限被拒绝)
我尝试运行su -,但出现此错误:
-bash: su: 命令未找到`
如果我尝试卸载yum并强制忽略依赖项(不强制忽略依赖项,它会因一些依赖项而无法卸载),我会收到相同的“权限被拒绝错误” 。
我想知道是否wget可以sudo rpm -i在一行中下载 RPM 然后通过管道安装它?我意识到我可以运行:
wget -c <URL>
sudo rpm -i <PACKAGE-NAME>.rpm
Run Code Online (Sandbox Code Playgroud)
安装软件包,但我想知道是否可以使用 wget 的安静和写入标准输出选项在一行中完成此操作。我试过使用:
wget -cqO- <URL> | sudo rpm -i
Run Code Online (Sandbox Code Playgroud)
但它返回:
rpm: no packages given for install
Run Code Online (Sandbox Code Playgroud)