서비스가 존재하는 경우에만 서비스를 중지하려면 어떻게 해야 합니까? 즉, 서비스가 존재하고 실행 중이지만 중지할 수 없는 경우에만 오류 코드를 받고 싶습니다. 서비스가 존재하지 않거나 서버가 중지되거나 성공적으로 중지되면 오류 코드가 표시되지 않습니다.
systemctl stop foobar.service || true
실행 중인 서비스를 중지하려는 실패한 시도는 너무 공격적입니다. 목적은 서비스가 실행되지 않고 중지할 수 없는 경우에만 오류가 발생하도록 하는 것입니다.
답변1
무엇에 대해
systemctl is-active foobar.service && systemctl stop foobar.service
현재 "활성" 상태인 경우에만 서비스를 중지하려고 시도합니다.