在 VPS (CentOS) 上,运行以下命令后,
[root@yukiko local]# pwd
/usr/local
[root@yukiko local]# ls
Zend apache bin etc games include lib lib64 libexec man mysql php sbin share src var
[root@yukiko local]# find / -iname httpd.conf
/usr/local/apache/conf/httpd.conf
/usr/local/apache/conf/original/httpd.conf
[root@yukiko local]# find / -iname php
/usr/local/php
/usr/local/php/lib/php
/usr/local/php/include/php
/usr/local/php/bin/php
[root@yukiko local]# /usr/local/php/bin/php -v
PHP 5.2.9 (cli) (built: Mar 18 2009 01:02:07)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
[root@yukiko local]# yum list installed | grep php
[root@yukiko local]# yum list installed | grep apache
[root@yukiko local]# yum list installed | grep mysql
我怀疑没有使用 yum 安装 apache、mysql 和 php。我不知道它们是如何安装的,但从租用 VPS 的第一天起它们就已经在那里了。现在我想知道如何将它们升级到更新版本以防止安全漏洞。
目前,在phpmyadmin中,我已经找到了三个数据库(information_schema,mysql,webmail_horde),/home/httpd/html/htdocs/文件夹也包含了这个VPS admin web界面的一些网页文件(允许启动,停止,重启...等VPS)。
由于它们不是使用 yum 安装的,因此我无法使用 yum update 来升级它们。
我还听说apache、mysql和php之间有一些耦合。我们如何安全地升级它们?
非常感谢大家。
尝试这个:
如果您没有看到该输出中列出的软件包,那么您通常可以确定这些服务不是使用 RPM 安装的(yum 使用 RPM 软件包)。
好消息是您可能可以使用 RPM 安装这些实用程序的 RPM 版本,并且它们不会与您当前安装的版本冲突,因为它们将安装在与您列出的目录不同的目录中(至少在 CentOS 上) -- 只需确保备份您的重要配置文件和初始化脚本。然后,您可以并排编辑配置文件,以确保新版本的设置与旧版本一样。
坏消息是 Apache 和 PHP 的 RPM 版本可能不支持手动编译软件的全部功能集。某些功能,例如 XSLT,不是大多数 apache RPM 编译的一部分。此外,库存 RPM 版本可能比您当前使用的版本旧。例如,CentOS 仅附带 Apache 2.2.3 和 PHP 5.1.6。
如果它们不是通过 yum 安装的,您唯一的选择是停止旧服务器,通过 yum 安装新服务器,复制内容和配置文件。