首页 > 解决方案 > 无法以 sudo 执行 lxd lxc 命令

问题描述

在 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 似乎出现了问题,导致我出现上述问题。

有什么建议可以解决这个问题吗?

谢谢

标签: lxclxdjuju

解决方案


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

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

newgrp lxd
sudo usermod -aG aravind lxd

推荐阅读