Ubuntu 12.04上的gcloud安装权限问题 [英] gcloud installation permission issue on Ubuntu 12.04
问题描述
sudo curl https://sdk.cloud.google.com | bash
但安装时显示错误。
<然后,我从一个zip文件安装了Google Cloud SDK,但它在安装的最后阶段显示错误:
/home/nikhil/google-cloud-sdk/install.sh
欢迎使用Google Cloud SDK!
Traceback(最近一次调用最后一次):
在< module>文件中,第20行的文件/home/nikhil/google-cloud-sdk/bin/bootstrapping/install.py
from googlecloudsdk.gcloud import gcloud
文件/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/gcloud/gcloud.py,第190行,在< module>
_cli = CreateCLI()
文件/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/gcloud/gcloud.py,第188行,在CreateCLI
中返回loader.Generate()
文件/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/calliope/cli.py,第304行,生成
cli = self .__ MakeCLI(top_group)
文件/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/calliope/ cli.py,第467行,在__MakeCLI
log.AddFileLogging(self .__ logs_dir)
文件/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib /googlecloudsdk/core/log.py,第547行,在AddFileLogging
中_log_manager.AddLogsDir(logs_dir = logs_dir)
文件/ home / nikhil / google-cloud-sdk / bin / bootstrapping / .. /../lib/googlecloudsdk/core/log.py,第331行,在AddLogsDir
log_file = self._SetupLogsDir(logs_dir)
文件/ home / nikhil / google-cloud-sdk / bin /bootstrapping/../../lib/googlecloudsdk/core/log.py408行,在_Setu pLogsDir
os.makedirs(day_dir_path)
文件/usr/lib/python2.7/os.py,行157,在makedirs
mkdir(name,mode)
OSError:[Errno 13] Permission denied:'/home/nikhil/.config/gcloud/logs/2015.07.03'
我应该怎么做才能完成安装?然后,我在终端上尝试了 gcloud info
但它显示下面的错误:
nikhil @ nikhil-Aspire-S3-391:〜$ gcloud info
Traceback (最近的最后一次呼叫):
文件/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/gcloud/gcloud.py,第190行,位于< module>
_cli = CreateCLI()
文件/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/gcloud/gcloud.py,第188行,位于CreateCLI
return loader .Generate()
文件/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/calliope/cli.py,行304,在Generate
cli = self .__ MakeCLI(top_group )
文件/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/calliope/cli.py,行467,在__MakeCLI
log.AddFileLogging(self .__ logs_dir)
文件/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/core/log.py,第547行,在AddFileLogging
中_log_manager.AddLogsDir(logs_dir = logs_dir)
文件/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/core/log.py,第331行,在AddLogsDir
log_file = self._SetupLogsDir(logs_dir)
文件/ home / usr / lib / python2中的/nikhil/google-cloud-sdk/./lib/googlecloudsdk/core/log.py,行408,位于_SetupLogsDir
os.makedirs(day_dir_path)
中。 7 / os.py,行157,在makedirs
mkdir(name,mode)
OSError:[Errno 13] Permission denied:'/home/nikhil/.config/gcloud/logs/2015.07.04'
在创建目录 /home/nikhil/.config/gcloud/logs/2015.07时,这看起来像是文件权限错误。 04
。你可以检查所有父目录的存在和文件权限吗?
ls -ld / home / nikhil /
ls -ld /home/nikhil/.config
ls -ld /home/nikhil/.config/gcloud
ls -ld /home/nikhil/.config/gcloud/logs
ls -ld /home/nikhil/.config/gcloud/logs/2015.07.04
然后上传输出这个问题。
我的预感是,您已经以root用户身份运行Cloud SDK命令(通常不推荐),它创建了 /home/nikhil/.config/gcloud
包含 root
的目录作为所有者。如果是这样的话,命令:
sudo chown -R nikhil /home/nikhil/.config/gcloud
可能会解决这个问题。
另外,命令 sudo curl https://sdk.cloud.google.com | bash
不会做你想做的事;它以root身份执行 curl
,但实际安装不会以root用户身份发生。 Cloud SDK可以在没有root权限的情况下安装,因此我建议您只需 curl https://sdk.cloud.google.com | bash
。
I have installed PHP App Engine SDK first. Then, I installed Google Cloud SDK using:
sudo curl https://sdk.cloud.google.com | bash
but it's showing error while installing.
Then, I installed Google Cloud SDK from a zip file, but it shows an error at the final stage of installation:
/home/nikhil/google-cloud-sdk/install.sh
Welcome to the Google Cloud SDK!
Traceback (most recent call last):
File "/home/nikhil/google-cloud-sdk/bin/bootstrapping/install.py", line 20, in <module>
from googlecloudsdk.gcloud import gcloud
File "/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/gcloud/gcloud.py", line 190, in <module>
_cli = CreateCLI()
File "/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/gcloud/gcloud.py", line 188, in CreateCLI
return loader.Generate()
File "/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/calliope/cli.py", line 304, in Generate
cli = self.__MakeCLI(top_group)
File "/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/calliope/cli.py", line 467, in __MakeCLI
log.AddFileLogging(self.__logs_dir)
File "/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/core/log.py", line 547, in AddFileLogging
_log_manager.AddLogsDir(logs_dir=logs_dir)
File "/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/core/log.py", line 331, in AddLogsDir
log_file = self._SetupLogsDir(logs_dir)
File "/home/nikhil/google-cloud-sdk/bin/bootstrapping/../../lib/googlecloudsdk/core/log.py", line 408, in _SetupLogsDir
os.makedirs(day_dir_path)
File "/usr/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/home/nikhil/.config/gcloud/logs/2015.07.03'
What should I do to complete installation?
Then, I tried gcloud info
on terminal, but it's showing the error below:
nikhil@nikhil-Aspire-S3-391:~$ gcloud info
Traceback (most recent call last):
File "/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/gcloud/gcloud.py", line 190, in <module>
_cli = CreateCLI()
File "/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/gcloud/gcloud.py", line 188, in CreateCLI
return loader.Generate()
File "/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/calliope/cli.py", line 304, in Generate
cli = self.__MakeCLI(top_group)
File "/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/calliope/cli.py", line 467, in __MakeCLI
log.AddFileLogging(self.__logs_dir)
File "/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/core/log.py", line 547, in AddFileLogging
_log_manager.AddLogsDir(logs_dir=logs_dir)
File "/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/core/log.py", line 331, in AddLogsDir
log_file = self._SetupLogsDir(logs_dir)
File "/home/nikhil/google-cloud-sdk/./lib/googlecloudsdk/core/log.py", line 408, in _SetupLogsDir
os.makedirs(day_dir_path)
File "/usr/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/home/nikhil/.config/gcloud/logs/2015.07.04'
This looks like a file permissions error in creating the directory /home/nikhil/.config/gcloud/logs/2015.07.04
. Can you check the existence and file permissions for all of the parent directories?
ls -ld /home/nikhil/
ls -ld /home/nikhil/.config
ls -ld /home/nikhil/.config/gcloud
ls -ld /home/nikhil/.config/gcloud/logs
ls -ld /home/nikhil/.config/gcloud/logs/2015.07.04
Then upload the output to this question.
My hunch is that you've run a Cloud SDK command as the root user (generally not recommended), which created the /home/nikhil/.config/gcloud
directory with root
as the owner. If this is the case, the command:
sudo chown -R nikhil /home/nikhil/.config/gcloud
may fix the issue.
As an aside, the command sudo curl https://sdk.cloud.google.com | bash
will not do what you want it to do; it executes curl
as root, but the actual install will not happen as the root user. The Cloud SDK can be installed without root privileges, so I recommend simply curl https://sdk.cloud.google.com | bash
.
这篇关于Ubuntu 12.04上的gcloud安装权限问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!