我正在build立一些新的DNS服务器将运行tinydns 。 我需要在每个服务器上运行两个tinydns实例,每个实例都是我们的生产授权DNS和一个正在逐步淘汰的传统授权DNS,即:
ns0.production.foo.net ns0.legacy.bar.net
我想要清楚地识别他们的名字,并通过运行创build他们的服务:
tinydns-conf tinydns tinydnslogs /etc/tinydns/ns0.production.foo.net 172.16.3.100
和:
tinydns-conf tinydns tinydnslogs /etc/tinydns/ns0.legacy.bar.net 172.16.3.101
(然后很明显地将这些文件夹链接到daemontools魔术的/services中)
tinydns-conf的文档声明:
接口
tinydns-conf acct logacct D iptinydns-conf创build运行tinydns的服务目录D. 名称D必须以斜线开头,不能包含任何特殊字符。
在tinydns / daemontools服务名称中是否被认为是“特殊字符”?
我已经testing了tinydns服务名称包含句点,没有什么似乎是不幸的,我会好吗?
我正在运行CentOS 6.7 64位。
我或多或less地向tinydns邮件列表发布了相同的问题:
共识是时期可能很好,但要小心:
使用空格:
从小* .c文件的来源,我看不到一定的限制。
但是,我不会在这里目录名称与空白(源)
Shell元字符:
如果你把“特殊字符”解释为shell元字符,我认为你应该是安全的。 (资源)
其他想法:
在相应的情况下,点“ 在文件名中可能会被解释为正则expression式(一个通配符)。 由于“点”本身是recursion包含的,我不会期望有任何伤害。 但是,正确引用文件名或转义,点'总是一个好主意。
因此DJB的声明是一个警告,而不是一个限制。 (资源)