内网环境安装python3版本,以及一些python的包遇到的坑

前提:
有一个flask服务现在已经在a服务器部署, 该服务要进行分布式部署,所以又申请了b,c,d三台服务器
现在要对这三台服务的python环境进行安装。
Linux服务器是内网的环境,服务器是内网相通的,abcd都不能连外网,但是有一台机器S和abcd相通也能连外网。
现在要做的事情就是把a服务器的python版本,python模块,在bcd三台服务器上重新安装一次。
1.不要将其他环境的python3安装目录打包拷贝过来
一开始为了方便直接将a机器的python3安装目录压缩后直接传到bcd机器,解压后添加环境变量就可以用了,
但是后面安装uwsgi的时候报错
使用python3 setup.py install报错
gcc: 错误:/usr/local/python3817/lib/python3.8/config-3.8/libpython3.8.a:没有那个文件或目录
使用make报错
In file included from plugins/python/python_plugin.c:1:0:
plugins/python/uwsgi_python.h:2:20: 致命错误:Python.h:没有那个文件或目录
 #include <Python.h>

2.尽量使用Linux环境去下载python包
一开始觉得Linux服务器上下载的速度慢,便在本地的win10环境下去下载python包
但是安装的时候,发现很多下载的whl包是有win标志的,eg:bcrypt-3.2.0-cp36-abi3-win_amd64
也就意味着只能在windows下安装,Linux下无法安装这些包。
当然也可以指定平台 --platform,可以使用uname -r 查看bcd机器的平台,结果为x86_64。
但是指定后还是容易报错
类似ERROR: Could not find a version that satisfies the requirement bcrypt==3.2.0

3.使用指定版本的pip去下载python包
一开始直接使用的pip3命令去download
pip3 download -r requirement.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
后面发现默认的pip3是python3.6的版本,下载的包也是python3.6的版本,导致无法安装
所以需要指定python版本
/usr/local/python3.8/bin/pip3 download -r requirement.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

4.rz 命令上传文件失败生成的乱码文件无法删除
使用rz上传文件到c机器的时候,突然出现乱码,导致文件上传失败。后面在该目录下,发现了两个乱码的文件名
5z?????J^C
?puc?〉?n??Z???A?:?>5z?????J^C
使用rm -rf 删除后,文件依然存在
这时候需要使用ls -li 查找文件的inode
405604306 -rw-r--r--  1 test test        0 1月   3 18:55 5z?????J^C
405604305 -rw-r--r--  1 test test        0 1月   3 17:06 ?puc?〉?n??Z???A?:?>5z?????J^C
然后使用find 去删除
find ./ -inum 405604305 -exec rm -rf {} \;

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值