You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EC2实例目录权限异常:ls报错Permission denied及403问题求助

解决EC2实例目录权限导致的ls报错与403 Forbidden问题

没错,你的推测完全正确——这个目录的权限配置就是引发问题的核心原因!

先拆解一下你给出的目录权限 d-wx-wx--x:

  • 字母d表示这是个目录
  • 所有者(ubuntu)的权限是-wx:没有读权限(r),只有写和执行权限
  • 所属组(ubuntu)的权限也是-wx:同样没有读权限
  • 其他用户的权限是--x:只有执行权限,完全没有读权限

而ls命令需要读取目录内的文件列表,没有读权限自然会抛出Permission denied;你的应用运行时需要读取目录里的代码、配置文件或静态资源,缺少读权限也会导致服务器返回403 Forbidden。

修复步骤

  1. 给目录添加读权限
    目录的执行权限(x)是进入目录的必要条件,我们只需要补充读权限即可:

    • 如果只需要让所有者和所属组拥有读权限(推荐,符合最小权限原则),执行:
      chmod u+r,g+r /path/to/application-name
      
      修改后权限会变成drwxrwx--x,足够满足ls和应用运行的需求。
    • 如果你确实需要让其他用户也能读取目录内容(不建议随意开启,存在安全风险),可以执行:
      chmod o+r /path/to/application-name
      
  2. 检查目录内文件的权限
    有时候目录权限修复后,文件本身的权限可能也不足(比如文件只有写权限),可以给目录下的文件批量添加读权限:

    chmod u+r,g+r /path/to/application-name/*
    

    注意:根据应用的实际需求调整,比如某些敏感配置文件可能只需要所有者可读。

安全提醒

不要图省事直接设置chmod 777,这会给所有用户完全的读写执行权限,存在极大的安全隐患。尽量遵循最小权限原则,只给需要访问该目录的用户/组赋予必要的权限。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:25:39