나는 이것을 한동안 찾고 있었습니다:
런레벨 2에서 런레벨 5로 변경할 때 fe proftpd를 어떻게 시작합니까?
런레벨 2로 돌아가면 서비스가 다시 중지되어야 합니다.
따라서 - 런레벨 2에서 5로 변경할 때 ftp-server를 시작하고, 런레벨로 다시 변경할 때 ftp-server를 중지하십시오.
(참고: FTP 서버는 부팅 시 시작할 수 없으므로 변경하면 안 됩니다.)
내가 찾은 가장 가까운 것은 다음과 같습니다.
# update-rc.d -n <service> start 2 . stop 2 .
물론 이것은 잘못된 것입니다. 어떤 아이디어가 있나요?
답변1
살펴보면 man update-rc.d
몇 가지 예를 볼 수 있습니다. 이것은 아마도 당신이 원하는 것입니다:
update-rc.d proftpd start 80 5 . stop 20 0 1 2 3 4 6 .
80과 20은 proftpd가 대부분의 다른 서비스보다 늦게 시작되도록 하기 위한 것입니다.
다음 명령을 사용하여 먼저 기존 링크를 제거해야 할 수도 있습니다 update-rc.d -f proftpd remove
.
최신 버전의 운영 체제를 사용하는 경우 위 방법이 작동하는 것처럼 보일 수 있지만 옵션이 고려되지는 않습니다. 대신 파일을 편집
/etc/init.d/proftpd
하고 헤더를 다음과 같이 변경해야 합니다.
#!/bin/sh
### BEGIN INIT INFO
# Provides: proftpd
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 5
# Default-Stop: 0 1 2 3 4 6
# X-Interactive: false
# Short-Description: proftpd
### END INIT INFO
그리고 update-rc.d proftpd defaults
대신 달리세요.
update-rc.d
나중에 호출하기만 하면 insserv
작업이 완료되고 이제 모든 종속성과 시작/중지가 자동으로 계산되어 변경할 수 없기 때문입니다 .
올바른 링크가 있는지 확인하세요 ls -l /etc/rc*/*proftpd
. 예를 들어 출력은 다음과 같습니다.
lrwxrwxrwx 1 root root /etc/rc0.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root /etc/rc1.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root /etc/rc2.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root /etc/rc3.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root /etc/rc4.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root /etc/rc5.d/S04proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root /etc/rc6.d/K01proftpd -> ../init.d/proftpd