Запуск Debian - запустить демон после postgresql

Я настраиваю свой сервер Debian, и мне не удается правильно запустить демон.

Чтобы начать, мой демон должен найти сокет Postgresql (расположенный в /var/run/postgresql/.s.PGSQL.5432), но демон не запускается. Я проверил логи, там написано:

Произошла ошибка при загрузке слоя карты: не удалось подключиться к серверу: такого файла или каталога нет. Сервер работает локально и принимает соединения в доменном сокете Unix '/var/run/postgresql/.s.PGSQL.5432'?

Сначала я использовал update-rc.d mydaemon defaultsи так как результат был таким, я пытался update-rc.d mydaemon start 30 2 3 4 5 . stop 30 0 1 6 ., но результат все тот же.

Я использую Debian 6.0.6 (Squeeze), и postgre "rc.d start level", кажется, 23 с ls /etc/rc3.d | grep postgre возвращается S23postgresql,

rc.d скрипт metainfo:

# Provides:          mydaemon                                                                                                                           
# Required-Start:    $remote_fs                                                                                                                        
# Required-Stop:     $remote_fs                                                                                                                        
# Default-Start:     2 3 4 5                                                                                                                           
# Default-Stop:      0 1 6                                                                                                                             
# Short-Description: mydaemon daemon                                                                                                           
# Description:       mydaemon daemon. 

Может кто-нибудь мне помочь?

Благодарю.

(и извините за мой английский)

2 ответа

Попробуйте добавить metainfo в ваш rc-скрипт следующим образом (пример из exim4 rc-script, ваша конфигурация будет отличаться от этой, ознакомьтесь с документацией insserv):

### BEGIN INIT INFO
# Provides:          exim4
# Required-Start:    $remote_fs $syslog $named $network $time
# Required-Stop:     $remote_fs $syslog $named $network
# Should-Start:      postgresql mysql clamav-daemon greylist spamassassin
# Should-Stop:       postgresql mysql clamav-daemon greylist spamassassin
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: exim Mail Transport Agent
# Description:       exim is a Mail Transport agent
### END INIT INFO

Этот метаинфо используется insserv для настройки вашего скрипта в нужном месте последовательности загрузки.

Попытайтесь добавить postgresql в поле Required-Start. Может быть, это поможет вам. Это поле позволяет знать insserv для запуска postgresql перед запуском вашего rc-скрипта.

Другие вопросы по тегам