今天在windows下使用FSShell访问hadoop服务器时,提示whoami无法执行,程序抛异常.由于客户端用户身份是通过宿主操作系统给出,则客户端在访问hadoop的时候,需要执行whoami命令,而windows下没有这个命令,所以程序无法执行。解决的办法:安装cygwin,在Path环境变量中配置cygwin的bin目录,借用cygwin的whoami实现登陆。
无法执行的错误提示是:
2008-12-04 09:10:34,328 WARN fs.FileSystem (FileSystem.java:<init>(1412)) - uri=file:///
javax.security.auth.login.LoginException: Login failed: Cannot run program "whoami": CreateProcess error=2, ϵͳÕҲ»µ½ָ¶
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:251)
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:276)
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:258)
at org.apache.hadoop.security.UserGroupInformation.login(UserGroupInformation.java:67)
at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:1410)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1348)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:213)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:118)
at org.apache.hadoop.fs.FsShell.init(FsShell.java:89)
at org.apache.hadoop.fs.FsShell.run(FsShell.java:1777)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
at org.apache.hadoop.fs.FsShell.main(FsShell.java:1928)
2008-12-04 09:10:34,375 WARN fs.FileSystem (FileSystem.java:<init>(1412)) - uri=file:///
javax.security.auth.login.LoginException: Login failed: Cannot run program "whoami": CreateProcess error=2, ϵͳÕҲ»µ½ָ¶
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:251)
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:276)
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:258)
at org.apache.hadoop.security.UserGroupInformation.login(UserGroupInformation.java:67)
at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:1410)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1348)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:213)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:118)
at org.apache.hadoop.fs.Trash.<init>(Trash.java:62)
at org.apache.hadoop.fs.FsShell.init(FsShell.java:92)
at org.apache.hadoop.fs.FsShell.run(FsShell.java:1777)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
at org.apache.hadoop.fs.FsShell.main(FsShell.java:1928)
2008-12-04 09:10:34,375 WARN fs.FileSystem (FileSystem.java:<init>(1412)) - uri=file:///C:/Documents%20and%20Settings/Administrator
javax.security.auth.login.LoginException: Login failed: Cannot run program "whoami": CreateProcess error=2, ϵͳÕҲ»µ½ָ¶
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:251)
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:276)
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:258)
at org.apache.hadoop.security.UserGroupInformation.login(UserGroupInformation.java:67)
at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:1410)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1348)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:213)
at org.apache.hadoop.fs.Path.getFileSystem(Path.java:175)
at org.apache.hadoop.fs.Trash.<init>(Trash.java:68)
at org.apache.hadoop.fs.Trash.<init>(Trash.java:62)
at org.apache.hadoop.fs.FsShell.init(FsShell.java:92)
at org.apache.hadoop.fs.FsShell.run(FsShell.java:1777)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
at org.apache.hadoop.fs.FsShell.main(FsShell.java:1928)
2008-12-04 09:10:34,390 WARN fs.FileSystem (FileSystem.java:<init>(1412)) - uri=hdfs://NN:9000/testdir
javax.security.auth.login.LoginException: Login failed: Cannot run program "whoami": CreateProcess error=2, ϵͳÕҲ»µ½ָ¶
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:251)
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:276)
at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:258)
at org.apache.hadoop.security.UserGroupInformation.login(UserGroupInformation.java:67)
at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:1410)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1348)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:213)
at org.apache.hadoop.fs.Path.getFileSystem(Path.java:175)
at org.apache.hadoop.fs.FsShell.ls(FsShell.java:606)
at org.apache.hadoop.fs.FsShell.doall(FsShell.java:1601)
at org.apache.hadoop.fs.FsShell.run(FsShell.java:1820)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
at org.apache.hadoop.fs.FsShell.main(FsShell.java:1928)
ls: null
分享到:
- 2008-12-04 09:11
- 浏览 2794
- 评论(0)
- 论坛回复 / 浏览 (0 / 6232)
- 查看更多
相关推荐
### hadoop本地Windows开发环境配置 #### 一、Hadoop开发环境配置 为了在Windows环境下进行基于Spark的分布式数据处理,首先需要配置好Hadoop的开发环境。这一步主要是为了确保能够本地提交并运行Hadoop MapReduce...
在Windows环境下配置Hadoop是一项技术性的工作,但通过提供的压缩包文件,您可以简化这个过程,避免手动编译的复杂步骤。以下是对标题和描述中涉及的知识点的详细说明: 1. **Hadoop**: Hadoop是一个开源框架,由...
在Windows环境下搭建Hadoop 3.1.0的分布式文件系统需要解决一个重要依赖——WinUtils。这个组件是Hadoop在Windows上运行所必需的,因为Hadoop原本是为Linux环境设计的,它的一些核心功能,如文件操作和本地进程管理...
在Windows环境下搭建Hadoop开发环境是一项复杂但必要的任务,尤其对于初学者和开发者来说,能够直接在本地系统上运行和调试Hadoop程序是极其有用的。本文将详细介绍如何在Windows上配置Hadoop,以便使用Eclipse进行...
Windows 下 Hadoop 配置是一个复杂的过程,需要了解 Hadoop 的基本概念、配置文件和集群配置等知识。本文详细介绍了 Windows 下 Hadoop 配置的过程和常见问题,旨在帮助读者更好地理解和配置 Hadoop。
然而,为了在Windows上本地开发或测试Hadoop应用程序,我们需要对环境进行一些特殊的配置,特别是涉及到`winutils`和`hadoop.dll`这两个关键组件。以下是关于这两个组件的详细解释以及如何在Windows上配置它们的步骤...
在Windows环境中配置Hadoop通常比在Linux环境下更为复杂,因为Hadoop最初是为Linux开发的。然而,通过正确配置和一些额外的工具,我们可以在Windows上成功运行Hadoop。 首先,Hadoop的安装和配置涉及几个关键步骤。...
在Windows环境下配置Hadoop 2.7.4是一项技术性的任务,涉及到多个步骤和关键配置文件的设置。Hadoop是一个开源框架,主要用于处理和存储大量数据,尤其适用于大数据分析。在Windows系统上运行Hadoop可能相对复杂,...
在Windows环境下搭建Hadoop2.6开发环境是一个相对复杂的过程,但通过详细的步骤和注意事项,可以有效地完成。这里我们将深入探讨这个过程,并介绍如何解决可能出现的问题。 首先,我们需要下载Hadoop2.6.0的安装包...
在Windows 7或10操作系统上配置Eclipse与Hadoop 2.7.1环境,是大数据开发过程中的一项基础任务。这个过程涉及到多个步骤,包括安装必要的软件、配置环境变量以及整合Eclipse插件,以便在集成开发环境中无缝运行...
在Windows上安装Hadoop需要耐心和细致的配置工作,但一旦完成,可以为学习和开发提供一个本地化的测试环境。记住,由于Windows与Linux的差异,可能会遇到一些特有的问题,需要查阅文档或社区论坛寻求解决方案。
但是,通过一些特殊配置,如使用Cygwin或Windows Subsystem for Linux(WSL)等工具,可以在Windows环境下运行Hadoop。这里我们将探讨如何在Windows 10上安装和配置Hadoop 2.6.1。 首先,你需要下载Apache Hadoop的...
本篇将详细讲解如何在Linux和Windows操作系统下配置Eclipse进行Hadoop开发。 **一、Linux环境下配置Eclipse开发Hadoop** 1. **安装Java**: Hadoop依赖Java运行环境,首先确保系统已安装Java,并且版本至少为Java 8...
在Windows环境下运行Hadoop,与在Linux系统中的配置有所不同,因为Hadoop原生是为类Unix系统设计的。然而,通过一些额外的工具,如WinUtils,我们可以使Hadoop在Windows上运行。 首先,让我们来理解一下标题中的...
在Windows环境下配置Hadoop,首先需要下载并解压Hadoop的安装包,如本例中的"Hadoop-2.7.5-master"。 **一、Hadoop安装** 1. **下载Hadoop**: 从Apache官方网站获取Hadoop 2.7.5的Windows版本,确保下载的是已经...
总结起来,搭建Windows下的Hadoop2开发环境涉及下载和安装Hadoop,配置环境变量和核心配置文件,调整系统以适应Windows环境,以及利用Ant进行项目构建。这个过程虽然相对复杂,但是一旦完成,你就可以在本地环境中...
8. **安全认证**:如果你的Hadoop集群配置了安全性(如Kerberos),则需要在Windows开发环境中配置相应的安全认证设置。 9. **Hadoop API理解**:熟悉Hadoop的API,包括文件系统操作、MapReduce编程模型以及YARN的...
需要注意的是,尽管Windows平台可以用于开发和测试Hadoop应用,但在生产环境中还是强烈建议使用Linux平台,以获得最佳性能和稳定性。此外,由于Hadoop在Windows下的分布式操作没有经过充分测试,因此并不支持将其...
首先,Hadoop最初设计时主要面向Linux环境,因此在Windows上运行Hadoop需要进行一些额外的配置。`winutils.exe`是Apache Hadoop为Windows系统提供的一个实用程序,它包含了类似于Linux环境下`/bin/bash`和`/usr/bin/...
在Windows上,我们需要配置环境变量、安装Java运行时环境(JRE)以及进行一些额外的设置才能使Hadoop正常工作。 2. **HadooponWindows-master.rar**: 这个文件可能是专门为在Windows系统上安装和配置Hadoop的指南或...