【问题标题】:Not able to execute lxd lxc commands as sudo无法以 sudo 执行 lxd lxc 命令
【发布时间】:2019-12-22 19:36:22
【问题描述】:

在 Ubuntu 19.04 上使用以下命令安装 juju

sudo snap install juju --classic

这也安装了 lxd。当我尝试调用“sudo lxd -h”或“sudo lxc list”或“sudo juju bootstrap”时,我收到以下错误消息

sudo: juju: command not found
sudo: lxc: command not found
sudo: lxd: command not found

如果我在没有 sudo 的情况下运行这些命令,我​​会得到关注

Error: Get http://unix.socket/1.0: dial unix /var/snap/lxd/common/lxd/unix.socket: connect: permission denied

不知道出了什么问题。这就是发生的事情。首先,我能够安装 juju,它按预期工作得很好。后来我使用 devstack 安装了 OpenStack。我使用 ./unstack.sh 和 ./clean.sh 删除了 OpenStack 似乎出现了问题,导致我出现上述问题。

有解决此问题的建议吗?

谢谢

【问题讨论】:

  • 你能显示which lxcsudo echo $PATH的输出吗?
  • aravind@Hogwarts:~$ which lxc /snap/bin/lxc aravind@Hogwarts:~$ sudo echo $PATH /home/aravind/.local/bin:/home/aravind/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/var/lib/snapd/snap/bin
  • 请注意,您实际上不应该以非 root 身份运行“lxd”。 'lxc list' 是否也会给您拒绝权限?

标签: lxc lxd juju


【解决方案1】:

您不需要以 root 身份执行 lxc/lxd(使用 sudo)。您需要将您的用户添加到 LXD 组才能访问套接字。套接字的所有权设置为用户 root 和组 lxd。

执行以下两行(作为您的用户,而不是 root),然后尝试一个 lxc 列表:

newgrp lxd
sudo usermod -aG aravind lxd

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-20
    • 2021-03-25
    相关资源
    最近更新 更多