Centos
Centos7:用systemd啟動xinetd服務
我有一個來自 Centos6 的 xinetd 服務,我想移植到 Centos7 即創建一個 systemd 服務
# cat /etc/xinetd.d/br_rsh # default: on # description: The rshd server is the server for the rcmd(3) routine and, \ # consequently, for the rsh(1) program. The server provides \ # remote execution facilities with authentication based on \ # privileged port numbers from trusted hosts. service brshell { port = 591 socket_type = stream wait = no user = root log_on_success += USERID log_on_failure += USERID server = /usr/sbin/in.br_rshd disable = no }
如果我理解正確,我需要將上述文件分解為兩部分:一個用於 brshell.socket,另一個用於 brshell.service。然後,我需要執行
systemctl enable brshell.socket
(brshell.service 呢?)這些文件會是什麼樣子?這些文件會放在哪裡?
謝謝
我假設你已經知道跑步所涉及的所有風險
rshd
,所以我將跳過我演講的“可怕警告”部分。:-)如果您的發行版包含您正在執行的程序,則很有可能它已經具有要遷移到的正確 systemd 文件(
/usr/lib/systemd/system
發行版提供的單元文件位於 CentOS IIRC 中的位置。這是特定於發行版的;例如,我使用的是 Gentoo,所以它們位於/lib/systemd/system
我的位置。)如果您需要製作單元文件,遷移 xinetd 服務非常容易。你是正確的,你需要一個套接字和服務文件。預設情況下,它們都具有相同的基本名稱;但是,這不是要求,只是簡化。對於您的特定情況,請將以下內容放入
/etc/systemd/system
(這是您應該放置自己創建的單元文件的地方):brshell.socket
[Unit] Description=rsh Server Socket [Socket] ListenStream=591 Accept=yes [Install] WantedBy=sockets.target
brshell.service
[Unit] Description=rsh Server Daemon After=network.target [Service] ExecStart=/usr/sbin/in.br_rshd [Install] WantedBy=multi-user.target
基本上就是這樣!接下來你需要做的就是執行
systemd enable brshell.socket
(讓它在啟動時自動啟動)和systemd start brshell.socket
.