파일이 변경될 때 Python 스크립트를 트리거하기 위해 시스템 경로 + 서비스를 사용하려고 합니다.
파일을 변경한 시기와 상관없이 시작 시 스크립트가 실행되는 것을 발견했습니다.
다음은 내 .path 파일의 일부입니다.
PathChanged=/home/pi/network/trigger.txt
Unit=monitor.service
현재 테스트할 때 monitor.service는 타임스탬프가 있는 로그 파일을 작성하는 스크립트를 트리거합니다. 다음은 로그 파일의 일부입니다.
14:26:40 Friday September 3, 2021 file modified
stat /home/pi/network/trigger.txt를 실행하면,
Access: 2021-07-14 17:07:42.871258883 -0400
Modify: 2021-08-24 16:53:00.879999930 -0400
Change: 2021-08-24 16:53:00.879999930 -0400
분명히 파일은 아직 수정되지 않았지만 어쨌든 시작 시 .path 단위가 실행됩니다. 여기서 무슨 일이 일어나고 있는 걸까요?
답변1
이 경로는 monitor.service
부팅 시 트리거되어서는 안 되지만 부팅 시 이 경로를 활성화하는 것은 일반적인 실수입니다 monitor.service
.
monitor.service
일반적인 내용을 포함하는 경우 :
[Install]
WantedBy=multi-user.target
그러면 monitor.service
부팅 시 활성화됩니다.또는그것이 당신에 의해 촉발될 때마다 *.path
.
해결 방법 1:
타사 서비스인 경우 서비스를 비활성화하세요. 이렇게 하면 시작 시 활성화되는 것이 방지되지만 사용자에 의해 트리거되는 것도 방지되지는 않습니다 *.path
.
sudo systemctl disable monitor.service
해결 방법 2:
monitor.service
직접 작성하는 경우 [Install]
에서 해당 부분을 제거 하면 됩니다 monitor.service
.