Unable to create process using ‘D:\Anaconda3\python.exe D:\Anaconda3\Scripts\conda-script.py shell.c

记录一下和prompt斗智斗勇的一天,一不小心合理摸鱼了好久。。。

1.问题详情

如题,详细如图,早上打开电脑,准备用prompt打开jupyter写点东西,结果人傻啦,报错无法启动进程

 正常情况如果启动了进程,会进入base环境,如图:

2.归因过程

我也检索了很多帖子,包括也去github上去找了一下相关问题,但无奈都未能解决我的问题,尝试过的方法大致有以下几种:

①修改用户权限:

根据报错提示,可以发现如果是权限问题,应当是anaconda安装路径上某些节点的问题。

通常来说,每个盘除了个别需要特殊权限或保护的文件夹以外,基本都是继承磁盘的用户权限的,因此我检查了所有的磁盘用户权限以及是否开启继承等,确实发现有些盘由于我前一天某些xjb操作,权限继承上确实出了点小问题,顺手进行了恢复。

图片展示了大概的过程(第一、二张图),修改后结果应当是D盘下的Anaconda3文件夹,以及Anaconda3下的Scripts文件夹都有灰色的√(第三张图),这意味着是继承上一层级的。(修改后有应用按钮先点应用,再点确定)

修改权限的尝试就到这里,当然我也试过把所有用户权限都放宽到完全控制,但也没有任何改变,一般来说权限这样就可以了~(实际上是我好用的笔记本就是这样的设置,自从安装软件后没有任何改动)如果还有不清楚的可以自行搜索修改权限的相关内容。

②添加系统环境变量:

任务栏搜索框搜索环境变量,随后按图操作,添加很多帖子里说的这四个路径,但实际上我之前好用的时候也并未在系统变量和用户变量中添加四个路径中的任何一个,因此尝试之前第一感觉就是肯定无效,实际也确实如此。。。

③以管理员身份运行:

这是我发现问题的关键一步,在尝试了前面两种各大平台普遍可以检索到的方法后,我无意间看到有用管理员身份运行解决的,于是我尝试了一下。

果然啊!这样打开prompt可以正常打开jupyter使用;这样打开pycharm也不会出现配置了conda的python作为编译器,但加载不出来任何conda已经安装好的包的情况。

但问题来了,这样你需要把每个你用到的prompt,以及pycharm等快捷方式,都在属性里勾选以管理员身份运行,并且在双击运行报出是否允许应用对设备进行更改弹窗时,去掉相关提醒,同事起始位置只能是system32文件夹,需要再切换路径进入到工作路径下。

这还是有点麻烦和离谱的。。。并且也会导致在其他程序对设备进行更改时,无法手动拒绝该修改,因此并不建议,但这一次我大概猜到了问题所在。

3.问题解决

综合以上信息,我大胆猜测是报错的路径上,某个节点设置了必须要以管理员身份运行的问题!

去掉前面检查过的磁盘和文件夹节点,其实只剩下python.exe和conda-script.py文件了,而对于.py文件来说,安装时生成的基本不会有运行的问题,权限方面检查了一下是继承的上一层级,也没有什么问题,所以就只剩下python.exe文件了。

不看不知道啊,好家伙,这是谁给我开了必须用管理员权限的?!

去掉勾之后,果然一切恢复正常。

4.一些猜测

那我前一天进行了什么xjb操作呢,当时我是想用任务计划程序,去把每天定时跑的代码,设置定时触发运行,但碰到了点小问题,添加了任务之后,报错0x2,查了下是用户权限问题,在本地安全策略中给执行该任务的用户分配了作为批处理作业登录的权限,然后报错0x1,进一步发现是包兼容性的问题,但因为工作文件中依赖的包版本有一定限制,因此为了避免已有代码复用带来其他麻烦,因此决定放弃在该电脑使用任务计划程序,随后关机,第二天就出现了这个问题,并且先把之前做的所有改动恢复到之前的状态,但仍然报本文错误。猜想可能是任务计划程序不当使用造成的,但具体原因实在是没搞懂,有懂的小伙伴欢迎私信,感激不尽~

5.题外话

有对修改prompt起始位置感兴趣的朋友,可以参考下图修改:

6.胡乱小结一下

其实在检索过程中看到评论区蛮多采用博主方法没有任何效果的帖子,感触很深,当然大家碰到的问题可能也和我不太一样,如果只根据报错内容和博主文章提到的方法,很多时候其实解决不了问题,因为并不知道问题的根源到底在哪里。

如果大家碰到本文的问题,可以先去检查一下python.exe是不是被修改为必须要管理员身份运行,如果不是的话,马上去检查一下报错的节点中是否有权限问题,如果还不是,可以立马退出本文,不要浪费时间~

物联沃分享整理
物联沃-IOTWORD物联网 » Unable to create process using ‘D:\Anaconda3\python.exe D:\Anaconda3\Scripts\conda-script.py shell.c

发表评论