2016-08-22 3 views
1

두 개의 다른 패키지로 설치된 두 개의 서비스 A와 B가 있습니다.systemd가 비활성화 된 서비스를 시작해야합니까?

서비스 B는 서비스 A.

모두가 비활성화 기본적으로 정지됩니다에 따라 달라집니다. B가에 의존하기 때문에

systemctl enable B 
systemctl start B 

, 나는 A가 시작될 것으로 예상, 그것은 시작 않습니다 각 부팅 서비스 B의 실행을 얻기 위하여

, 내가 그것을 가능하게하고 나는 그것을 시작! 그러나 A는 활성화되어 있지 않습니다. 그것은 예상되는 행동입니까? 어떻게 든 이상하게 보입니다.

답변

2

예, 예상 된 동작입니다.

systemctl enablesystemctl disable 작업은 의 자동 시작을 구성합니다.

보다 정확하게이 작업은 단위 파일의 [Install] 섹션에 설명 된 작업 (또는 이러한 작업의 반대 작업)을 수행하기 만하면됩니다. 대부분의 경우 여기에는 multi-user.target 또는 비슷한 시스템 전체 대상에서 유닛에 인위적인 종속성을 추가하는 작업이 포함됩니다.

따라서 수동으로 또는 다른 종속성을 통해 장치를 시작하는 것은 완전히 영향을받지 않습니다. 직접 또는 종속성을 통해 유닛 파일을 시작하지 않으려면 systemctl mask UNIT을 실행하십시오.

+0

아! 나는 당신이 단지 사용 된 단어를 볼 때 매우 분명하지 않다고 생각합니다. 우리는이 시점에서 실제로 마스킹을 할 필요가 없습니다. 단지'enable'을 건너 뛰고 싶었 기 때문에 특정 데몬을 처리 할 필요가 없었습니다. 필요에 따라 다른 사람들이 시작하는 한, 우리는 모두 좋은 사람입니다. –