Supervisord가 기본적으로 tmp 폴더에서 실행/실행되도록 구성되어 있는 이유는 무엇입니까?

Supervisord가 기본적으로 tmp 폴더에서 실행/실행되도록 구성되어 있는 이유는 무엇입니까?

감독관에 관해 질문이 있습니다. echo_supervisord_conf를 실행한 후 실행되는 디렉터리가 기본적으로 /tmp로 구성되어 있음을 확인했습니다. 왜 그럴까요? 시스템의 모든 사용자가 /tmp 폴더에 쓸 수 있기 때문입니까, 아니면 Supervisord가 파일을 임시 파일로 적절하게 처리해야 하기 때문에 해당 폴더에 파일을 저장합니까?

내가 묻는 이유는 Redhat 시스템에서 실행되는 응용 프로그램이 있고 Redhat이 /tmp 폴더에서 특정 파일을 자동으로 제거하는 것 같기 때문입니다. 이로 인해 때때로 감독자와 애플리케이션이 충돌하는 것 같습니다. 그래서 Supervisord가 파일을 해당 폴더에 넣은 다음 다른 곳에 두는 것이 적절한지 결정하는 이유가 궁금합니다.

어떤 도움이라도 대단히 감사하겠습니다!

답변1

이는 단지 기본값이며 .conf 또는 명령줄에서 변경할 수 있습니다. 이것문서이 설정 자체를 변경하는 것이 좋습니다(적어도 소켓의 경우).

echo_supervisord_conf의 예제 구성 출력은 /tmp/supervisor.sock를 소켓 파일로 사용합니다. 이 경로는 단지 예일 뿐이므로 시스템에 더 적합한 위치로 변경해야 할 수도 있습니다. 일부 시스템에서는 /tmp의 오래된 파일을 주기적으로 삭제합니다. 소켓 파일이 삭제되면 Supervisorctl은 Supervisord에 연결할 수 없습니다.

관련 정보