Centos
服務名稱中的句點是否被視為 tinydns 和 daemontools 的“特殊字元”?
我正在建構一些將執行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 郵件列表中發布了或多或少相同的問題:
共識是月經可能沒問題,但要注意:
使用空格:
從 tiny*.c 文件的來源來看,我看不到某個限制。
但是,我不會在此處不使用空格的目錄名稱(來源)
外殼元字元:
如果您將“特殊字元”解釋為外殼元字元,我認為您應該是安全的。(來源)
其他想法:
在相應的情況下,點“。” 在文件名中可能會被解釋為 shell 上的 RegEx(一個萬用字元)。由於“點”本身是遞歸包含的,我不希望有任何傷害。但是,正確引用文件名或轉義“點”總是一個好主意。
因此,DJB 的聲明是一個警告,而不是限制。(來源)