Debian Wheezy AWS EC2 AMI가 시작될 때 일부 작업을 수행하기 위한 스크립트를 작성 중입니다. 인터넷 소스에 따르면 이를 수행하는 일반적인 방법은 update-rc.d
부팅 시 실행되도록 설정하는 데 필요한 심볼릭 링크를 설치하는 것입니다.
그런데 이것을 시도하면 오류가 발생합니다.
$ update-rc.d
-bash: update-rc.d: command not found
이 방법은 Debian Squeeze 전까지는 항상 나에게 효과적이었습니다. 이것을 수행하는 표준 방법이 데비안 7.0에서 변경되었습니까? 공식적인 방법으로 이 작업을 수행하는 방법을 설명하는 문서를 찾을 수 없습니다.
답변1
update-rc.d
권한이 없는 사용자로 사용 하려는 것 같나요 ? 이 도구는 .dll /usr/sbin/
파일 에 있으므로 $PATH
루트 사용자로 실행하거나 sudo update-rc.d
.
답변2
스크립트에는 종속성과 기능을 나타내는 LSB(Linux 표준 라이브러리) 헤더가 포함되어야 합니다(참조:https://wiki.debian.org/LSBInitScriptsLSB 헤더에 대한 자세한 내용은 참조).
LSB 헤더가 있는 경우 다음을 사용하여 insserv
부팅 프로세스에 스크립트를 포함 할 수 있습니다.https://wiki.debian.org/LSBInitScripts/DependencyBasedBoot더 많은 정보를 알고 싶다면).
답변3
보다 표준적인 접근 방식은 새로운 LSB 스크립트를 생성하고 그 일부를 시작 서비스로 추가하는 것입니다.
또한 보고서 생성, 정리 작업 등의 사소한 스크립트를 /etc/init.d/rc.local
.
하지만 rc.local이 존재하고 실행 수준(일반적으로 데비안에서는 3)에 활성화되어 있는지 확인하세요.find /etc/rc*.d | grep rc.local