You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EMR集群部署spark-jobserver启动报Permission denied错误如何解决

问题解决步骤

根因分析

你遇到的报错本质不是单纯的权限问题,注意报错路径末尾的\r字符:这是Windows格式换行符(CRLF)残留,说明你上传的启动脚本或配置文件是在Windows环境编辑过的,Shell解析时会把\r识别为路径的一部分,你此前修改的/mnt/var/log/spark-jobserver路径和系统要创建的带不可见字符的路径不匹配,所以权限修改不生效。EMR集群完全支持部署spark-jobserver,不存在兼容性问题。

具体操作

  • 第一步:转换文件换行符格式
    先安装换行符转换工具,批量处理所有脚本和配置文件:
    # 安装dos2unix工具
    sudo yum install -y dos2unix
    # 批量转换所有shell脚本格式
    find /mnt/lib/spark-jobserver -name "*.sh" -exec dos2unix {} \;
    # 批量转换所有配置文件格式
    find /mnt/lib/spark-jobserver -name "*.conf" -exec dos2unix {} \;
    
  • 第二步:手动创建日志目录并配置权限
    避免启动脚本自动创建目录出现权限异常,手动初始化目录:
    # 递归创建正确的日志目录
    sudo mkdir -p /mnt/var/log/spark-jobserver
    # 把目录所有者修改为启动服务的用户,此处以你日志里的hadoop用户为例
    sudo chown -R hadoop:hadoop /mnt/var/log/spark-jobserver
    # 配置目录读写权限
    sudo chmod -R 755 /mnt/var/log/spark-jobserver
    
  • 第三步:重新启动服务
    cd /mnt/lib/spark-jobserver
    ./server_start.sh
    

可选校验

如果启动仍然失败,直接打开server_start.sh检查日志路径相关的变量定义,确认没有多余的特殊字符即可。

内容的提问来源于stack exchange,提问作者Abhisek Ray

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 08:42:04