我从存档中安装了 ubuntu 16.04,并尝试通过在终端上发出命令
go
来测试我的安装。它不断地提示我/ not root-owned 1000:0
。
我安装了 go on
/usr/local
文件夹,并按照官方 golang 安装中的说明将其包含到我的路径中。我删除了go并尝试再次安装,但发现了相同的结果。这听起来更像是一个linux root权限问题,但我不知道如何解决它。我尝试了从存档安装的其他命令,它们工作得很好。任何形式的帮助将不胜感激。
似乎抱怨系统根目录
/
拥有错误的所有者。这是一个安全问题,因为您不希望普通用户随意更改系统文件。看起来您在过去的某个时刻故意更改了此设置;如果您破坏的权限不仅仅是这个权限,请将其改回来,或者重新安装系统。
sudo chown root /
郑重声明,为自己提供有限系统访问权限的正确方法是使用
sudo
。 将您自己添加到 sudoers
(通常这已由任何面向消费者的 Linux 发行版上的操作系统安装程序设置),当您需要某些权限时,请使用 sudo
运行该命令。
由于它已经反复出现(在评论和现已删除的答案中),绝对不要使用
chown -R
;这将更改整个系统上所有文件的所有者,包括主目录等。
简单,在命令行中:
sudo chown root:root /
除了我遇到的 root 权限问题之外,我还发现我安装了 go 使用 snap to:
snap install --classic go
,这不是一个好主意。即使作为 root,我也无法删除 /snap
中的 go 文件夹。我现在重新安装系统,希望问题能够得到解决。
sudo chown root /var
这将解决你的问题