Centos

服務名稱中的句點是否被視為 tinydns 和 daemontools 的“特殊字元”?

  • November 5, 2015

我正在建構一些將執行tinydns的新 DNS 伺服器。我需要在每台伺服器上執行兩個 tinydns 實例,每個實例都服務於我們的生產權威 DNS 和正在逐步淘汰的傳統權威 DNS,即:

ns0.production.foo.net
ns0.legacy.bar.net

我想通過它們的名稱清楚地辨識它們並通過執行來創建它們的服務:

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

(然後顯然符號連結到這些文件夾以/services實現 daemontools 魔法)

的文件tinydns-conf指出:

界面

 tinydns-conf acct logacct D ip

tinydns-conf 創建一個執行 tinydns 的服務目錄 D。名稱 D 必須以斜杠開頭,並且不得包含任何特殊字元。

tinydns/daemontools 服務名稱中的句點是否被視為“特殊字元”?

我已經用包含句點的服務名稱測試了 tinydns,但似乎沒有任何問題,我可以嗎?

我正在執行 CentOS 6.7 64 位。

我在 tinydns 郵件列表中發布了或多或少相同的問題:

http://marc.info/?t=144662485500001&r=1&w=2

共識是月經可能沒問題,但要注意:

使用空格:

從 tiny*.c 文件的來源來看,我看不到某個限制。

但是,我不會在此處不使用空格的目錄名稱(來源)

外殼元字元:

如果您將“特殊字元”解釋為外殼元字元,我認為您應該是安全的。(來源)

其他想法:

在相應的情況下,點“。” 在文件名中可能會被解釋為 shell 上的 RegEx(一個萬用字元)。由於“點”本身是遞歸包含的,我不希望有任何傷害。但是,正確引用文件名或轉義“點”總是一個好主意。

因此,DJB 的聲明是一個警告,而不是限制。(來源)

引用自:https://serverfault.com/questions/733442