You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows Server 2012运行Python脚本提示Access Denied求助

解决Windows Server 2012上Python 2.7.14运行出现Access Denied的思路

我之前也碰到过类似的权限问题,给你几个实际可行的排查和解决方向:

  • 检查Python安装目录的权限设置
    右键Python的安装文件夹(默认一般是C:\Python27),选择「属性」→「安全」标签。确认当前用户(包括管理员组)拥有读取和执行列出文件夹内容读取这几项权限。如果没有,点击「编辑」按钮,添加对应的用户或组,勾选所需权限后应用。记得勾选「将所有子对象权限条目替换为此对象的可继承权限条目」,确保子文件和文件夹也能继承正确的权限。

  • 验证Python程序的完整性与权限
    找到python.exe文件,同样右键检查它的安全权限。另外,有可能是安装包损坏导致的问题——你可以重新下载Python 2.7.14的安装包,校验一下MD5哈希值(官网有提供对应版本的哈希),确认安装包没问题后,卸载现有版本,重新安装时记得勾选「为所有用户安装」选项,这样能避免单个用户的权限限制。

  • 排查组策略和UAC的限制
    虽然你已经用管理员身份运行,但组策略可能有额外限制:

    1. 按下Win+R输入gpedit.msc打开组策略编辑器
    2. 依次展开「计算机配置」→「Windows设置」→「安全设置」→「本地策略」→「安全选项」
    3. 查看「用户账户控制:以管理员批准模式运行所有管理员」是否启用,如果是禁用状态,尝试启用后重启系统再测试
    4. 另外检查「软件限制策略」,看看有没有针对Python.exe的拦截规则
  • 检查杀毒软件的拦截
    Windows Server 2012自带的Windows Defender或者第三方安全软件,可能会误把Python.exe当成恶意程序拦截。你可以暂时关闭实时保护,再运行python -c "print 1"试试,如果能正常执行,就把Python的安装目录添加到杀毒软件的信任列表里。

  • 尝试用完整路径执行Python
    有时候环境变量的Path设置有问题,或者路径里的权限异常,你可以直接用完整路径运行命令,比如:

    C:\Python27\python.exe -c "print 1"
    

    如果这样能正常运行,那就要检查系统环境变量的Path里是否正确添加了Python的安装目录,并且确保该目录的权限没有问题。

内容的提问来源于stack exchange,提问作者Kal Zekdor

火山引擎 最新活动