PostgreSQL을 daemontools 서비스로 실행하는 방법은 무엇입니까?

PostgreSQL을 daemontools 서비스로 실행하는 방법은 무엇입니까?
  1. svscanboot가 실행되고 자동 시작에 추가됩니다.
  2. 기사에 스크립트를 추가했습니다.http://thedjbway.b0llix.net/services/postgresql.html/service/postgres/run으로 이동하여 모드 a+x,루트 소유자를 변경합니다.
  3. 서비스 추가: svc -u /service/postgres
  4. svstat /service/postgres를 확인했는데 스크립트가 실행되고 있지 않습니다.

답변1

튜토리얼을 정확하게 따르면 로깅 서비스도 있어야 합니다. 로그 서비스에는 정보가 있습니다.로그 파일에서주요 서비스가 실패한 이유에 대해. tail, 및 를 사용하여 grep로그 파일을 읽을 수 있습니다 less.

Vanilla daemontools는 svstat서비스가 현재 작동 중인지 작동 중지되었는지만 알려줍니다. 스크립트가 실행되고 있지 않다고 주장할 이유가 없습니다. 실제로 그것은 매우 가능하다했다실행하세요. 로그 서비스의 로그 파일에 있는 오류 메시지는 이 작업을 수행할 때 출력되는 오류 메시지를 알려줍니다.

물론 스크립트에서 완전히 일반적인 방식으로 더 많은 작업을 설명하도록 할 수도 있습니다. 이는 결국 해석된 스크립트이므로 다른 쉘 스크립트에서와 마찬가지로 #!/bin/sh-v과 옵션을 사용할 수 있습니다.-x

로그에서 찾을 가능성이 가장 높은 항목은 postmaster로그에는 없지만 PATH또는 같은 하위 디렉터리에 있는 항목입니다. 이 경우에는 다음과 같이 호출해야 합니다. 또는 스크립트에 경로를 추가하여 장식되지 않은 일반 버전으로 호출할 때 프로그램을 찾을 수 있도록 해야 합니다. 후자는 PostgreSQL 문서 qv에 설명되어 있습니다./usr/lib/postgresql//usr/local/pgsql/usr/lib/postgresql/bin/postmaster/usr/lib/postgresql/bin/postmaster

추가 읽기

  • "환경 변수". PostgreSQL 현재 문서. 2016. PostgreSQL 글로벌 개발팀.
  • "서버 시작 실패". PostgreSQL 현재 문서. 2016. PostgreSQL 글로벌 개발팀.

관련 정보