![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
見ていただいてありがとうございます!
SuSE LinuxでpostgreSQLの自動起動が設定できず
困っております。
ヒントでもかまいませんので、
ご教授いただきたく思っております。
postgreSQLのインストールはソースから行いました。
ログイン後なら、以下のコマンドを実行することで
起動することは可能な状態です。
#su - postgres
#/usr/local/pgsql/bin/postmaster -i -D /usr/local/pgsql/data> logfile 2>&1 &
■自動起動させるために行ったこと
1.自動起動スクリプトファイル
"/usr/local/src/postgresql-8.3.3/cntrib/start-script/linux"
をディレクトリ"/etc/init.d/"にコピーしました。
2.自動起動スクリプトファイルを
「postgresql」にリネームし、
全員に実行権限を付与しました。
3."/etc/init.d/rc*.d"に以下の名前で
シンボリックリンクを作成しました。
・rc0.d、rc1.d、rc2.dに「K02postgresql」
・rc3.d、rc5.dに「S98postgresql」
現在、上記の操作をした状態となっておりますが、
rootでログインしてコマンド #pr -e を実行しても
「postmaster」の行があらわれません。
ちなみに、コマンド #chkconfig -list を実行すると
postgresqlの行の 3 と 5 がONになっています。
現在Linuxのことを勉強中ですので、
質問に情報不足などあるかもしれません。
ご指摘いただければ、至急追加情報を提示いたします。
よろしくお願いいたします!
No.3ベストアンサー
- 回答日時:
SUSE と RedHat で起動スクリプトの構成が違っているようですね。
SUSE の設定ツール YaST の「システム」、「ランレベル・エディタ」
で起動設定するとどうなりますか。
# SUSE 知らなくて的外れだったようです。
# また /usr/local/pgsql/data/logfile にエラーメッセージが
# 出力されているかもしれません。
>SUSE の設定ツール YaST の「システム」、
>「ランレベル・エディタ」
>で起動設定するとどうなりますか。
自動起動するようになりました!
ご指摘どおり、自動起動しなかった状態で
「ランレベル・エディタ」を開いてみました。
ランレベル 3 と 5 のチェックボックスに
チェックが入っていたので「やっぱりダメかな~」と
思って、念のため(?)チェックボックスのOFF/ONを
一度だけやって「ランレベル・エディタ」を閉じました。
その後、再起動してみると自動起動しました!
"/etc/init.d" に起動スクリプトを配置して、
シンボリックリンクを作成するだけでなく、
他にも何か編集しないといけないファイル等が
あったのでしょうか…??
いろいろ調べてみることにします!
何はともあれ、解決しました!!
長々とお付き合い下さり、本当にありがとうございました!
P.S. 何か、コメント頂けるかもしれませんので、
もうしばらく締め切りにせず置いておきます!
No.2
- 回答日時:
#/etc/init.d/postgresql start
で起動するのでしたら、サーバの起動時に問題なく自動起動すると
思うのですが、
# /etc/init.d/rc3.d/S98postgresql start
や
# /etc/init.d/rc5.d/S98postgresql start
でも起動するでしょうか。
また、サーバ起動時のコンソール画面や /var/log/messages に
PostgreSQL の起動エラーに関するメッセージは出てないでしょうか。
あと考えられるのは、postgresql 起動スクリプトが環境変数を
参照していて、root で実行するときにだけ設定されていると
いう場合です。
この回答への補足
再度、回答いただきましてありがとうございます!
頂きました回答にしたがって確認してみました。
>サーバ起動時のコンソール画面や/var/log/messages
サーバの起動時のコンソール画面には「PostgreSQL」関連のメッセージは見当たりませんでした。
また、"/var/log/message" で「postgre」を
検索してみましたが、起動時刻周辺には見つかりませんでした。
>postgresql 起動スクリプトが環境変数を参照
おそらく環境変数を参照はしていないとは思うのですが、
起動スクリプトを念のため文末に掲載します。
(先頭行以外の "#" に始まる行は省きました)
なお、文末の起動スクリプトは☆印の行で終了してしまう可能性が
あると思います。そこで、その直前に
echo "PostgreSQL"
という命令を加えた上で再起動してみました。
しかし、やはり起動時のコンソールにも、"/var/log/message" にも
「PostgreSQL」が現れませんでした。関係ないでしょうか?
勉強不足でもうしわけありません。
私の方で、もう少し調べてみることにします。
何かアドバイスがありましたら、よろしくお願いいたします!
◆◇起動スクリプト開始◇◆
#! /bin/sh
prefix=/usr/local/pgsql
PGDATA="/usr/local/pgsql/data"
PGUSER=postgres
PGLOG="$PGDATA/logfile"
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON="$prefix/bin/postmaster"
PGCTL="$prefix/bin/pg_ctl"
set -e
test -x $DAEMON || exit 0 …☆
case $1 in
start)
echo -n "Starting PostgreSQL: "
su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1
echo "ok"
;;
stop)
echo -n "Stopping PostgreSQL: "
su - $PGUSER -c "$PGCTL stop -D '$PGDATA' -s -m fast"
echo "ok"
;;
restart)
echo -n "Restarting PostgreSQL: "
su - $PGUSER -c "$PGCTL stop -D '$PGDATA' -s -m fast -w"
su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1
echo "ok"
;;
reload)
echo -n "Reload PostgreSQL: "
su - $PGUSER -c "$PGCTL reload -D '$PGDATA' -s"
echo "ok"
;;
status)
su - $PGUSER -c "$PGCTL status -D '$PGDATA'"
;;
*)
# Print help
echo "Usage: $0 {start|stop|restart|reload|status}" 1>&2
exit 1
;;
esac
exit 0
◆◇起動スクリプト終了◇◆
すみません!補足内容に抜けがありましたので、
お礼欄になってしまいましたが、お知らせいたします!
># /etc/init.d/rc3.d/S98postgresql start
>や
># /etc/init.d/rc5.d/S98postgresql start
>でも起動するでしょうか。
はい。起動しました。
また質問を締め切る時に、
改めてお礼を投稿させていただきます!
No.1
- 回答日時:
SuSE Linux は使ったことがありませんが、
/usr/local/src/postgresql-8.3.3/cntrib/start-script/linux
を root で実行すると、postmaster は起動しますか
この回答への補足
すばやいご回答、大変ありがとうございます!
そして返信が遅れてしまい、申し訳ありませんでした!
コマンドで
#/usr/local/src/postgresql-8.3.3/cntrib/start-script/linux start
を実行してみましたが、「Permission denied」でした。
そのファイルのパーミッションを確認すると、
rootにも実行権限はない状態でした。
なお、そのファイルを
(1) "/etc/init.d/" へコピーして
(2)「postgresql」にリネームして
(3)パーミッションで全員に実行権限を与えた
ファイルを実行するコマンド
#/etc/init.d/postgresql start
だと起動できました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- その他(プログラミング・Web制作) mariadbでのエラー 1 2022/11/15 12:31
- UNIX・Linux ubuntuのサーバー(virtual box)が、再起動するとデータが消えてしまいます。 4 2022/04/27 21:29
- UNIX・Linux cronでシェルスクリプト実行時のkubactlコマンドが機能しない対処法。 2 2022/08/03 18:58
- Ruby Ruby / passenger のインストールについて 1 2023/01/30 18:31
- UNIX・Linux Kali Linuxで起動できない - Minimal BASH Like Line Editing 1 2022/06/03 13:14
- PostgreSQL PostgreSQL14.6のSSL対応について 1 2023/01/05 15:42
- UNIX・Linux postfix smtpサーバーリレーがTLSハンドシェーク失敗 1 2022/08/15 15:45
- PostgreSQL PostgreSQLで"pg_dumpall -f data.sql"を使ってバックアップしたデータ 2 2022/09/19 08:14
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Windowsログイン後にnetstat -n...
-
テキストログインでstartxをし...
-
Linuxで起動時に実行させるには?
-
LinuxのMBRの初期化について
-
【SuSE】PostgreSQLの自動起動...
-
geditについて
-
gnomeのスタートアップの設定フ...
-
MacOSのLaunchAgentsってなんで...
-
rc.localについて
-
WMP10にて『RPC サーバーを利用...
-
Linuxマシン起動時にVNCサーバ...
-
Lucid Puppy 5.28で音がでない
-
「この項目のオーナーはrootで...
-
GNOMEがたちあがらなくなっちゃ...
-
Let’s Encrypt の自動更新をcro...
-
日曜日の4時にMySQLが終了する
-
telnetd, sshdが動いているかど...
-
Fedora9
-
linuxでシステム起動後、...
-
OSXのサウンドセット
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DNSサーバーの構築「no servers...
-
WMIを有効にする方法が分かりま...
-
Linuxサーバーは定期リブートを...
-
MacOSのLaunchAgentsってなんで...
-
batファイルでのプログラム起動順
-
インデザイン(InDesing)の開き...
-
namedが起動しない
-
telnetd, sshdが動いているかど...
-
Let’s Encrypt の自動更新をcro...
-
テキストログインでstartxをし...
-
apacheが起動しない
-
rsh コマンドでのパスワード入...
-
geditについて
-
httpd(Apache)でhttpsのポート...
-
FTPでユーザ名の表示
-
AIXルーティング情報について
-
VNCクライアントから管理者権限...
-
WMP10にて『RPC サーバーを利用...
-
rcpができない
-
Linux(redhat系)の実行ユーザ...
おすすめ情報