为什么在CentOS 7.2上无法安装最新版本的rsync?

8

我正在使用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仍然会被安装。

我该如何解决这个问题?

3个回答

7

你可以从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

(但这个问题不真正属于stackoverflow)


2
您也可以直接将该URL传递给yum install - phs

1

您可以从gf-plus仓库安装rsync 3.1.2。只需按照以下步骤操作:

  1. Install the gf-release package.

    sudo rpm -Uvh http://mirror.ghettoforge.org/distributions/gf/el/7/gf/x86_64/gf-release-7-10.gf.el7.noarch.rpm
    
  2. Upgrade rsync package from the gf-plus repo.

    sudo yum install -y --enablerepo=gf-plus rsync
    
  3. Check rsync version.

    hash -r; rsync --version | awk 'NR==1 {print $3}'
    

    If it prints 3.1.2, rsync is upgraded.

默认情况下,只启用了gf存储库,它声称“不会覆盖核心发行版软件包”。您可以禁用它:
sudo yum-config-manager --disable gf

(对于“command not found”错误,请运行“sudo yum install -y yum-utils”,然后重试。)或者只需通过删除“gf-release”包来删除所有的“gf *”仓库:
sudo yum remove -y gf-release

0

你需要使用软件包安装所有的软件,或者从源代码安装所有的软件。试图混搭会导致你在这里遇到的问题:mariadb软件包依赖于rsync,但是包管理器对你从源代码安装的文件一无所知。

解决这个问题的正确方法是构建自己的rsync软件包,然后用yum安装它。你可以从发行版的源代码包开始,然后为3.1.2进行修改。你也可以利用更新的包(例如来自Fedora),并为你的系统重新构建它。

你可以在这里找到rsync-3.0.9的源代码here,并且有一些文档希望能帮助你入门here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接