Permission denied: user=dr.who, access=READ_EXECUTE, inode="/tmp/hive":xxy:supergroup:drwx-wx-wx详细解决办法
时间: 2024-01-06 22:10:16 浏览: 158
这个错误提示表明用户 `dr.who` 没有读取和执行 `/tmp/hive` 目录的权限。该目录的所有者是 `xxy`,所属组为 `supergroup`,并设置了 `drwx-wx-wx` 的权限(即所有者有读、写和执行权限,组用户和其他用户均没有任何权限)。
要解决这个问题,您可以尝试以下几种方法:
1. 确认您是否有必要访问该目录的权限。如果您不需要访问该目录,则可以忽略此错误。
2. 如果您需要访问该目录,请联系目录所有者(即 `xxy` 用户)或管理员,请求授予您访问权限。
3. 如果您是管理员或超级用户,请使用 `chmod` 命令更改目录的权限,以授予 `dr.who` 用户访问权限。例如,使用以下命令将 `tmp/hive` 目录的访问权限更改为 `drwxr-xr-x`:
```
chmod 755 /tmp/hive
```
注意:在更改权限之前,请确认您有足够的权限进行更改,并且确保更改不会影响其他用户或系统的正常运行。
相关问题
Permission denied: user=dr.who, access=READ_EXECUTE, inode="/":hadoop:supergroup:d-wx--x--x
这个错误提示看起来是用户 "dr.who" 试图访问根目录"/",但是没有足够的权限。具体来说,这个用户对该目录的权限是读取和执行(但没有写入),而目录所有者是"hadoop",所属组是"supergroup"。
要解决这个问题,有几个可能的方法:
1. 确认用户 "dr.who" 是否有足够的权限访问该目录。可以使用 "ls -ld /" 命令来查看目录的权限和所有者信息。
2. 如果用户没有足够的权限,可以使用 "chmod" 命令来更改目录的权限。例如,使用 "sudo chmod o+rx /" 命令将允许其他用户读取和执行该目录。
3. 如果用户不属于"hadoop"组,可以使用 "usermod" 命令将用户添加到该组。例如,使用 "sudo usermod -aG supergroup dr.who" 命令将用户 "dr.who" 添加到 "supergroup" 组中。
Permission denied: user=dr.who, access=WRITE, inode="/user/hive/warehouse/ods_shot.db/ods_shot_info":root:supergroup:drwxr-xr-x
个错误提示表明用户dr.who没有写入该文件的权限。该文件的所有者是root,所属组是supergroup,权限为drwxr-xr-x。这意味着只有root用户和supergroup组的成员才有写入该文件的权限。因此,用户dr.who需要获得该文件的写入权限才能进行写入操作。
解决该问题的方法有两种:
1. 使用root用户或supergroup组的成员进行写入操作。
2. 将该文件的权限设置为drwxrwxrwx,即所有用户都有读写执行权限。可以使用以下命令进行设置:hadoop fs -chmod 777 /user/hive/warehouse/ods_shot.db/ods_shot_info
阅读全文