부팅 시 스크립트를 시작해야 합니다. /etc/init.d 및 /etc/profile.d 아래의 스크립트는 시스템 시작 중에 획득된다는 내용을 읽었습니다. 이들디렉터리의 차이점은 무엇인가요?
위의 두 가지 방법 외에도 @reboot /path/to 스크립트와 같은 항목을 사용하여 서비스를 시작하도록 cron을 구성할 수도 있는 것 같습니다.
시스템 시작 중에 스크립트를 실행하는 정확하고 효율적인 방법을 제안하십시오.
답변1
/etc/profile.d
PATH
일반적으로 데몬 시작과 독립적으로 셸 세션 환경(설정 등)을 사용자 정의하는 공급업체별 방법입니다 . 어떤 사람들은 데몬 시작이 절대 포함되어서 /etc/profile.d
는 안 된다고 주장하기도 합니다. 잘못된 환경 설정(시간대, 로케일 등)으로 로드하거나 로드합니다.
/etc/init.d
Linux에서 구현된 SystemV init 시스템의 일부입니다(반대로 Digital UNIX에서는 이를 에 넣습니다 /sbin/init.d
). 데몬 프로그램을 시작하려면 적절한 init 스크립트(이 작업을 올바르게 수행하는 방법을 배우려면 기존 스크립트를 연구하십시오)를 작성할 수 있습니다. 이렇게 하면 RHEL6 및 RHEL7과 호환됩니다.
cron 작업은 @reboot
데몬을 시작할 수 있지만 systemd
RHEL7에서는 cron의 실행 후 잊어버리는 것보다 더 나은 관리 기능을 제공합니다(데몬이 충돌하면 어떻게 됩니까? 자동으로 다시 시작해야 합니까? 여러 인스턴스를 시작하면 어떻게 됩니까? 얼마나 나쁜가요? 그렇지 않은 경우 하나의 인스턴스만 시작하려면 어떤 종류의 잠금이 필요합니까?