我想在 Centos 6 上“yum install php-mbstring”。问题是由于防火墙限制,centos 机器无法连接外部。因此,epel 等软件包因无法访问而失败:http://download.fedoraproject.org/pub/epel...
我可以将任何文件从我的计算机传输到 centos 机器。那么,是否可以下载 php-mbstring 源并将其放到 centos 机器上,以便可以离线安装?
注意:下载的软件包(例如 epel-release-6-8.noarch.rpm)放在 centos 机器上不起作用,因为当我运行 yum install 时它们仍然需要外部连接。
答案1
yumdownloader
在系统上使用做可以访问互联网。
这将拉取包及其依赖项(使用--resolve
开关)到本地目录。
将文件复制到相关系统并yum install
使用该文件的路径。
答案2
php-mbstring-….rpm
您需要从 EPEL 存储库下载您的软件包(将被称为)(对于 EL6,您可以浏览https://dl.fedoraproject.org/pub/epel/6/找到软件包)。将该包传输到需要安装它的服务器,然后运行:
yum install php-mbstring-….rpm
换句话说,如果您给出yum
一个 rpm 文件名,而不是一个简单的包名,它将安装该 rpm 而不会在其存储库中查找该包。
注意 - 如果软件包有需要其他软件包满足的要求,则yum
仍将照常在其存储库中查找那些未满足的要求。 在这种情况下,您可以以相同的方式下载所有依赖项,然后在命令行中提供所有依赖项:
yum install /path/to/package1.rpm /path/to/package2.rpm /path/to/package3.rpm ...
(如果将它们全部放在同一个目录中,显然可以使用通配符来避免输入所有文件名)。