突然间,当我尝试运行任何gcloud命令(例如gcloud components update
)时,我开始收到“权限被拒绝”问题 - 如果我运行sudo gcloud components update
,问题就会被避免,但我不清楚为什么突然需要sudo命令?我实际上一直在尝试运行GCMLE实验并且它有相同的错误/警告,因此我尝试更新组件并仍然遇到此问题。我已经旅行了几天,并且由于几天前这些相同的命令工作,所以没有做任何改变。此外,我没有改变我的操作系统(Mac High Sierra 10.13.3) - Google方面是否有任何可能解释这种行为变化的变化?永久解决此警告的最佳做法是什么?
(conda-env) MacBook-Pro:user$ gcloud components update
WARNING: Could not setup log file in /Users/$USERNAME/.config/gcloud/logs, (IOError: [Errno 13] Permission denied: u'/Users/$USERNAME/.config/gcloud/logs/2018.03.10/XX.XX.XX.XXXXXX.log')
sudo gcloud components update
之后我能够启动GCMLE实验,但我也得到了相同的警告(虽然我的工作现在成功提交)。
WARNING: Could not setup log file in /Users/#USERNAME/.config/gcloud/logs, (IOError: [Errno 13] Permission denied: u'/Users/$USERNAME/.config/gcloud/logs/2018.03.10/XX.XX.XX.XXXXXX.log')
答案 0 :(得分:22)
基于类似问题的an answer,您可能需要将权限更改为相应的目录:
sudo chown -R $USER ~/.config/gcloud
同一篇文章表明,通过使用sudo
运行gcloud命令,权限可能已经失控。
答案 1 :(得分:1)
在大多数情况下,问题不是由~/.config/gcloud
目录引起的,而是由root拥有的gcloud的安装目录引起的:
drwxr-xr-x 20 root staff 640 Jun 20 18:22 google-cloud-sdk
解决方案: 您必须从以下位置更改用户对该目录的权限:
作者:
sudo chown -R $USER /Users/$USER/bin/google-cloud-sdk