admin管理员组文章数量:1542784
python中有的代码可能需要su权限,如
import os
os.mkdir('/media/xxx/disk_a')
如果在交互式环境中使用,需要以sudo的方式启动python.而在PyCharm的集成式开发环境中,使用sudo来启动pycharm可能能够正常运行这些代码(未测试),但用户目录发生了变化(用户目录变成了/root),从而导致运行环境变化.下面的方法可实现以普通用户启动pycharm,但在运行和调试代码时以su权限启动python解释器(即sudo python 程序入口.py),经测试成功.方法如下(参考原文在此)
1.设置python解释器默认以sudo方式启动,且免密码输入:
sudo visudo -f /etc/sudoers.d/python
在文件中输入如下文字
= (root) NOPASSWD:
如:
eric V-LU-ERSM = (root) NOPASSWD: /home/eric/anaconda2/bin/python
注:编辑sudoers.d中的文件一定要用visodu,它带安全检查功能.其它编辑工具可能导致文件解析失败,从而无法使用sudo命令.出现sudo解析失败,无法初始化策略插件错误(可通过系统恢复模式进行修复,方法在这里)
2.创建一个脚本文件(如su-python.sh),以sudo方式启动python解释器,文件内容参考如下:
#! /bin/bash
sudo /home/eric/anaconda2/bin/python "$@"
修改文件权限为可执行
chmod +x su-python.sh
3.使用su-python.py作为pycharm ide的解释器.
启动pycharm,打开工程,选择菜单命令File--Settings,选择Project:--Project Interpreter,如图
选择Project Interpreter右边的齿轮图标,在弹出菜单中选择Add Local,然后在文件选择对话框中选中刚刚创建的su-python.sh,确定后即可.
经过上面的设置后,该项目将以su权限启动python解释器运行和调试代码文件.
版权声明:本文标题:以root权限运行python程序_在PyCharm中以root权限运行和调试python代码 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1727080418a1096763.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论