为什么CentOS 7.2无法安装最新版本的rsync?
Why couldn't the latest version of rsync be installed on CentOS 7.2?
我使用的是 CentOS 7.2。
我想安装最新版本的 rsync - rsync-3.1.2
,
rsync-3.0.9
在系统上,在使用 yum
、
安装 mariadb 时安装
# rpm -qa |grep rsync
rsync-3.0.9-17.el7.x86_64
先删除 rsync-3.0.9
,
# yum remove rsync
rsync 和 mariadb 一起被删除,
那么,
从源代码安装 rsync-3.1.2
,
# wget https://download.samba.org/pub/rsync/src/rsync-3.1.2.tar.gz
# tar -zxvf rsync-3.1.2.tar.gz
# cd rsync-3.1.2
# ./configure
# make
# make install
那么,
再次使用 yum
安装 mariadb,
但 rsync-3.0.9
仍会安装。
我该如何解决这个问题?
您要么需要使用软件包安装所有软件,要么从源代码安装所有软件。尝试混合搭配会导致您在这里遇到的问题:mariadb
包依赖于 rsync
,但包管理器对您的文件一无所知已从源安装。
解决此问题的正确方法是构建您自己的 rsync
包,然后可以使用 yum
安装该包。您可以从您的发行版的源代码包开始,然后针对 3.1.2 对其进行修改。您可以使用更新的软件包(例如,来自 Fedora)并为您的系统重建它。
您可以找到 rsync-3.0.9
here, and there is some documentation that will hopefully help you get started here.
的源 RPM
您可以从 Fedora 24 .rpm 包安装 rsync 3.1.2:
wget http://dl.fedoraproject.org/pub/fedora/linux/releases/24/Everything/x86_64/os/Packages/r/rsync-3.1.2-2.fc24.x86_64.rpm
rpm -Uvh rsync-3.1.2-2.fc24.x86_64.rpm
(但那个问题并不真的属于Whosebug)
您可以从 gf-plus 存储库安装 rsync 3.1.2。只需按照以下步骤操作:
安装 gf-release
包。
sudo rpm -Uvh http://mirror.ghettoforge.org/distributions/gf/el/7/gf/x86_64/gf-release-7-10.gf.el7.noarch.rpm
从 gf-plus 仓库升级 rsync
包。
sudo yum install -y --enablerepo=gf-plus rsync
检查 rsync 版本。
hash -r; rsync --version | awk 'NR==1 {print }'
如果打印3.1.2
,则rsync已升级。
默认情况下,仅启用 gf
存储库,声称它 "won't overwrite core distro packages"。您可以禁用它:
sudo yum-config-manager --disable gf
(对于 command not found
错误,运行 sudo yum install -y yum-utils
再试一次。)
或者通过删除 gf-release
包来删除所有 gf*
存储库:
sudo yum remove -y gf-release
我使用的是 CentOS 7.2。
我想安装最新版本的 rsync - rsync-3.1.2
,
rsync-3.0.9
在系统上,在使用 yum
、
# rpm -qa |grep rsync
rsync-3.0.9-17.el7.x86_64
先删除 rsync-3.0.9
,
# yum remove rsync
rsync 和 mariadb 一起被删除,
那么,
从源代码安装 rsync-3.1.2
,
# wget https://download.samba.org/pub/rsync/src/rsync-3.1.2.tar.gz
# tar -zxvf rsync-3.1.2.tar.gz
# cd rsync-3.1.2
# ./configure
# make
# make install
那么,
再次使用 yum
安装 mariadb,
但 rsync-3.0.9
仍会安装。
我该如何解决这个问题?
您要么需要使用软件包安装所有软件,要么从源代码安装所有软件。尝试混合搭配会导致您在这里遇到的问题:mariadb
包依赖于 rsync
,但包管理器对您的文件一无所知已从源安装。
解决此问题的正确方法是构建您自己的 rsync
包,然后可以使用 yum
安装该包。您可以从您的发行版的源代码包开始,然后针对 3.1.2 对其进行修改。您可以使用更新的软件包(例如,来自 Fedora)并为您的系统重建它。
您可以找到 rsync-3.0.9
here, and there is some documentation that will hopefully help you get started here.
您可以从 Fedora 24 .rpm 包安装 rsync 3.1.2:
wget http://dl.fedoraproject.org/pub/fedora/linux/releases/24/Everything/x86_64/os/Packages/r/rsync-3.1.2-2.fc24.x86_64.rpm
rpm -Uvh rsync-3.1.2-2.fc24.x86_64.rpm
(但那个问题并不真的属于Whosebug)
您可以从 gf-plus 存储库安装 rsync 3.1.2。只需按照以下步骤操作:
安装
gf-release
包。sudo rpm -Uvh http://mirror.ghettoforge.org/distributions/gf/el/7/gf/x86_64/gf-release-7-10.gf.el7.noarch.rpm
从 gf-plus 仓库升级
rsync
包。sudo yum install -y --enablerepo=gf-plus rsync
检查 rsync 版本。
hash -r; rsync --version | awk 'NR==1 {print }'
如果打印
3.1.2
,则rsync已升级。
默认情况下,仅启用 gf
存储库,声称它 "won't overwrite core distro packages"。您可以禁用它:
sudo yum-config-manager --disable gf
(对于 command not found
错误,运行 sudo yum install -y yum-utils
再试一次。)
或者通过删除 gf-release
包来删除所有 gf*
存储库:
sudo yum remove -y gf-release