ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

qmailコミュの[質問] 451 qq trouble creating files in queue (#4.3.0) について

  • mixiチェック
  • このエントリーをはてなブックマークに追加
初めまして。
お世話になります。

首記の件ですが、qmailにパッチをあててコンパイルしなおした後、
発生するようになりました。
具体的には、
qmail-1.03(FreeBSD5.2上)で稼動中だったqmailのプロセスを
停止、/var/qmail/binを丸ごとバックアップしてから
qmail-1.03-mfcheck.3.patchを宛てて
make setup。

何事もなく終了したのですが、サービスを上げても
うまく上がらないので、全ての上がったqmailプロセスを
killして、バックアップからbinディレクトリを復旧しました。

これで、元通りと思って安心していたのですが、
テスト配送しようとすると、SMTPで首記のエラーが出てしまいます。

検索でエラーメッセージを調べてみたのですが、
めぼしい情報には出会えず、パーミション等も一見したところ
問題はありません。

解決法について、なにかご存知の方がいらっしゃいましたら、
真にお手数ですが、ご教示願います。

コメント(8)

メッセージの示す通り、キューディレクトリを再作成されてみてはいかがでしょうか。
それでうまく行けば、リネームした古いキューディレクトリに残っているファイルがもし有れば、それを手動配送すれば宜しいかと。
kema|д゚)様、有難う御座います。

キューディレクトリをバックアップしてから、
所有権・権限などメモしてから
元のを削除、再作成の後サービスを起動しなおして
様子を見ましたが、ダメでした。

SMTPの段階でエラー出てる所為か、ログに
それらしいエラーが記録されていないのがナゾです。
もう少し調べてみます。
解決しました。
..というか、当面のところ解消したように見えてるだけ?

google検索で出てきた
英文読むのが面倒なので後回しにしてた
ページに、それらしい事が書いてあり
試してみた所ズバリ解消しました。

/var/qmail/bin/qmail-queue
の権限を
chmod 4755 /var/qmail/bin/qmail-queue
にて変更し再起動したところ、
俄かに配送を再開しました。

今のところ経過を見る限りでは問題なさそうです。
有難う御座いました。
今、qmail.cを読んでいたのですが、

case 62: return "Zqq trouble creating files in queue (#4.3.0)";

となっていたので、エラーコード62でgrepした所、qmail-queue.cの中で、

if (chdir("queue") == -1) die(62);

となってました。qmail-queueがchdir出来ないと言ってる(…と思う)ようなので、その辺の問題ぽいですね。
チマチマとソース読んで>>4を書いている間に解決されたようで何よりです。
kema|д゚) 様、お手数をお掛けしました。
やっとキモチに余裕が出てきたので
私の方でもソースを見ていました。

>となってました。qmail-queueがchdir出来ないと言ってる(…と思う)ようなので、その辺の問題ぽいですね。

..の様ですね。

恐らく、通常makeしたときに/var/qmail/bin以下の
実行ファイルについて自動的に与えられていた権限を
binディレクトリのバックアップの
単純コピーで書き戻した所為で
./queueディレクトリ以下の権限と
つじつまが合わなくなってしまったようです。

他の実行ファイルは通常どの様になっているのでしょうか?
#普段そこまで興味を持って見てなかったので、
 こういう目に遭うまで、気にもしてませんでした..。
何だか初心者の私がでしゃばってしまい大変申し訳ありません。大きな勘違いをしたりしていなければいいのですが…(自信無し)。

単純コピーでバックアップを取る時は、ファイル/ディレクトリのアクセス権やオーナー、フラグに注意しないとはまりますね。
私も去年、足掛け二週間ほどホテルに泊まりこんで(遠方だったので)古いSolarisをいじってきた事がありますが、その時も、Systemがデフォルトで持っているcpやmvコマンドが、属性を保ったままコピーなりを行う、というオプションを持っていなくて最初苦労した覚えがあります。その時は結局GNU toolsを入れて対処しましたが。
ご存知の通り、qmailは、各種動作によって別の権限で動作するように出来ているので(今回問題になったキューイングは"qmailq"ですね)、cpの際の"-p"オプション付け忘れにより、キューイングの際にディレクトリが読めず今回のエラーになった訳でしょうね。

>他の実行ファイルは通常どの様になっているのでしょうか?
/var/qmail/bin/以下のfileでは、qmail-queueだけ、権限がqmailq:qmailとなっています。当然suidビットが立ってます。
>何だか初心者の私がでしゃばってしまい大変申し訳ありません。大きな勘違いをしたりしていなければいいのですが…

いえいえ、一つでも可能性を試せたので感謝しております。

>単純コピーでバックアップを取る時は、ファイル/ディレクトリのアクセス権やオーナー、フラグに注意しないとはまりますね。
当にその通りです。
ナメとりました。
痛い目に遭いましたので、次は充分気をつけたいと思います。
何しろ、元々のパッチ当て再コンパイルも猶予時間が無くて
あわただしくやってる中の障害発生だったので、
頭がトンどりました。

なんにせよ、ありがとう御座いました。


>/var/qmail/bin/以下のfileでは、qmail-queueだけ、権限がqmailq:qmailとなっています。当然suidビットが立ってます。

これも、ありがとう御座いました。
確認できました。
これで心置きなく、復旧宣言できます。
(多謝)

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

qmail 更新情報

qmailのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。