如何将另一台服务器上作为非root用户安装的python安装重新定位到不同目录下的另一台服务器?

如何将另一台服务器上作为非root用户安装的python安装重新定位到不同目录下的另一台服务器?,python,python-2.7,pip,Python,Python 2.7,Pip,我们有两台linux服务器,一台在私人网络上,没有互联网接入。另一种是在公共网络上,可以接入互联网。两台服务器运行相同的RHEL-5操作系统 在可以访问internet的as服务器上,我已将python作为非root用户安装在我的主目录下。然后我使用pip安装其他软件包,pip还解析依赖项并安装所需的依赖项 如何将此python重新定位到没有根访问权限的服务器?我还想将它重新定位为不同目录下的根目录 我为什么要这么做?由于专用服务器没有internet访问权限,pip无法用于安装100个模块,并

我们有两台linux服务器,一台在私人网络上,没有互联网接入。另一种是在公共网络上,可以接入互联网。两台服务器运行相同的RHEL-5操作系统

在可以访问internet的as服务器上,我已将python作为非root用户安装在我的主目录下。然后我使用pip安装其他软件包,pip还解析依赖项并安装所需的依赖项

如何将此python重新定位到没有根访问权限的服务器?我还想将它重新定位为不同目录下的根目录


我为什么要这么做?由于专用服务器没有internet访问权限,pip无法用于安装100个模块,并且存在依赖关系。由于服务器运行的是同一个操作系统版本,有没有简单的方法可以将安装在一台服务器上的python重新定位到另一台服务器上,尽管它位于不同的目录中?

如果可能的话,我会尝试通过前门,在另一台服务器上实际安装软件包。原则上,所有软件包的克隆应等同于以下内容:

  • 在第一台机器上(具有Internet访问和安装的软件包):

    (作为root用户或普通用户)

  • 请注意,当我尝试在我的机器上运行第一组命令时,我得到了一些错误,我将其归咎于
    pip freeze
    显示的并非所有软件包都实际安装了
    pip
    。您可能还需要筛选该列表。将
    pip freeze
    的输出保存到一个文件并进行编辑可能会更容易


    另外,python本身也可以通过system package manager下载、传输和本地安装。

    非常感谢。这就是我要找的。我试图通过投票来分配分数,但得到了一些错误信息。将再次尝试分配点数。@user1149518谢谢您的评论:),但如果答案对您有效,您可以。规范的解决方案是使用virtualenv。创建一个virtualenv,然后在其中安装您的模块。Virtualenv可以让整个事情重新定位。谢谢Marchin。我会调查virtyalenv。到目前为止,我没有使用它,但现在我听到了很多关于virtualenv的信息。
    mkdir /tmp/pypackages
    pip install -r <(pip freeze) -d /tmp/pypackages
    
    cd /tmp/pypackages
    pip install *