![그래프가 변경되면 시스템 서비스를 다시 시작하는 방법은 무엇입니까?](https://linux55.com/image/109514/%EA%B7%B8%EB%9E%98%ED%94%84%EA%B0%80%20%EB%B3%80%EA%B2%BD%EB%90%98%EB%A9%B4%20%EC%8B%9C%EC%8A%A4%ED%85%9C%20%EC%84%9C%EB%B9%84%EC%8A%A4%EB%A5%BC%20%EB%8B%A4%EC%8B%9C%20%EC%8B%9C%EC%9E%91%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
저는 다음을 포함하는 Upstart 스크립트를 통해 Synergy를 실행하곤 했습니다.
start on (login-session-start
...
or drm-device-added
or drm-device-changed
or drm-device-removed
or graphics-device-added
or graphics-device-changed
or graphics-device-removed
...)
stop on (drm-device-added
or drm-device-changed
or drm-device-removed
or graphics-device-added
or graphics-device-changed
or graphics-device-removed
...)
예를 들어 서비스가 중지되었다가 시작됩니다. Synergy가 새 구성을 감지할 수 있도록 모니터를 연결하거나 연결을 끊습니다.
Synergy용 Systemd 서비스 파일을 작성 중이지만 동등한 메커니즘을 찾을 수 없습니다. man systemd.special
나열된 그래픽 관련 대상은 없고 systemctl list-units --type=device
그래픽 어댑터(모니터 아님)만 있으며 특정 이벤트에서 Systemd가 서비스를 중지하고 시작하도록 하는 방법이 명확하지 않습니다.
어떻게 이런 일을 할 수 있나요? 나는 Ubuntu 16.04에서 이 글을 쓰고 있지만 배포에 구애받지 않는 대답이 많을수록 좋습니다.