如何在Redhat RHEL7离线机器上安装python3及其所有工具

如何在Redhat RHEL7离线机器上安装python3及其所有工具

我有一个 Django 项目,将安装在无法访问 Internet 的 RHEL 7 服务器中。我需要在本地包含所有内容,从 python3 源代码到 pip 和设置工具。对于系统运行 python 可能需要的每个包,我添加了大量的包,但它仍然总是给我错误。我正在使用这个install.sh脚本来实现这个目的

#!/bin/bash
cd ./needed_pkgs/
rpm -i build-essentials-2019-3pclos2019.noarch.rpm zlib-1.2.7-18.el7.x86_64.rpm gcc-c++-4.8.5-39.el7.x86_64.rpm gcc-4.8.5-39.el7.x86_64.rpm cpp-4.8.5-39.el7.x86_64.rpm glibc-devel-2.17-292.el7.x86_64.rpm glibc-headers-2.17-292.el7.x86_64.rpm kernel-headers-3.10.0-1062.el7.x86_64.rpm
command -v python3 >/dev/null 2>&1 || {
  echo >&2 "I require python3 but it's not installed, installing it .";
  cd Python-3.7.5
  make clean
./configure
make
sudo make install
}
cd ../..
#virtualenv --never-download venv
#source venv/bin/activate
for entry in "./pkgs"/*; do
  pip install "$entry"
done

经过几天的尝试,当我快要让一切正常工作时,我在 pip install 的最后一步遇到了这个奇怪的错误:

在此输入图像描述

在此输入图像描述

最终导致安装python失败:

在此输入图像描述

答案1

您必须找到 yum 可用的特定模块二进制文件并将其复制到离线服务器,因此您基本上是在计算机上下载二进制模块,然后将目录从 VPN 复制到指定位置。

一种解决方案是使用yumdownloader --resolve <package name>

安装它们的顺序由 yum 决定:

yum install ./*rpm 现在,您必须在包含所有依赖项的下载包的文件夹中运行上述命令,它将执行所需的操作。

相关内容