vsftpd를 설치하기 위해 yum을 사용했습니다. 왜 `/etc/rc.d/init.d/`에 있지 않습니까?

vsftpd를 설치하기 위해 yum을 사용했습니다. 왜 `/etc/rc.d/init.d/`에 있지 않습니까?

내 yum 소스는 내가 사용하는 로컬 iso 소스이며 다음을 찾는 데 yum install vsftpd -y사용됩니다 .whereisvsftpd

[root@localhost etc]#  whereis vsftpd
vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz

아래쪽에 있는 것으로 나타났는데 /usr/sbin/왜 아래쪽에 위치하지 않습니까 /etc/rc.d/init.d?


편집하다

나는 사용한다 CentOS 7.2.

답변1

/etc/init.d또는 /etc/rc.d/init.d소프트웨어 응용 프로그램의 초기화 스크립트가 있는 위치입니다. /usr/sbin(또는 /usr/bin)는 애플리케이션 실행 파일이 실제로 설치된 위치입니다.

/etc/rc.d/init.d애플리케이션(귀하의 경우 vsftpd)을 호출하는 스크립트만 포함되어 있습니다. 이 스크립트는 일반적으로 시작 중에 애플리케이션을 데몬 서비스로 시작하는 데 사용됩니다.내부에프로세스. 이 외에도 스크립트는 /etc/init.d시작, 중지, 상태 및 다시 시작 옵션도 제공합니다.

/etc/systemd/system/vsftpd는 일반적 으로 시작 스크립트가 아닌 서비스 파일이 있는 애플리케이션입니다 . 그렇기 때문에 해당 지역에 위치하지 않습니다./etc/init.d/

답변2

를 읽으면 man whereis표준에 있는 바이너리만 검색하기 때문입니다 $PATH. 예를 들어

# echo $PATH
/usr/lib64/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

이 항목은 /etc/init.d포함되어 있지 않습니다 PATH.

.vsftpd RPM을 사용하면 vsftpd RPM으로 설치된 모든 파일을 볼 수 있습니다 rpm -q --dump vsftpd.

@Gilson_Varghese가 지적했듯이 /etc/init.d. 시스템 단위는 하나만 있을 수 있습니다. 둘 다 있으면 systemd는 systemd 장치만 사용합니다! 패키지는 파일 확장자를 사용하여 /lib/systemd/system/( /etc!가 아닌) 시스템 장치를 설치합니다..service

관련 정보