在Windows系统运行Spark时遇winutils权限修改错误,请求协助
解决Windows下Spark运行时winutils chmod报错问题
嘿,我之前在Windows上跑Spark的时候也踩过这个坑!你遇到的ChangeFileModeByMask error (3): The system cannot find the file specified错误,本质是目标目录\tmp\hive不存在,winutils没办法给一个不存在的文件夹修改权限。
给你几个一步步解决的方法:
首先手动创建缺失的目录:
打开命令提示符(建议用管理员权限启动),执行命令:mkdir \tmp\hive或者直接打开资源管理器,在C盘根目录下新建
tmp文件夹,再在tmp里新建hive文件夹也行。然后重新执行权限修改命令:
回到winutils所在的C:\winutils\bin目录,运行:winutils.exe chmod 777 \tmp\hive这时候应该就能成功执行了。
额外提醒:如果还是报错,记得检查你的winutils版本是否和Spark依赖的Hadoop版本匹配。比如Spark 2.x通常对应Hadoop 2.7.x,Spark 3.x可能对应Hadoop 3.x,版本不匹配也会导致各种奇怪的权限问题。
内容的提问来源于stack exchange,提问作者Ashutosh Agrawal
相关产品推荐
相关产品推荐

