如何使用 lxc 配置文件设置?

如何使用 lxc 配置文件设置?

我想从命令行编辑 LXD 配置文件。具体操作如下lxc profile set

lxc profile get <profile> <key> 获取配置文件配置。

lxc profile set <profile> <key> <value> 设置配置文件。

的预期格式是什么<key> <value>? 的输出lxc show profile表明采用点结构:

root@ubuntu ~# lxc profile show zoneminder
name: zoneminder
config:
  raw.lxc: lxc.aa_allow_incomplete=1
description: ""
devices:
  eth0:
    name: eth0
    nictype: bridged
    parent: zoneminder0
    type: nic

但我没有做get任何事情(更不用说- set)。我尝试了各种咒语(例如lxc profile get zoneminder name,,lxc profile get zoneminder lxc.name...以获取上面的值name),但它们都没有返回任何内容。

答案1

获取值的基本语法是:

$ lxc profile get default somekey

但是,要获得某些东西,您需要先设置它。看来您只能设置已知的键值,即那些对 lxd 有积极意义的值:

$ lxc profile set default rubbish 1
error: Bad key: rubbish

$ lxc profile set default limits.cpu 1

...然后你就可以检索它:

$ lxc profile get default limits.cpu
1

$ lxc profile show default
name: default
config:
  limits.cpu: "1"
description: Default LXD profile
devices:
  eth0:
    name: eth0
    nictype: bridged
    parent: lxdbr0
    type: nic

设备看起来很特殊;常规的 get/set 访问配置文件的“config”子字段,但您需要使用特殊命令来操作设备:

$ lxc profile device get default eth0 nictype
bridged

答案2

尝试lxc profile edit <profile>一下。通过打开内联编辑器,可以更好地编辑配置文件。

相关内容