Centos7: systemd를 사용하여 xinetd 서비스 시작

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는 어디에 있나요?)

이 파일은 어떤 모양이며 어디로 이동합니까?

감사해요

답변1

나는 여러분이 이미 달리기와 관련된 모든 위험을 이해하고 있다고 가정하므로 rshd프레젠테이션의 "무서운 경고" 부분을 건너뛰겠습니다. :-)

배포판에 실행 중인 프로그램이 포함되어 있는 경우 마이그레이션할 올바른 시스템 파일이 이미 있을 가능성이 높습니다( /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.

관련 정보