Debian 启动-在 postgresql 之后启动守护进程

Debian 启动-在 postgresql 之后启动守护进程

我正在配置我的 debian 服务器,但无法正确启动守护进程。

为了启动,我的守护进程必须找到 Postgresql 套接字(位于 /var/run/postgresql/.s.PGSQL.5432),但守护进程没有启动。我检查了日志,上面写着:

加载地图层时出现错误:无法连接到服务器:没有此文件或目录。服务器是否在本地运行并接受连接 n 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 脚本元信息:

# 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. 

谁能帮我?

谢谢。

(抱歉我的英语不好)

答案1

尝试像这样在您的 rc 脚本中添加元信息(示例来自 exim4 rc 脚本,您的配置将与此不同,请查看 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 会使用该元信息在启动顺序所需的位置设置脚本。

答案2

好吧,尝试将“postgresql”添加到“Required-Start”字段。也许这会对你有帮助。此字段让你知道在启动 rc 脚本之前 insserv 会启动 postgresql。

相关内容