Linux 下部署Django项目你可能会遇到的问题!报错 ImportError: No module named pip --- 需要 安装 pip报错 setuptools Com

之前部署Django项目到服务器上的时候出现了各种问题,现在总结一下方便以后查阅,也希望能够帮到有同样问题的你。(如果有帮助记得点赞哦!?)

Linux 升级 Python 至 3.x


一般情况下自己带的python 都是2.x的,为了使用新版本的3.x,需要对旧版本进行升级

 # python --version
 Python 2.7.5

系统自带的版本是2.7.5

1.下载新版本

版本可以自己随意选,我这里只是一个演示

 wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

2.压缩

  tar -zxvf Python-3.5.2.tgz

3.安装配置

 cd Python-3.5.2/
 ./configure 

如果./configure 出错说明没有安装编译器,这时,需要升级依赖包

  yum install make gcc gcc-c++ 

然后再

./configure 

4.编译 安装

 make 
 make install 

5.验证

# python3 -V
Python 3.5.2

6.设置默认版本为3.x

  ls -al /usr/bin | grep python

-rwxr-xr-x.  1 root root      11216 12月  1 2018 abrt-action-analyze-python
lrwxrwxrwx.  1 root root          6 4月  30 12:11 python -> python2
lrwxrwxrwx.  1 root root          5 4月  30 12:11 python2 -> python2.7
-rwxr-xr-x.  1 root root       7136 4月 20 2018 python2.7

将原来 python 的软链接重命名:

   mv /usr/bin/python /usr/bin/python.bak

将 python 链接至 python3:

  ln -s /usr/local/bin/python3 /usr/bin/python

查看结果

# python -V
Python 3.5.2

说明安装ok

7.配置 yum

 vi /usr/bin/yum

将 #!/usr/bin/python 改为 #!/usr/bin/python2.7,保存退出

  vi /usr/libexec/urlgrabber-ext-down

将 #!/usr/bin/python 改为 #!/usr/bin/python2.7,保存退出

报错 ImportError: No module named pip --- 需要 安装 pip


等你安装好python3.x ,安装Django的时候可能有会 报错 ImportError: No module named pip 安装pip的方法有很多,这里我只介绍我使用的

  wget https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz --no-check-certificate  
  tar xvf pip-1.3.1.tar.gz  
  python pip-1.3.1/setup.py install  

安装的时候还可能会出现setuptools Compression requires the (missing) zlib module 的错误 这是因为缺少setuptools,下面的就是解决办法

报错 setuptools Compression requires the (missing) zlib module ---安装setuptools


  yum install zlib
  yum install zlib-devel

从新编译python (make)

下载 setuptools

  cd setuptools-39.2.0
  python setup.py install

安装ok 之后再去安装pip 就可以了

报错 ModuleNotFoundError: No module named '_sqlite3' ----安装sqlite3


最简单的方法(一般情况下都可以的如果不可以自行谷歌其他方法吧)

 yum install sqlite*
#重新编译python
 ./configure --prefix=/usr/local/sqlite3
 make && make install

好了,先总结到这里,后续再有继续添加。如果问题欢迎留言!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏余生开发

electron-vue———环境升级

https://gitee.com/yu_sheng/electron-vue   个人修改升级

2242
来自专栏云计算教程系列

如何在CVM上设置SSH仅作文件传输

SFTP代表SSH File Transfer Protocol。顾名思义,这是一种使用加密SSH连接将文件传输到服务器的安全方式。尽管名称如此,但它与FTP(...

1845
来自专栏达摩兵的技术空间

gulp常用插件 一

如果你已经在项目中引入了gulp,那么不妨尝试用一些gulp集成好的插件来做一些任务。下面假定前端项目中根目录有src以及dist两个,分别用于开发和生产。 *...

912
来自专栏张尧博客

Ubuntu软件常用升级命令

4156
来自专栏性能与架构

Linux lsof 命令的实用案例

lsof 简介 lsof(list open files)是一个列出当前系统中所有打开文件的工具 Linux中一切皆文件,所以在系统中,被打开的文件可以是普...

5498
来自专栏美团技术团队

【美团技术团队博客】Linux资源管理之cgroups简介

引子 cgroups 是Linux内核提供的一种可以限制单个进程或者多个进程所使用资源的机制,可以对 cpu,内存等资源实现精细化的控制,目前越来越火的轻量级...

4106
来自专栏州的先生

Python爬虫实战入门二:从一个简单的HTTP请求开始

1102
来自专栏mathor

Linux——目录、文件处理命令(上)

832
来自专栏小樱的经验随笔

把模块有关联的放在一个文件夹中 在python2中调用文件夹名会直接失败 在python3中调用会成功,但是调用不能成功的解决方案

把模块有关联的放在一个文件夹中 在python2中调用文件夹名会直接失败 在python3中调用会成功,但是调用不能成功 解决办法是: 在该文件夹下加入空文件_...

2835
来自专栏前端学习心得

关于Http协议,你必须要知道的

3704

扫码关注云+社区