Linux 在Puppet中使用/etc/fstab的augeas时出现问题
我很确定这个类中有一些语法错误,其中有一个Linux 在Puppet中使用/etc/fstab的augeas时出现问题,linux,puppet,augeas,Linux,Puppet,Augeas,我很确定这个类中有一些语法错误,其中有一个augeas资源 这是我的密码: # # This class was created to deal with /etc/fstab on openstack nodes # class myfstab ( $spec = 'uig003:/uig003/uig003_OSC_vol003A', # spec Example uig003:/uig003/uig003_OSC_vol003A $mount_point = '/data
augeas
资源
这是我的密码:
#
# This class was created to deal with /etc/fstab on openstack nodes
#
class myfstab (
$spec = 'uig003:/uig003/uig003_OSC_vol003A',
# spec Example uig003:/uig003/uig003_OSC_vol003A
$mount_point = '/data',
# Example /data
$vfstype = 'nfs',
# Example nfs
$opt_1 = 'rw',
# Example rw
$opt_2 = 'bg',
#Example bg
$opt_3 = 'hard',
#Example hard
$opt_4 = 'intr',
#Example intr
$opt_5 = 'rsize=32768',
#Example rsize=32768
$opt_6 = 'wsize=32768',
#Example wsize=32768
$opt_7 = 'tcp',
#Example tcp
$opt_8 = 'vers=3',
#Example vers=3
$dump = 0,
#Example 0
$passno = 0,
#Example 0
) {
augeas{ 'data_mount' :
context => '/files/etc/fstab',
changes => [
“set 01/spec $spec",
“set 01/file $mount_point",
“set 01/vfstype $vfstype”,
“set 01/opt[1] $opt_1”,
“set 01/opt[2] $opt_2”,
“set 01/opt[3] $opt_3",
“set 01/opt[4] $opt_4",
“set 01/opt[5] $opt_5",
“set 01/opt[6] $opt_6",
“set 01/opt[7] $opt_7",
“set 01/opt[8] $opt_8",
“set 01/dump $dump”,
“set 01/passno $passno”,
],
}
}
当我运行puppet parser validate init.pp
时,我收到以下错误消息:
Error: Could not parse for environment production: Could not match “set at /etc/puppetlabs/puppet/modules/myfstab/manifests/init.pp:35
第35行是
“set 01/spec $spec",
。。。线路
谢谢。从您的代码中可以看出,您的代码似乎包含卷曲(排版)双引号,而不是ASCII双引号。这正是puppet的用意。从您的代码中可以看出,您的代码似乎包含卷曲(排版)双引号,而不是ASCII双引号。这正是木偶要塞的东西。好眼睛!谢谢你,先生。老实说,我从来没有看到过这么好的眼睛!谢谢你,先生。老实说,我从来没有发现过这一点。你是否考虑过使用
Mount
资源来管理/etc/fstab
?虽然从他们的名字上看可能不太明显,但至少在依赖fstab的系统上,这是他们所做的(部分)工作。您是否考虑过使用Mount
资源来管理/etc/fstab
?虽然从他们的名字上看可能并不明显,但这是他们所做的(部分)工作,至少在依赖fstab的系统上是这样。