Juju 中的 LXD 权限问题

Juju 中的 LXD 权限问题

我最近已更新至juju2.0-beta11在 Ubuntu 16.04 上运行。

我之前使用过之前的版本,效果不错,但几天前升级后就出现了问题。现在,当我尝试在控制器上运行有关该模型的任何命令时,命令行都会挂起。如果我运行某个--debug选项,我会收到一条关于 LXD 上权限被拒绝的消息,并怀疑我是否属于 lxd 组:

2016-07-04 12:51:53 DEBUG juju.juju api.go:143 failed to connect via bootstrap config: constructing environ: invalid config: can't connect to the local LXD server: Permission denied, are you in the lxd group?

Please configure LXD by running:
    $ newgrp lxd
    $ lxd init

如果我运行,groups我可以看到我已经在 lxd 组中

infinityplusb@mypc:~$ groups
lxd adm cdrom sudo ...

如果我尝试销毁控制器,我将无法创建新控制器,这都是由于 lxd 权限的相同问题。我该如何 a) 修复权限和/或 b) 删除现有控制器/模型,以便我可以重新开始工作。:)

答案1

虽然这实际上不是一个答案,但我的解决方法是直接使用 lxc,并删除所有正在运行的实例。然后删除 lxd,清理它,重新启动并重新安装它。

lxc list

然后对列表中的每个指纹运行

lxc image delete FINGERPRINT

一旦所有正在运行的 lxc 实例被删除

sudo apt-get remove –purge lxd
sudo rm -r /var/lib/lxd /var/log/lxd

重启。然后,

sudo apt install lxd

虽然不是一个很好的解决方案,但对我来说还是有用的。

答案2

尝试确保 /var/lib/lxd/unix.socket 归 lxd 组所有。在最近安装的 lxd 中,它最终归 root 所有,尽管启动 juju 的用户属于 lxd 组,但由于 unix.socket 归 root 所有,因此它失败并显示您看到的消息。

相关内容