我在 Ubuntu 16.10 上安装最新版本的 golang 时遇到问题。运行sudo umake go
命令后,我收到消息说选择安装路径,默认路径建议为/home/$user/.local/share/umake/go/go-lang
. 这似乎不是我想要的,因为go
之后输入命令会给我以下信息:The program 'go' is currently not installed. You can install it by typing:
sudo apt install golang-go
. 但是,使用 apt 安装 golang 只会给我旧的 1.6 版本。
我曾尝试在使用 umake 时更改安装路径,但随后我收到一条消息,指出指定的目录将被删除并替换其中的所有内容。我不知道从这里去哪里。提前致谢。
在确保我拥有 umake 的最新版本(16.11.1)后,我运行了umake -r go
. 然后我又试了一次就跑了umake go
。这是我收到的错误消息:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/umake/tools.py", line 158, in wrapper
function(*args, **kwargs)
File "/usr/lib/python3/dist-packages/umake/frameworks/baseinstaller.py", line 409, in decompress_and_install_done
self.post_install()
File "/usr/lib/python3/dist-packages/umake/frameworks/go.py", line 75, in post_install
"GOROOT": {"value": self.install_path, "keep": False}})
File "/usr/lib/python3/dist-packages/umake/tools.py", line 450, in add_env_to_user
with open(profile_filepath, "a", encoding='utf-8') as f:
PermissionError: [Errno 13] Permission denied: '/home/$user/.profile'
使用 umake 卸载 go 后,我运行了该sudo chown -R $USER /home/$USER
命令,但是当我运行umake go
.
审查umake 文档
在您的系统上安装
umake
确实需要使用sudo
但是很明显,运行
umake app-name
应该作为regular user
而不是作为root
。为了安装应该执行的正确命令
go
是:如果您已经执行:
您可能需要在运行之前删除以前的安装(由 完成
sudo umake go
)umake go
解决权限问题
sudo umake go
以下错误的来源似乎是
umake go
作为 root 执行。为了解决它,请执行这会将您的主目录中的文件的所有权更改为您自己的。
假设这
thomas
是您的用户名,并且/home/thomas
是您的主目录,以下应该将 .profile 的所有权更改为thomas
而不是 root