首页 技术 正文
技术 2022年11月21日
0 收藏 330 点赞 2,914 浏览 2251 个字

最近公司更换了linux系统的版本,从Ubuntu改为了oracle linux,相关的Python环境也要重新配置,记录一下基本配置的过程。

相关环境

  • 系统:oracle linux7.3

  • 系统自带的python:2.7.5

安装python3.6.3

  • python的多个版本是可以共存的,没必要删除原来的python2,系统预装的一些工具比如yum是依赖python2的;

  • 先安装相关的依赖环境,编译环境等

# 使用yum命令安装,对所有的提问都回答yes
sudo yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel gcc
  • 官网下载python3.6.3
# 进入桌面
$ cd ~/Desktop
$ wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
  • 将下载包解压编译
tar -zxvf Python-3.6.3.tgz
cd Python-3.6.3
  • 编译之前可以设置python安装的位置
# 修改配置文件
sudo vi ./configure
# 找到ac_default_prefix=/usr/local/python3
# 可以修改安装路径
# 创建安装文件夹
sudo mkdir /usr/local/python3
  • 编译安装
# 生成配置文件
./configure
# 编译
make
# 安装
make install
  • 如果出现了successful,说明安装成功;

配置环境变量

当前输入python,发现进入的是python2的环境;输入python3,发现不识别这个命令,说明python3.6.3的安装路径没有加入到系统路径中去;

  • 添加PATH
# 进入python安装文件
cd /usr/local/python3
# 启动命令在bin文件夹中
cd bin
# 输入python3可以启动python3.6.3
  • 将路径添加到系统用户路径中
sudo vi ~/.bash_profile  # 进入只针对该用户的系统路径文件
# 找到PATH=$PATH:$HOME/bin
# 如windows中相似,所有的环境变量路径使用冒号分割
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
# 保存退出
  • 将路径添加到全局用户路径中
# 如果需要对所有的用户都需要支持Python命令,添加全局变量
sudo vi /etc/profiles
# 在脚本的末尾增加
export PATH="/usr/local/python3/bin"
  • 临时执行环境变量,只对当前shell终端有效
shell> export PY_HOME="/usr/local/python3/"
shell> export PATH="$PATH:$PY_HOME/bin"
  • 查看环境变量
$ env   # 查看所有的环境变量
$ echo $PATH # 查看当前登录的用户的环境变量

扩展

  • 修改全局环境变量和用户环境变量

linux系统的sudo命令和普通的如ls命令,其搜索的路径是不一样的,用户命令搜索路径在~/.bash_profile中,如上面添加python的启动路径;sudo命令搜索路径在/etc/sudoers中

# 编辑/etc/sudoers
sudo vi /etc/sudoers
# 找到secure_path
:/secure_path
# 在该路径后面添加更多的搜索路径
  • 将python3设置成默认的python版本
# 删除原来的python连接
cd /usr/bin/
rm python
# 创建python3的软连接
ln -s /usr/local/python3/bin /usr/bin/python
# 输入python发现默认打开python3.6则成功
# 修改yum依赖
vi /usr/bin/yum
# 将第一行/usr/bin/python改为/usr/bin/python2

细节

  • 有时忘记使用root权限编辑配置文件导致无法退出和保存失败;比如修改/etc/sudoers文件;
# 按ctrl+z强制退出
# ls -lah | grep .*
# 查找所有的隐藏文件发现生成了.sudoers.swap文件
# 删除该文件并重新编辑
sudo rm .sudoers.swap
sudo vi -r sudoers
  • 重启主机或执行
source ~/.bash_profile  # 命名生效
  • 测试
# 在任意目录下执行
python3 # 打开python3.6.3环境
# 测试pip
pip3 --version
pip --version # 无效,python2环境没有安装pip

修改linux的pip源

  • 方法一:临时修改
# 在pip后指定源
pip install ipython -i http://mirrors.aliyun.com/pypi/simple/
  • 方法二:永久修改
# 找到~/.pip/pip.conf,如果不存在就创建
# 加入
[global]
timeout = 10 # 设置超时,单位s
index-url = http://mirrors.aliyun.com/pypi/simple/ # 指定优先下载源
extra-index-url= http://pypi.douban.com/simple/ # 第二下载源
[install]
trusted-host= # 可能需要使用https方式通信
mirrors.aliyun.com
pypi.douban.com
上一篇: vim批量注释
下一篇: libGDX-wiki发布
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,027
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,518
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,365
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,146
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,780
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,857