在 Linux 中从 CLI 升级一些在线仓库中的软件包

在 Linux 中从 CLI 升级一些在线仓库中的软件包

我在 CentOS 上并尝试了以下操作:

[root@XMPP tigase]# rpm -Uvh MySQL-server-5.5.15-1.linux2.6.x86_64.rpm
error: open of MySQL-server-5.5.15-1.linux2.6.x86_64.rpm failed: No such file or directory

SSH 让人回想起上个世纪,让我想起 Linux 是多么的灵活和不友好。

我该如何配置存储库(如果尚未配置)?我该如何让 RPM 相信我希望它从这些存储库升级?

答案1

正如评论中提到的,rpm是一个包管理器。yum,也是一个包管理器,但它为您解决包依赖关系,并用于rpm实际安装包。

两者都可用于安装软件,但如果软件包具有依赖关系(通常都有),rpm如果这些软件包未包含在命令行中,则会中止,而 yum 将自动满足并为您安装所有依赖关系。

yum要求您配置至少一个存储库,从中获取软件,rpm需要直接访问包(下载.rpm或从 ftp/http 提供)。

那么,答案是。检查是否已配置任何 repo

ls /etc/yum.repos.d

如果返回类似这样的文件*.repo,那么应该已经存在了。如果没有,请尝试:

# vim /etc/yum.repos.d/centos.repo

包含以下内容(假设您运行的是 centos 6.0):

[centos]
name=centos
baseurl=http://mirror.centos.org/centos/6.0/os/x86_64
enabled=1
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/6.0/os/x86_64/RPM-GPG-KEY-CentOS-6

然后(如果已经配置了 repos 或者你刚刚配置了),运行:

# yum search mysql

这应该连接到已配置的存储库,获取与模式匹配的可用包列表mysql。一旦确定了包名称(应该是mysql-server),只需:

# yum install mysql-server

如果你想安装/更新软件,yum并且不想处理依赖关系问题,请使用

相关内容