Next: , Up: Troubleshooting


F.1 エラーメッセージの部分的一覧

これは cvs で起こるかもしれないエラー・メッセージの部分的な一覧で す。完全な一覧ではありません—cvs はたくさん、たくさんのエラー・ メッセージを印字する能力があり、しばしば一部分はオペレーティング・シス テムにより提供されます。しかし、ここでの意図はよくあるもの、混乱する可 能性のあるエラー・メッセージの、両方もしくはどちらかにあてはまるものの 一覧を挙げることです。

メッセージはアルファベット順ですが、‘cvs update: ’ のような前置き の文章は順番にするときには省かれています。

この一覧は古いバージョンの cvs で印字されるメッセージがある場合も あります (使用者は特定の時にどのバージョンの cvs を使用しているか を必ずしも知らないというのが理由の一つです)。

cvs command: authorization failed: server host rejected access
これは pserver のサーバに接続しようとして、それが特定の理由を教えるこ となく認証を拒否することを選んだときの一般的な反応です。指定された使用 者名とパスワードが正しいことと、指定された CVSROOTinetd.conf の ‘--allow-root’ で使用可になっているこを確認 してください。
file:line: Assertion 'text' failed
システムによってこのメッセージの正確な形式は異なります。これは cvs のバグを示し、BUGS で説明されているように扱うことができ ます。
cvs command: conflict: removed file was modified by second party
このメッセージは、あなたがファイルを消去し、誰か別の人がそれを修正した ということを示します。衝突を解消するために、まず ‘cvs add file’ を実行します。それが望まれていれば、他の人々の修正を見てま だそれを消したいかどうかを決定します。消したくなければ、ここで止めます。 消去したければ、 ‘cvs remove file’ を実行して、削除を格納し ます。
cannot change permissions on temporary directory
          Operation not permitted

このメッセージは、Red Hat Linux 3.0.3 と 4.1 でクライアント/サーバのテ スト一式を実行しているときいに、再現不可能な方法でときどき発生しました。 我々は何がそれを起こしたのか、また linux (もしくは、このマシンそのもの!) に特有かどうかも分かりません。他の unix でも問題が発生した場合は、おそ らく ‘Operation not permitted’ は ‘Not owner’ や当のシステム が unix の EPERM エラーで使用している他のものになっているでしょ う。追加の情報があれば、BUGS で説明されているように我々に知らせ てください。もし cvs を使用していてこのエラーを経験したときは、そ れを発生させた操作をもう一度繰り返すとちゃんと動作するでしょう。

