Centos7 安装 python 2.7.15和pip 及配置环境变量
-
centos7默认安装的是python2.7.5,但是很难找到他的真实路径以配置环境变量。我选择换成其他的2.7.x版本的,并且可以自由的配置环境变量了岂不美哉?
-
本文以python2.7.15版本为例进行操作:
-
1、下载:https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz
-
2、解压:
tar -zxvf Python-2.7.15.tgz
进入解压缩后的文件夹:
cd Python-2.7.15
-
3、编译:
编译前在/usr/local新建一个文件夹,作为python安装路径,以免覆盖老的版本:
sudo mkdir /usr/local/python2.7.15
在解压后的目录下编译安装:
(这步之前安装gcc-c++,如果已经有了则不必再安装)
sudo yum -y install gcc-c++
编译安装:
./configure --prefix=/usr/local/python2.7.15
make命令:
sudo make install
-
4、覆盖老版本
此时没有覆盖老版本,将原来/usr/bin/python的链接改为别的名字:
sudo mv /usr/bin/python /usr/bin/python_old
-
5、建立新版本python的软链接:
sudo ln -s /usr/local/python2.7.15/bin/python2.7 /usr/bin/python
输入python -V,显示版本Python 2.7.15
注意:更改默认的python版本后,yum无法运行了。
进到usr/bin目录下,sudo vi yum,修改文件,将第一行#!/usr/bin/python,改为#!/usr/bin/python_old
cd /usr/bin sudo vi yum
-
6、配置PYTHON_HOME
在/etc/profile里添加export PYTHON_HOME=/usr/local/python2.7.15/bin/python
sudo vim /etc/profile export PYTHON_HOME=/usr/local/python2.7.15 #在原来的PATH后面加上python的配置 PATH=$PATH:$PYTHON_HOME/bin (在最后一行写入) :wq(保存退出) sudo source /etc/profile(使环境变量生效)
-
7、安装 PIP(如果系统已经安装了就不需要再装了)
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" python2.7 get-pip.py
分割线
因为近期在用开源调度工具DolphinScheduler-1.2.0时python命令执行不了,经常报:sudo:/opt/soft/python:command not found的错误,因此修改了默认的python并且修改了调度的环境配置来让python生效
我centos的调度安装地址为/opt/soft/dolphinscheduler,因此需要修改如下
cd /opt/soft/dolphinscheduler/conf/env
vim .dolphinscheduler_env.sh
#在里面添加PYTHON_HOME
#此处极其重要!!!源码里通过PYTHON_HOME来获取python的位置,因此需要在此处写全
export PYTHON_HOME=/usr/local/python2.7.15/bin/python
#PATH里面加上PYTHON_HOME
export PATH=$JAVA_HOME/bin:$PYTHON_HOME:$PATH
然后重启所有服务即可生效。
PS:org.apache.dolphinscheduler.server.worker.task.AbstractTask类的第73行可以加入打印语句查看任务里面的配置详情
protected AbstractTask(TaskProps taskProps, Logger logger) {
//查看一下TaskProps的详情,可以重写下TaskProps类的toString()方法
logger.info("taskProps:{}",taskProps.toString());
this.taskProps = taskProps;
this.logger = logger;
}
然后编译一下该文件,替换掉官方dolphinscheduler-server包下面同名class文件,即可在服务器上输出详情日志了。