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

已加入授权的www-data组,仍提示Permission Denied无法列出目录求助

为何组成员无权列出目录?

问题背景

我通过命令sudo usermod -a -G www-data B将用户B加入www-data组,但尝试列出/var/www/html目录时仍提示权限拒绝,执行ll /var/www/html输出:

d????????? ? ? ? ? ? ./ d????????? ? ? ? ? ? ../

此前查看/var/www目录信息,执行ll /var/www得到:

drwxrwSr-- 4 www-data www-data 4096 /var/www/html

该目录属主、属组均为www-data,系统umask为764。

原因分析

  1. 目录缺少组执行权限
    从权限字符串drwxrwSr--拆解来看:

    • 属主权限:rwx(读、写、执行)
    • 属组权限:rwS(读、写,但无执行权限,大写S表示SUID位已设置但组未拥有执行权限)
    • 其他用户:r--(读)
      要列出目录内容,必须拥有该目录的执行(x)权限——没有x权限的话,即便有读权限也无法访问目录内的文件元数据,这就是你看到全问号输出的核心原因。
  2. 组变更未即时生效(次要因素)
    执行usermod添加组后,当前登录会话不会自动加载新组权限,需重新登录用户B才能让组变更生效。但即便生效,由于属组缺少x权限,依然无法正常列出目录。

解决办法

  • 给目录添加组执行权限:
    sudo chmod g+x /var/www/html
    
  • 重新登录用户B,或执行newgrp www-data在当前会话临时切换到新组,再尝试列出目录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 17:12:22