cvs [server aborted]: Cannot check out files into the repository itself
このメッセージの明らかな原因は (特にクライアント/サーバでない cvs のときは)、cvs のルートが例えば /usr/local/cvsroot で、 /usr/local/cvsroot/test のようなサブディレクトリにファイルを取 り出そうとしたことです。しかしながら、サーバの一時ディレクトリがルート のサブディレクトリに設定されている (これも許可されていません) というよ り微妙な場合もあります。これが問題の原因であるなら、一時ディレクトリを 別のところに設定してください。例えば、/var/tmp に。一時ディレク トリの設定のしかたは、Environment variablesTMPDIR を 参照してください。
cannot open CVS/Entries for reading: No such file or directory
これは一般的に cvs の内部エラーを示し、他の cvs のバグと同様 に扱うことがきます (see BUGS)。たいていの場合、対策があります—正 確な方法は状況に依りますが、おそらく見付け出すことができるでしょう。
cvs [init aborted]: cannot open CVS/Root: No such file or directory
このメッセージは無害です。もし他のエラーと一緒にでなければ、操作は成功 しています。現在のバージョンの cvs では出ないはずですが、cvs 1.9 以前のために説明されています。
cvs [checkout aborted]: cannot rename file file to CVS/,,file: Invalid argument
このメッセージは Solaris 2.5 上での CVS 1.9 でときどき発生することが報 告されています。原因は不明です。原因についてさらに知っていれば、 BUGS で説明されているように我々に知らせてください。
cvs [command aborted]: cannot start server via rcmd
この残念ながらあまり詳しくないメッセージは、cvs のクライアントを 実行していてサーバとの接続に問題があったときに cvs 1.9 が印字しま す。現在のバージョンの cvs はもっと詳しいエラーメッセージを印字す るようになっています。クライアントを実行しようとはしていないのにこのメッ セージが出たときは、おそらく Repository で説明されている方法で :local: を指定することを忘れたのでしょう。
ci: file,v: bad diff output line: Binary files - and /tmp/T2a22651 differ
CVS 1.9 以前は rcs が正しくインストールされていないときにバイナリ ファイルを格納しようとしたときにこのメッセージを印字します。rcs の配布とともに取得している指示をもう一度読んで、cvs 配布の install ファイルを読んでください。代替法として、rcs を経由し ないで自分自身でファイルを格納する現在のバージョンの cvs に変更す ることもできます。
cvs checkout: could not check out file
CVS 1.9 では、これは co プログラム (rcs プログラムの一部で す) が失敗の値を返したということです。他のエラーメッセージがその前にあ るはずですが、別のエラーメッセージなしに発生することも確認されており、 原因はよくわかっていません。現在のバージョンの CVS は co を実行 しないので、このメッセージが別のエラーメッセージとともに現れなければ、 それは間違いなく CVS のバグです (see BUGS)。
cvs [update aborted]: unexpected EOF reading file,v
EOF in key in RCS file’ を参照。
cvs [login aborted]: could not find out home directory
これはホームデレクトリの位置を特定するために CVS が使用する環境変数を 設定する必要があるということです。Environment variablesHOME, HOMEDRIVE, HOMEPATH の議論を参照してくださ い。
cvs update: could not merge revision rev of file: No such file or directory
CVS 1.9 以前は rcsmerge プログラムを見つけるときに問題が発生し たときにこのメッセージを印字します。それが PATH にあることを確 認するか、外部 rcsmerge プログラムを必要としない現在のバージョ ンの CVS に更新してください。
cvs [update aborted]: could not patch file: No such file or directory
これは patch プログラムの探索に問題があったということです。それ が PATH 上にあるとを確認してください。メッセージの外観とは違っ て、file を見つけるかどうかについて言っているのではないこ とに注意してください。クライアントとサーバが現在のバージョンの cvs を実行しているなら、外部 patch プログラムは必要ではなく、この メッセージを見ることはないでしょう。しかし、クライアントかサーバが cvs 1.9 を実行していれば、patch が必要です。
cvs update: could not patch file; will refetch
これは、何らかの理由により、クライアントはサーバが送った patch を適用 できなかったということです。メッセージは心配するようなものではありませ ん。これは、patch の適用ができなかったというのはちょっと作業を遅らせる だけで、cvs が実行することには影響しないからです。
dying gasps from server unexpected
cvs 1.9.18 以前のサーバにはこれを発生する既知のバグがあります。私 は、‘-t’ 広域オプションを使用しているときに再現可能です。もし興味 があれば、それは Andy Piper の1997年11月4日の src/filesubr.c への変更 で修正されました。このメッセージが出たときは、おそらく失敗した操作をた だもう一度試すことができます。また、この原因に関して情報を発見したなら、 BUGS に書かれているように我々に知らせてください。
end of file from server (consult above messages if any)
このメッセージの一番多い原因は、外部 rsh プログラムを使用してい て、それがエラーを出して終了するというものです。この場合 rsh プログラムは、上のメッセージの前にメッセージを印字しているはずです。 cvs のクライアントとサーバの設定の情報は Remote repositories を参照してください。


cvs commit: Executing 'mkmodules'
これはリポジトリが cvs 1.8 より前のバージョンの cvs で設定さ れているということです。cvs 1.8 以降を使っていると、上記のメッセー ジの前に以下のものがでます。
          cvs commit: Rebuilding administrative file database

両方のメッセージが表示されれば、データベースは2回再構築されていて、こ れは不必要ですが、無害です。重複を避けたくて、cvs 1.7 以前を使っ ていないなら、modules ファイルにある全ての -i mkmodules を消してください。modules ファイルの情報は modules を参照 してください。

