执行gcloud auth命令读取JSON密钥文件失败的技术求助
解决gcloud激活服务账号时JSON文件读取错误(Expecting value: line 1 column 1)
检查文件路径与权限
- 先确认文件存在:执行
ls -l /usr/sapSID/Home/3423.json,若提示文件不存在,检查路径中的sapSID是否为真实的系统标识,确保路径拼写正确。 - 验证读权限:查看文件权限信息,确保运行gcloud命令的用户拥有该文件的读权限。权限不足时,执行
chmod +r /usr/sapSID/Home/3423.json添加读权限,必要时用chown调整文件所属用户/组。
- 先确认文件存在:执行
验证JSON文件完整性与格式
- 直接查看文件内容:执行
cat /usr/sapSID/Home/3423.json,确认文件不为空且是标准的GCP服务账号密钥格式(以{开头,包含client_email、private_key等字段)。若文件为空或内容乱码,重新从GCP控制台下载服务账号密钥。 - 校验JSON格式:用
python -m json.tool /usr/sapSID/Home/3423.json验证,若输出格式错误提示,说明文件内容损坏,需重新获取正确的密钥文件。
- 直接查看文件内容:执行
排查隐藏字符问题
- 部分情况下,文件开头的BOM(字节顺序标记)会导致解析失败。执行
hexdump -C /usr/sapSID/Home/3423.json查看开头字节,若开头是ef bb bf,需去除BOM后再重试(可通过sed -i '1s/^\xef\xbb\xbf//' /usr/sapSID/Home/3423.json命令处理)。
- 部分情况下,文件开头的BOM(字节顺序标记)会导致解析失败。执行
更换路径引用方式重试
- 切换到文件所在目录执行命令,避免路径解析问题:
cd /usr/sapSID/Home gcloud auth activate-service-account --key-file=3423.json
- 切换到文件所在目录执行命令,避免路径解析问题:
内容的提问来源于stack exchange,提问作者Matrix
相关产品推荐
相关产品推荐

