system management
1748181 メンバー
3733 オンライン
108759 解決策
新規ポスト

lpスケジューラの停止要因

 
hajimek
頻繁なアドバイザー

lpスケジューラの停止要因

お世話になります。

現在、OSの障害を検知するプログラムを作成しており、lpスケジューラが稼動中(running)であるかをチェックするプログラムを作成しました。

しかし、仕様書に発生原因を記載することになりましたが、スケジューラが停止する要因が、保守員のオペレーションミス以外思いつきません。

未確認ですが、プリンタへのネットワークが遮断されるとスケジューラが自動的に停止されることがあると聞きましたが、これは本当でしょうか。

上記の経験がある方がいらっしゃいましたら状況を教えていただけませんでしょうか。

また、他の要因をご存知の方がいらっしゃいましたらご教授願えませんでしょうか。

宜しくお願いいたします。
7件の返信7
ishi-ishi
アドバイザー

lpスケジューラの停止要因

>未確認ですが、プリンタへのネットワークが遮断されるとスケジューラが自動的に停止されることがあると聞きましたが、これは本当でしょうか。

ちょっと、技術的なことはわからないので、私の経験ですが、ネットワーク遮断で、停止したことはありません。

私の会社では、lp印刷用のサーバがあり、そこに全ての拠点のプリンタが登録されています(200台くらいかな)。

lp印刷用のサーバが置いてある拠点のネットワーク工事を行ったとき(当然ネットワークは遮断されています)でも、lpスプーラが停止したことはありません。

テレコム担当者
尊敬されているコントリビューター

lpスケジューラの停止要因

>未確認ですが、プリンタへのネットワークが遮断されるとスケジューラが自動的に停止

>されることがあると聞きましたが、これは本当でしょうか。

これは都市伝説ですかね。

聞いたことはありません。

HP-UX の古いバージョンで lpshced が core dump する問題が

ありましたが(SIGSEGV)、これは lpsched のバグでした。

>現在、OSの障害を検知するプログラムを作成しており、lpスケジューラが稼動中

>(running)であるかをチェックするプログラムを作成しました。

ご存知だと思いますが、普通の管理では以下のコマンドを使います。

# lpstat -t

スケジューラは止まっています。

システムの指定省略時の出力先がありません。

エントリがありません。

# lpsched

スケジューラが実行しています。

# lpstat -t

スケジューラは動いています。

システムの指定省略時の出力先がありません。

エントリがありません。

yoshimura
レギュラーアドバイザー

lpスケジューラの停止要因

> プリンタへのネットワークが遮断されると

> スケジューラが自動的に停止されることが

> あると聞きましたが、これは本当でしょうか。

スケジューラが停止するのではなく、

プリンタへの出力が禁止(disable)状態に

なったと思います。

HP-UX の通常の lp 出力時に出力に関するエラーを

検出すると、"disable" コマンドでそのプリンタ

への出力は禁止状態になります。

(lp スクリプトによってその様な動作を

しないものもあるかも知れませんが...)

この状態では lpsched スケジューラは動作し

つづけるので、lp コマンドでの印刷要求は

受けつけてプリンターへの割り振りまでは

行なえます。

"disable" となったプリンターは管理者が

エラーを解消して "enable" コマンドで印刷

可能にしないと印刷が再開せず、リクエストが

溜まったままになります。

自動的には "enable" はされなかったので、

この点について管理上注意が必要だと思います。

hajimek
頻繁なアドバイザー

lpスケジューラの停止要因

皆様ご返答ありがとうございます。

ネットワーク遮断で変わるのはdisbleですか。

となると、スケジューラが停止する要因は、やはり

オペレータの操作以外はありえないのでしょうか。
yoshimura
レギュラーアドバイザー

lpスケジューラの停止要因

> スケジューラが停止する要因は、やはり

> オペレータの操作以外はありえないので

> しょうか。

印刷要求の操作を行なう /var(/var/spool/lp) の

File system Full とかが起きていたり、OS の

リソース不足(**** table full) などのような

状態で動作しようとするとエラーで停止する

ことは考えられると思います。

(lpsched に限ったことではありませんが。)
hajimek
頻繁なアドバイザー

lpスケジューラの停止要因

yoshimura様

ご返答ありがとうございます。

/varの下をパンクさせて印刷要求を出してみましたが、上手くスケジューラが停止できませんでした。

どうしても止まらない時は原因不明と記載しようかと

検討してみます。
hazelwood
信頼あるコントリビューター

lpスケジューラの停止要因

lpschedプロセスがいなくなる原因ですか。

思いつくものとしては、

・プロセステーブルの不足

(親のlpschedまでは終了しないと思う。)

・メモリの不足

(mallocに失敗するようなケースでは、停止すると思われる。どのような処理でmallocするかは分かりません。)

・ディスクの空き容量不足(テスト済みとのことですが。)

・lpschedの不具合

・オペレーションミス

といったところです。