winutils.exe 的配置算是 Hadoop 在 Windows 上运行的敲门砖。Linux 上 Hadoop 跑得溜,但在 Windows 系统里不整上这个小工具,基本寸步难行。它其实就是给 Hadoop 补齐 Windows 上缺的那一脚,少了它,像权限校验、临时目录管理这些功能就跑不起来。
winutils.exe的下载比较讲究,得找靠谱渠道,比如 Apache 的发行包或者像 hadoop-common-2.2.0-bin-master.zip
这样的集成版本。别图省事随便找资源,防病毒软件不讲理,一拦就啥也跑不了。
解压位置推荐放到一个路径不含空格的目录,比如C:\hadoop\bin
,别放到Program Files
那种容易出幺蛾子的路径里。就是设置环境变量,把 bin 目录加进PATH
,不然你敲winutils
也没反应。
说到命令行,配置好之后跑个winutils.exe version
看看能不能出版本号,能出来八九不离十没问题了。跑 Hadoop 或者 Spark 项目再也不会报什么“Could not locate Hadoop executable”错误。
还有一点蛮容易忽略,就是winutils.exe
的执行权限。尤其是用普通用户账户跑项目的时候,一定要确认你对整个hadoop
目录有足够权限。否则还是各种报错。
如果你是第一次在 Windows 上跑 Hadoop,强烈建议看下 Hadoop Windows 环境下 winutils.exe 配置指南,写得还挺详细,照着搞就对了。
嗯,,winutils.exe就是 Windows 版 Hadoop 能不能正常跑的关键。如果你搞大数据或者练习分布式计算,别小看这个小文件,整明白它省你一堆时间。