正常に動作するスクリプトは、起動時に有効にするために/etc/init.d/スクリプト(consolenew)に入れると失敗します。特にPostgreSQLデータベースを開くことができず、エラーが発生します。could not connect to server: Connection refused
init.d/console 新しい設定:
#### BEGIN INIT INFO
# Provides: consolenew
# Required-Start: $all $postgresql $network
# Required-Stop: $all $postgresql $network
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: ....
#### END INIT INFO
/path-to-file/consolenew.sh &
システムはDebian 8です。 PostgreSQLを動作させるためにここで欠けているものは何ですか?
答え1
ほとんどの場合、スクリプトは/etc/init.d/scripts
postgresql RDBMSに表示されないユーザー(ほとんどのユーザーroot
)によってアクティブになった場所に配置されます。/etc/init.d/scripts
postgersqlに存在するユーザー/ロールで設定のスクリプトが有効になっていて、そのユーザーがpg_gba.conf
ファイルに接続できることを確認してください。
答え2
プログラムをGnome Desktop Manager(/etc/gdm3/Init)のInitスクリプトに移動すると、プログラムが実行されます(つまり、接続時間に応じてPostgreSQLがロードされます)。
誰かが他の解決策を持っていない場合は、これを使用します。
編集:After:postgresqlサービスが指定されていても、systemdスクリプトは機能します。