linux中pip操作时的超时解决方法

 更新时间:2018年09月30日 14:07:47   投稿:laozhang  
在本文中我们给大家讲述了linux中pip操作时的超时解决方法以及相关注意点,有兴趣的朋友们参考下。

如何解决 Linux 实例 pip 操作时的超时问题

pip 是当前最流行的 Python 安装包管理工具之一,很多阿里云用户会通过 pip 更新系统源。阿里云的 pip 源地址有以下三处:

(默认)公网:mirrors.aliyun.com

专有网络 VPC 内网:mirrors.cloud.aliyuncs.com

经典网络内网:mirrors.aliyuncs.com

现象描述

Linux 实例的 pip 请求偶有超时或者失败现象。目前,受影响的公共镜像有:

CentOS

Debian

Ubuntu

SUSE

OpenSUSE

Aliyun Linux

原因分析

pip 请求的默认访问地址为 mirrors.aliyun.com,要求访问该地址的实例能访问公网。当您的实例没有分配公网 IP 时,会出现 pip 请求超时故障。

解决方法

您可以使用以下方法中的任意一种解决问题。

方法一

为您的实例分配公网 IP,即为实例绑定一个 弹性公网 IP(EIP)。预付费实例还可以通过 升降配 重新分配公网 IP。

方法二

一旦出现 pip 响应延迟,您可以在 ECS 实例中运行脚本 fix_pypi.sh,然后再重试 pip 操作。

远程连接实例。

运行 wget http://image-offline.oss-cn-hangzhou.aliyuncs.com/fix/fix_pypi.sh 获取文件。

运行脚本:

VPC 实例:运行 bash fix_pypi.sh "mirrors.cloud.aliyuncs.com"。

经典网络实例:运行 bash fix_pypi.sh "mirrors.aliyuncs.com"。

重试 pip 操作。

以下为 fix_pypi.sh 的脚本内容:

#!/bin/bash
function config_pip() {
  pypi_source=$1
  if [[ ! -f ~/.pydistutils.cfg ]]; then
cat > ~/.pydistutils.cfg << EOF
[easy_install]
index-url=http://$pypi_source/pypi/simple/
EOF
  else
    sed -i "s#index-url.*#index-url=http://$pypi_source/pypi/simple/#" ~/.pydistutils.cfg
  fi
  if [[ ! -f ~/.pip/pip.conf ]]; then
  mkdir -p ~/.pip
cat > ~/.pip/pip.conf << EOF
[global]
index-url=http://$pypi_source/pypi/simple/
[install]
trusted-host=$pypi_source
EOF
  else
    sed -i "s#index-url.*#index-url=http://$pypi_source/pypi/simple/#" ~/.pip/pip.conf
    sed -i "s#trusted-host.*#trusted-host=$pypi_source#" ~/.pip/pip.conf
  fi
}
config_pip $1

以上就是本篇文章的全部内容知识点,感谢大家对脚本之家的支持。

相关文章

  • apache服务出现Forbidden 403问题的解决方法总结

    apache服务出现Forbidden 403问题的解决方法总结

    这篇文章主要介绍了apache服务出现Forbidden 403问题的解决方法总结,需要的朋友可以参考下
    2014-08-08
  • Linux内核页表及页表缓存原理

    Linux内核页表及页表缓存原理

    这篇文章主要介绍了Linux内核页表及Linux页表缓存原理,文章中又详细的图文介绍,感兴趣的小伙伴可以借鉴参考
    2023-04-04
  • Linux修改hostname与免密码登录的方法

    Linux修改hostname与免密码登录的方法

    这篇文章主要介绍了Linux修改hostname与免密码登录的方法,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2018-07-07
  • Windows上安装Apache2、PHP5、MySQL5及与Resin配合实现多系统之整合

    Windows上安装Apache2、PHP5、MySQL5及与Resin配合实现多系统之整合

    笔者之前一直使用Resin作为WEB应用服务器,近来有项目需要在已有的JSP系统中整合phpwind系统,因此首次尝试在电脑中配置PHP的运行环境。
    2010-03-03
  • linux根据进程号PID查找启动程序的全路径

    linux根据进程号PID查找启动程序的全路径

    工作环境中遇到网络不正常,检测是某服务器异常往外发送数据包,使用netstat命令查看,发现有程序。这篇文章主要介绍了linux根据进程号PID查找启动程序的全路径,需要的朋友可以参考下
    2019-08-08
  • 详解Linux中如何安全地抹去磁盘数据

    详解Linux中如何安全地抹去磁盘数据

    离过职的小伙伴都知道,离职的时候需要上交公司电脑,但是电脑里面有许多我们的个人信息,所以我们就需要先把这些信息都删除,确保无法恢复之后才上交,下面我们来看一下在 Linux 中如何安全地抹去磁盘数据吧
    2023-10-10
  • Linux下如何安装与设置Vim编辑器

    Linux下如何安装与设置Vim编辑器

    CentOS7.4系统默认安装了Vi编辑器,但未完全安装Vim,本文介绍如何通过yum命令完整安装Vim所需的四个包,并提供两种编辑环境设置方式
    2024-11-11
  • linux下如何切割大文件

    linux下如何切割大文件

    这篇文章主要介绍了linux下如何切割大文件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • 密码学之apache部署https介绍

    密码学之apache部署https介绍

    大家好,本篇文章主要讲的是密码学之apache部署https介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • 简单谈谈apache与nginx

    简单谈谈apache与nginx

    简单的说apache是计算密集型,nginx是io密集型,各有优势,不存在谁取代谁
    2014-12-12

最新评论