missing author
普通これは使用者名が空の RCS ファイルを作成したときに発生します。CVS は、間違って author 部分に値のない不正な RCS ファイルを作成します。解 決策は、使用者名が空でないことを確認して、RCS フィルを再作成することで す。
*PANIC* administration files missing
これは普通は CVS という名前のディレクトリがあるけれど、CVS が CVS ディ レクトリに置く管理ファイルがないということです。もし問題が CVS 以外の 何らかの機構で CVS ディレクトリを作ったというものであれば、CVS 以外の 名前を使ってください。もしそうでなければ、それは CVS のバグを示してい ます (see BUGS)。
rcs error: Unknown option: -x,v/
このメッセージの後には rcs の使用法のメッセージが続きます。それは 古いバージョンの rcs (おそらくオペレーティングシステムと共に提供 されたものでしょう) があるということです。CVS は rcs バージョン 5 以降でのみ動作します。
cvs [server aborted]: received broken pipe signal
これは、cvs かそれが実行されているシステムの追跡が困難なバグ (良 く判っていません—我々はまだ追いかけていません!) により発生するようで す。cvs コマンドが完了した後でのみ発生するようで、メッセージは無 視できます。しかしながら、その原因に関する情報を発見したなら、 BUGS で説明されているように我々に知らせてください。
Too many arguments!
このメッセージは普通は cvs のソース配布の contrib ディレク トリにある log.pl スクリプトにより印字されます。cvs のバー ジョンには、log.pl が既定の cvs インストールに含まれている ものもあります。log.pl スクリプトは loginfo 管理ファイル から呼ばれます。loginfo で渡されている引数があなたのバージョン の log.pl が期待するものとあっているか調べてください。特に、 cvs 1.3 以前の log.pl はログファイルを引数として期待します が、cvs 1.5 以降の log.pl はログファイルは ‘-f’ オプ ションで指定されることを期待します。もちろん、log.pl が必要でな ければ、loginfo 中で註釈にして、使用しないようにすることができ ます。
cvs [login aborted]: unrecognized auth response from server
このメッセージは普通はサーバが適切に設定されていないことを意味します。 例えば、inetd.conf が存在しない cvs 実行ファイルを指していると きです。これをデバッグするためには、inetd が書くログファイル (/var/log/messages やあなたのシステムの inetd が使うその他のも の) を見つけてください。詳細は ConnectionPassword authentication server 参照。
cvs commit: Up-to-date check failed for `file'
これはあなたが最後に cvs update を実行した後に誰かが変更を格納 したということです。ですから、cvs commit を継続する前に cvs update をする必要があります。CVS はあなたのした変更と他の人 がした変更をマージします。衝突が発見されなれば、‘M cacErrCodes.h’ のように報告され、cvs commit を実行する準備が整っています。もし 衝突が発見されれば、その由を印字し、‘C cacErrCodes.h’ と報告され、 手で衝突を解消する必要があります。この過程の詳細は Conflicts example を参照してください。
Usage: diff3 [-exEX3 [-i | -m] [-L label1 -L label3]] file1 file2 file3
          Only one of [exEX3] allowed

これは diff3rcsmerge のインストールに問題があること を示しています。特に rcsmerge は GNU diff3 を探すようにコンパイ ルされているけれど、代わりに unix の diff3 が使われています。一番簡単 な解決法は外部の rcsmergediff3 プログラムに頼らない 現在のバージョンの cvs に更新することです。

warning: unrecognized response `text' from cvs server
もし text が有効な応答 (‘ok’ のようなもの) で、続きに余分な キャリッジリターンがあると (多くのシステムではこれはメッセージの2番目 の部分が1番目の部分を上書きします)、おそらく、既定では透過的なデータス トリームを提供しない、多くの unix でない rsh のバージョンで ‘:ext:’ 接続方法を使用としているのでしょう。その様な場合はたぶん ‘:ext:’ の代わりに ‘:server:’ を試みるのが良いでしょう。 text が何か他のものなら、CVS サーバに問題があることを表します。 CVS サーバを設定するための指示を見てインストールを再度確認してください。
cvs commit: [time] waiting for user's lock in directory
これは普通のメッセージであり、エラーではありません。詳細は Concurrency 参照。
cvs commit: warning: editor session failed
これは cvs が使用しているエディタが非零の値で終了したということで す。vi のバージョンにはファイルの編集に問題がなかったときでさえそうす るものがあります。もしそうなら、環境変数 CVSEDITOR を以下のよう な小さなスクリプトを指すようにしてください:
          #!/bin/sh
          vi $*
          exit 0