Я хотел бы редактировать 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
выше), но все они ничего не возвращают.
Базовый синтаксис для получения значений:
$ 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
Устройства, кажется, являются особенными; постоянный клиент получает/устанавливает доступ подполе "конфигурации" профиля, но необходимо использовать специальные команды для управления устройствами:
$ lxc profile device get default eth0 nictype
bridged