Yum 命令降级软件包

Yum 命令降级软件包

我需要在服务器上降级 php,并找到了以下命令。语法似乎有问题。

yum downgrade $(rpm -qa --qf "%{NAME} " | \
            grep -v ioncube | grep ^php | awk '{print $1"-5.2.17"}')

我收到以下错误消息:

Error: Need to pass a list of pkgs to downgrade
usage: yum [options] COMMAND

答案1

我认为您使命令行变得太复杂了:

sudo yum downgrade php-*

但我不认为这能让你得到你想要的东西。

答案2

我的情况可能有点特殊,但以下方法对我有用。我相信有更好的方法,但是……

我添加了原子 repo。wget -qq -O -http://www.atomicorp.com/installers/atomic| /bin/bash

将所有已安装的程序发送到一个文件。rpm -qa --qf "%{NAME}">已安装

将结果过滤到一个新文件中,其中只包含我需要的应用程序。grep -v 命令没有像我想象的那样工作。我需要排除 phpioncube,我以为 -v 可以做到这一点,但它仍然显示了该文件。我手动删除了它。grep -v ioncube installed |grep php installed>phpapps

我知道我想要降级到的具体版本,所以我将它附加到每个软件包名称并运行以下命令。 yum 降级安装 php-pdo-5.2.17-1.el6.art.x86_64 php-pecl-memcached-5.2.17-1.el6.art.x86_64 php-xml-5.2.17-1.el6.art.x86_64 php-pecl-memcache-5.2.17-1.el6.art.x86_64 php-5.2.17-1.el6.art.x86_64 php-pear-5.2.17-1.el6.art.x86_64 php-mcrypt-5.2.17-1.el6.art.x86_64 php-xmlrpc-5.2.17-1.el6.art.x86_64 php-snmp-5.2.17-1.el6.art.x86_64 php-odbc-5.2.17-1.el6.art.x86_64 php-ldap-5.2.17-1.el6.art.x86_64 php-common-5.2.17-1.el6.art.x86_64 php-mysql-5.2.17-1.el6.art.x86_64 php-gd-5.2.17-1.el6.art.x86_64 php-mbstring-5.2.17-1.el6.art.x86_64 php-cli-5.2.17-1.el6.art.x86_64 php-devel-5.2.17-1.el6.art.x86_64 php-pecl-zip-5.2.17-1.el6.art.x86_64 php-imap-5.2.17-1.el6.art.x86_64 php-ncurses-5.2.17-1.el6.art.x86_64 php-mhash-5.2.17-1.el6.art.x86_64

这让我得到了我所需要的东西。

相关内容