赞
踩
通过海豚调度执行datax任务的时候,报错python2.7命令不存在。
原因是代码指定的版本是2.7,而centos8自带的是python3 版本。
解决方案有两种:
一:替换成python3
需要修改替换datax/bin下面的python文件,同事说比较简单,修改下datax.py中print语法就行了,加下括号,另外的py文件
用不到。
二:安装python2.7
尝试安装了下,本来也很简单,但是一直报错,所以本文也是仿照生产环境安装centos8虚拟机,复现该问题,并尝试解决。
报错
操作系统及python版本
输入python报命令不存在,/usr/bin下面没有python软链接,只有python3和python3.6链接
1.2.1代码
8.0.1905 64位
很明显下载最大的iso文件
新建机器
默认在C盘,建议放其它盘,我这边C盘比较大,就放C盘,到时候安装好,导出一份做备份也一样的。
后续可能会在上面部署dolphinscheduler2.0,所以内存就尽可能搞大点了,可以就设1G,后面也是可以再修改的。
一直下一步,大小建议设置大于10G
iso文件比较大,有6G
设置-镜像文件
网络选择桥接模式
启动创建用户
点击启动,过个几分钟来到设置页面,按照提示一步步配置即可
请问在哪点击确认
关闭重新进去试试
关闭后,结果又重新来了一遍,不过这次显示正常
重启后又继续安装,没完没了…
后面直接强制退出了,移除光驱,再次启动,总算结束了死循环
然后弹出许可认证,点击,安装提示,选择光驱,完成配置
登录进来
看着图形界面好陌生…
Ctrl+Alt+F3切换到命令行页面(Ctrl+Alt+F1切回图形界面)
virbr0网卡,是因为安装系统的时候附带了libvirt服务,自动生成的,它有一个固定的默认IP 地址192.168.122.1,保险起见,最后删掉libvirt服务,防止IP冲突。
删除命令
yum remove libvirt-*
移除libvirt后,配置静态IP
BOOTPROTO=static
ONBOOT=yes
PREFIX=24
IPADDR=192.168.1.66
GATEWAY=192.168.1.1
NETMASK=255.255.255.0
DNS1=114.114.114.114
重启
验证
方式一
curl https://www.baidu.com/
方式二
ping www.baidu.com
网络是通的,可惜用不了,因为生产环境不通互联网的…现在强迫症愈发严重了!!!!!
x86_64
[root@localhost ~]# ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.66 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::cf9b:a0e3:955b:4cff prefixlen 64 scopeid 0x20<link>
ether 08:00:27:ae:4d:ad txqueuelen 1000 (Ethernet)
RX packets 483 bytes 60582 (59.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 278 bytes 28454 (27.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@localhost ~]#
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
[root@localhost ~]# uname -m
x86_64
[root@localhost ~]# python
bash: python: 未找到命令...
[root@localhost ~]# python3
Python 3.6.8 (default, May 21 2019, 23:51:36)
[GCC 8.2.1 20180905 (Red Hat 8.2.1-3)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> quit()
[root@localhost ~]#
python2.7.6
太慢了…
上传到服务器
解压-配置-编译
[root@localhost ~]# #创建编译目录
[root@localhost ~]# mkdir -p /usr/local/python2.7
[root@localhost ~]# #解压安装包
[root@localhost ~]# tar xf /tmp/Python-2.7.6.tgz
[root@localhost ~]# #进入解压目录,配置,指定编译目录
[root@localhost ~]# cd Python-2.7.6/
[root@localhost Python-2.7.6]# ./configure --prefix=/usr/local/python2.7
结果报错了,生产环境可没报错,生产环境安装很顺利,就是执行命令时候报错
[root@localhost Python-2.7.6]# ./configure --prefix=/usr/local/python2.7
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for --enable-universalsdk... no
checking for --with-universal-archs... 32-bit
checking MACHDEP... linux2
checking EXTRAPLATDIR...
checking for --without-gcc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/root/Python-2.7.6':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
[root@localhost Python-2.7.6]# less config.log
[root@localhost Python-2.7.6]#
解决办法,安装gcc
yum -y install gcc
解决办法
备份,然后将地址放开并且修改为阿里云地址,三个文件都要改
[root@localhost Python-2.7.6]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# cp CentOS-Base.repo CentOS-Base.repo.bak
[root@localhost yum.repos.d]# cp CentOS-AppStream.repo CentOS-AppStream.repo.bak
[root@localhost yum.repos.d]# cp CentOS-Extras.repo CentOS-Extras.repo.bak
[root@localhost yum.repos.d]# vi CentOS-Base.repo
[root@localhost yum.repos.d]# vi CentOS-AppStream.repo
[root@localhost yum.repos.d]# vi CentOS-Extras.repo
例:
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/
baseurl=https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
Base
APP
Extras
原因都是地址不对,首先确认地址正确,然后替换重试
https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/
替换地址
[root@localhost yum.repos.d]# grep aliyun CentOS-*
CentOS-AppStream.repo:baseurl=https://mirrors.aliyun.com/centos/8-stream/AppStream/x86_64/os/
CentOS-Base.repo:baseurl=https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/
CentOS-Extras.repo:baseurl=https://mirrors.aliyun.com/centos/8-stream/extras/x86_64/os/
[root@localhost yum.repos.d]# #清除缓存
[root@localhost yum.repos.d]# yum clean all
0 文件已删除
[root@localhost yum.repos.d]# #建立缓存
[root@localhost yum.repos.d]# yum makecache
环境就像树叶,根本不存在相同的环境,连网搞 都头大…
安装成功
yum install -y openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel libffi-devel
没找到epel资源,指定IP即可
yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm
再次安装gcc
yum install -y gcc
[root@localhost yum.repos.d]# cd
[root@localhost ~]# cd Python-2.7.6/
[root@localhost Python-2.7.6]#
[root@localhost Python-2.7.6]#
[root@localhost Python-2.7.6]#
[root@localhost Python-2.7.6]# ./configure --prefix=/usr/local/python2.7
[root@localhost Python-2.7.6]# make && make install
直接 yum install -y make,安装成功,总算顺利了一下!!!!
./python -E -S -m sysconfig --generate-posix-vars
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
make: *** [Makefile:468: pybuilddir.txt] 段错误 (core dumped)
查看日志,怀疑还是依赖安装不全
安装依赖g++ (c++),还是make失败
yum install -y gcc-c++
凌晨两点了,太伤了,下载2.7最新版本试一下,行不行都这最后一下了
解压、配置
配置
苍天有眼,编译结束,只不过貌似…
看样子要到400,好想终止,但是我不敢
复制查看日志结果,还好是测试失败
终于可以安装了
配置选择了./configure --enable-optimizations
所以没有安装到指定目录,应该在后面把--prefix=/usr/local/python2.7
拼接上去的,--enable-optimizations
参数的作用就是不用自己再去建立软连接了
mkdir -p /usr/local/python2.7
/configure --enable-optimizations --prefix=/usr/local/python2.7
如果指定了安装目录,则需要配置环境变量,/etc/profile是针对所有用户的,单独用户配置在.bash_profile中
export PYTHON_HOME=/usr/local/python2.7
export PATH=$PYTHON_HOME/bin:$PATH
python3也未受影响
太难了,一个是找镜像,花了很长时间,然后就是python make花了太长时间,最终解决办法是下载最新的2.7版本,呵呵了!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。