每天充电半小时之Cobbler(4)

数组字段

Cobbler中的某些字段(例如, - name-servers字段)存储为数组。这些数组始终被视为字符串数组,并且在使用添加/编辑时始终在Cobbler中指定为以空格分隔的列表。

例:

$ cobbler [object] edit --name=foo --field="a b c d"

哈希字段

Cobbler中的其他字段(例如, - ksmeta字段)存储为哈希 - 这是键值对的列表。

编辑时追加值

默认情况下,只要在编辑期间操作哈希字段,就会使用编辑期间指定的新值完全替换字段的内容。

例:

$ cobbler distro edit --name=foo --ksmeta="a=b c=d"
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'a': 'b', 'c': 'd'}
$ cobbler distro edit --name=foo --ksmeta="e=f"
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'e': 'f'}要追加这些字段的内容,应指定--in-place:$ cobbler distro edit --name=foo --ksmeta="a=b c=d"
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'a': 'b', 'c': 'd'}
$ cobbler distro edit --name=foo --in-place --ksmeta="e=f"
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'a': 'b', 'c': 'd', 'e': 'f'}

删除值

要从哈希中删除单个值,请使用'〜'(代字号)字符以及--in-place:

$ cobbler distro edit --name=foo --ksmeta="a=b c=d"
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'a': 'b', 'c': 'd'}
$ cobbler distro edit --name=foo --in-place --ksmeta='~a'
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'c': 'd'}

抑制值

您还可以通过在键名前面指定“ - ”字符来抑制使用值:

$ cobbler distro edit --name=foo --ksmeta="a=b c=d"
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'a': 'b', 'c': 'd'}
$ cobbler distro edit --name=foo --in-place --ksmeta='-a'
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'-a': 'b', 'c': 'd'}

没有值的键

指定没有值的键:

$ cobbler distro edit --name=foo --ksmeta="a b c"
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'a': '~', 'c': '~', 'b': '~'}

具有多个值的键

可以为同一个键指定多个值。在这种情况下,Cobbler会将值部分转换为数组:

$ cobbler distro edit --name=foo --in-place --ksmeta="a=b a=c a=d"
$ cobbler distro report --name=foo | grep "Kickstart Meta"
Kickstart Metadata             : {'a': ['b', 'c', 'd']}

标准原始命令

所有对象都支持以下标准命令:

list

list命令只是打印出按字母顺序排列的所有对象列表。

例:

$ cobbler distro list
   centos6.3-x86_64
   debian6.0.5-x86_64
   f17-x86_64
   f18-beta6-x86_64
   opensuse12.2-i386
   opensuse12.2-x86_64
   opensuse12.2-xen-i386
   opensuse12.2-xen-x86_64
   sl6.2-i386
   sl6.2-x86_64
   ubuntu-12.10-i386
   ubuntu-12.10-x86_64

list命令实际上也可以作为顶级命令使用,在这种情况下,它将遍历每个对象类型并列出当前存储在Cobbler数据库中的所有内容。

report

report命令打印每个对象配置的格式化报告。可选的--name参数可用于将输出限制为单个对象,否则将为每个对象打印报告(如果给定类别中有很多对象,这可能有点慢)。

与list命令一样,report命令也可用作顶级命令,在这种情况下,它将为Cobbler数据库中存储的每个对象打印报告。

remove

remove命令仅使用--name选项。

例:

$ cobbler [object] remove --name=foo

copy/rename

复制和重命名命令的工作方式类似,都需要--name和--newname选项。

例:

$ cobbler [object] copy --name=foo --newname=baror$ cobbler [object] rename --name=foo --newname=bar

猜你喜欢

转载自blog.csdn.net/weixin_40042382/article/details/81592636