一、背景:
pycharm远程开发,服务器环境(Miniconda conda3;Python 3.6(ubuntu16.04))
二、问题:
服务器运行demo.py文件时,出现代码语法报错,打算通过pycharm远程调试,pycharm远程配置后,遇到usr/bin/env: "python': Too many levels of symbolic links问题,如图所示:

当然pycharm远程配置也失败了,也是报一样的错误Too many levels of symbolic links
注:pycharm远程配置之前,服务器中运行demo.py没有这样的问题,猜测是远程配置过程中引发的
三、解决:
解决远程主机,即服务器上的python问题
# 进入python解释器的上一目录 /root/miniconda3/envs/torch_1.3/bin/
ls -l | grep python
(torch_1.3) root@autodl-container-7f50119152-96cdd58b:~/miniconda3/envs/torch_1.3/bin# ls -l | grep python
lrwxrwxrwx 1 root root 45 Mar 7 12:20 python -> /root/miniconda3/envs/torch_1.3/bin/python3.6
lrwxrwxrwx 1 root root 6 Mar 7 12:20 python3 -> python
lrwxrwxrwx 1 root root 17 Feb 7 20:54 python3-config -> python3.6m-config
lrwxrwxrwx 1 root root 6 Mar 7 12:20 python3.6 -> python
lrwxrwxrwx 1 root root 17 Feb 7 20:54 python3.6-config -> python3.6m-config
-rwxrwxr-x 1 root root 3537 Feb 7 20:54 python3.6m-config
可以看到python指向的是python3.6,但是python3.6指向的是python,出现一个循环,且这个路径下没有可以执行的python解释器
我的解决方式:
# 重新创建一个虚拟环境,名为:test-env,Python版本为3.6(需要什么版本,就创建什么版本的)
conda create -n test-env python=3.6
# 进入python解释器的上一目录 /root/miniconda3/envs/test-env/bin/
cd /root/miniconda3/envs/test-env/bin/
# ls 可以看到bin下面有我需要的python3.6 可执行文件,
# 当然可以通过Xftp,直接看到bin下面有我需要的python3.6 可执行文件
# 下一步就是把这个python3.6 可执行文件 复制一份到
# /root/miniconda3/envs/torch_1.3/bin/下
现在有了可以执行的python解释器,下一步是,调整python指向问题,需要python指向python3.6
把不需要的link删除,建立需要的link
unlink python3.6
删除python3.6这个链接就可以了,每一次情况不一样,看情况进行分析,反正最终的目的是,有一个python软链接指向可以执行的python3.6文件,
最后,可以检查一下
(torch_1.3) root@autodl-container-7f50119152-96cdd58b:~/miniconda3/envs/torch_1.3/bin# ls -l | grep python
lrwxrwxrwx 1 root root 45 Mar 7 12:59 python -> /root/miniconda3/envs/torch_1.3/bin/python3.6
lrwxrwxrwx 1 root root 17 Feb 7 20:54 python3-config -> python3.6m-config
-rwxrw-rw- 1 root root 10668400 Mar 7 12:41 python3.6
lrwxrwxrwx 1 root root 17 Feb 7 20:54 python3.6-config -> python3.6m-config
-rwxrwxr-x 1 root root 3537 Feb 7 20:54 python3.6m-config
检查无误后,可以再看看python3.6是否可以正常找到
(torch_1.3) root@autodl-container-7f50119152-96cdd58b:~/miniconda3/envs/torch_1.3/bin# which python
/root/miniconda3/envs/torch_1.3/bin/python
(torch_1.3) root@autodl-container-7f50119152-96cdd58b:~/miniconda3/envs/torch_1.3/bin# python3.6
Python 3.6.13 |Anaconda, Inc.| (default, Jun 4 2021, 14:25:59)
最后的最后,要确保那个python3.6可以执行哦!!!
如果不能执行,通过chmod 766 python3.6 修改即可。
pycharm远程配置避免再次引发问题
按照相关教程操作即可,但是选择虚拟环境解释器时,一定要选择,现有,然后选择刚那个可以执行的python3.6解释器。(可能新建会引发刚那个问题吧,我第一次是新建的,就遇到那个问题了,后来解决之后,选择“现有”,就成了)
