Ubuntu 12.04上的gcloud安装权限问题 [英] gcloud installation permission issue on Ubuntu 12.04

查看:271
本文介绍了Ubuntu 12.04上的gcloud安装权限问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经先安装了PHP App Engine SDK。然后,我使用以下方式安装了Google Cloud SDK:

  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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