Systemd 서비스는 다른 서비스에 대한 환경 파일을 생성합니다.

Systemd 서비스는 다른 서비스에 대한 환경 파일을 생성합니다.

나는 두 개의 시스템 스크립트 " A"와 " B"를 작성했습니다. 이 절을 사용한 후 시작됩니다 B.AAfter

A환경 파일로 사용할 파일을 생성합니다 input.txt.B

내가 직면하고 있는 문제는 처음 시작할 때 발생합니다.

처음 시작할 때는 존재하지 않지만 input.txt, A시작한 후에는 생성됩니다.

그래서 systemds가 작동하는 방식은 서비스의 실제 프로그램이 시작되기 전에 필요한 파일을 얻으려고 시도하는 것이라고 생각합니다. (아마도 Bsystemd 유형을 변경해야 할까요?)

실제로 처음 시작할 때 B서비스 상태에 '환경 파일을 찾을 수 없습니다'라는 오류가 떴습니다.

그래서 무슨 일이 일어나고 있는지 생각합니다. A서비스가 먼저 평가 B되고 input.txt가 아직 존재하지 않기 때문에 B실패로 평가되지만 A실행 후에는 input.txt파일이 올바르게 생성됩니다.

이후 재부팅할 때마다 input.txt존재하고(존재하는 경우 변경하고, 디스크에 존재하지 않는 경우 생성 A) 이를 찾아 올바르게 실행합니다.AB

제 질문은 이 스크립트가 처음 실행 시에도 작동하도록 하려면 어떻게 해야 합니까?입니다.

관련 정보