"want"와 "before"에 동일한 단위가 지정된다는 것은 실제로 무엇을 의미합니까? [복사]

"want"와 "before"에 동일한 단위가 지정된다는 것은 실제로 무엇을 의미합니까? [복사]

장치(Unit1)에 다음과 같은 장치 파일 구성이 있다고 가정합니다.

[Unit]
Wants=Unit2
Before=Unit2

나는 읽었다~ 고 싶어요예를 들어 "Unit1은 시작 시 Unit2를 실행하려고 시도합니다(그러나 실패해도 상관 없음)."

나는 읽었다앞으로왜냐하면 "Unit1은 Unit2보다 먼저 시작되어야 하기 때문입니다."

만약에~ 고 싶어요Unit2(시도)가 Unit1보다 먼저 시작되도록 하되,앞으로Unit1이 Unit2보다 먼저 시작하도록 하세요. 실제 상황은 어떻습니까? 여기서 무슨 일이 일어나는가?

미리 감사드립니다!

답변1

~에서man systemd.unit:

한 장치 foo.service에 설정이 포함되어 Before=bar.service있고 두 장치가 모두 시작되는 경우 시작이 완료될 bar.service때까지 시작이 지연됩니다 . foo.service이 설정은 구성된 요구 사항 종속성 과 독립적 Requires=이며 직교합니다 .Wants=BindsTo=

참고: 독립 및 직교.

그리고:

Wants= . Requires=​하이브가 이미 시작된 경우 이 옵션에 나열된 장치가 시작됩니다.

이것은 Unit2가 시작되도록 하는 것에 대해 아무 말도 하지 않습니다.앞으로1단원. 이는 Unit1 시작이 시작으로 설정되면 Unit2도 시작으로 설정된다는 의미이지만, Unit2 시작이 Unit1 시작 전, 후 또는 동시에 완료된다는 의미는 아닙니다. 이 순서가 설정되어 BeforeUnit1이 시작을 완료할 때까지 Unit2의 시작이 지연됩니다.

관련 정보