Permission denied: user=dr.who, access=WRITE, inode="/user":hdfs:hdfs:drwxr-xr-x
时间: 2023-11-28 13:48:51 浏览: 107
这个错误信息表明用户 "dr.who" 没有写入权限来操作 HDFS 的 "/user" 目录。这个目录的属主是 "hdfs" 用户,属组是 "hdfs" 组,其它用户只有读和执行的权限。如果你需要在 "/user" 目录下进行写操作,你需要获得相应的权限或者联系管理员来获取写入权限。可以通过以下命令查看当前用户的权限:
```bash
hdfs dfs -ls /user
```
如果你想要为用户 "dr.who" 授权写入权限,可以使用以下命令:
```bash
hdfs dfs -chmod u+w /user
```
这将为属主添加写入权限。如果你希望其他用户也能够写入,则可以使用以下命令:
```bash
hdfs dfs -chmod o+w /user
```
这将为其他用户添加写入权限。请注意,授予权限需要管理员权限。
相关问题
permission denied:user=dr.who,access=WRITE,inode="/user/gao/input":gao:supergroup:drwxr-xr-x
当遇到 "Permission denied: user=dr.who, access=WRITE, inode=/user/gao/input: gao:supergroup: drwxr-xr-x" 这样的错误时,表明用户 `dr.who` 没有对 `/user/gao/input` 目录的写权限。解决这个问题可以通过Hadoop配置文件来设置一个具有适当权限的静态用户。
要解决这个问题,需要在Hadoop的配置文件(通常是 `core-site.xml` 或者 `hdfs-site.xml`)中添加以下属性:
```xml
<configuration>
<property>
<name>hadoop.http.staticuser.user</name>
<value>gao</value> <!-- 替换为需要拥有写权限的用户的用户名 -->
</property>
</configuration>
```
这行配置告诉Hadoop使用指定的用户 `gao` 来执行HTTP请求,即使请求看起来像是来自其他用户(在这个例子中是 `dr.who`)。这样,`gao` 用户就可以代行 `dr.who` 的权限来写入 `/user/gao/input` 目录了。
请注意,实际操作之前最好先确认 `gao` 是否有权访问该目录,以及此操作是否符合安全策略。完成配置后,重启Hadoop服务以应用更改。
hadoop在web页面创建目录时报错:Permission denied: user=dr.who, access=WRITE, inode="/":linyzh:supergroup:drwxr-xr-x
当在Hadoop的Web页面上创建目录时出现"Permission denied"错误,这通常是由于用户没有足够的权限来执行该操作引起的。在你的情况中,错误信息显示用户"dr.who"被拒绝了写入根目录"/"的权限。
要解决这个问题,你可以尝试以下几个步骤:
1. 确认用户权限:首先,确保用户"dr.who"具有足够的权限来在根目录"/"下创建目录。你可以使用Hadoop的命令行工具或其他管理工具来检查和修改用户的权限。
2. 检查Hadoop配置:检查Hadoop的配置文件,确保文件系统权限设置正确。特别是,确认文件系统的权限设置允许用户"dr.who"在根目录"/"下创建目录。
3. 检查HDFS状态:检查HDFS的状态,确保集群正常运行,并且没有任何故障或错误发生。你可以使用Hadoop的命令行工具或Web页面来检查HDFS的状态。
4. 检查日志文件:如果以上步骤都没有解决问题,你可以查看Hadoop的日志文件,以获取更详细的错误信息。日志文件通常位于Hadoop集群的日志目录中,可以帮助你确定问题的根本原因。
阅读全文