20180504

付録B システムコールのリターンコード

【外部リンク】
http://itdoc.hitachi.co.jp/manuals/3020/30203K2843/AJSM0023.HTM
表B-1 システムコールのリターンコードに対する原因と対策

システムコール errno ニモニック 考えられる主な原因 対策
fork 11 EAGAIN プロセスの数が多過ぎるか,一時的なメモリー不足が発生しています。 再度実行しても繰り返し発生する場合は,不要なプロセスを停止させてください。
12 ENOMEM 次のどちらかの原因が考えられます。
スワップ領域または仮想メモリー不足のため,プロセスを新しく生成できません。
プロセスの数が多過ぎるか,または一部のプロセスが大量のメモリーを消費しています。
スワップ領域または仮想メモリーが足りない場合は,拡張してください。
これらを拡張できない場合は,不要なプロセスを停止させてください。
一部のプロセスが大量のメモリーを消費している場合は,該当するプロセスをいったん停止できないか検討してください。
malloc 12 ENOMEM 次のどちらかの原因が考えられます。
スワップ領域または仮想メモリー不足でプロセス固有メモリーを確保できません。
プロセスの数が多過ぎるか,または一部のプロセスが大量のメモリーを消費しています。
スワップ領域または仮想メモリーが足りない場合は,拡張してください。
これらを拡張できない場合は,不要なプロセスを停止させてください。
一部のプロセスが大量のメモリーを消費している場合は,該当するプロセスをいったん停止できないか検討してください。
22 EINVAL メモリー管理情報の不正を検知しました。 保守員に連絡してください。
mkdir 13 EACCESS アクセス権限が不正です。 組み込みDB運用ディレクトリ下の,ファイルに対するアクセス権限が正しいか確認してください。
28 ENOSPC ファイルシステムに十分な空き領域がありません。 空き領域を確保してください。
msgget 28 ENOSPC msgmni(メッセージキュー識別子数)の指定値が小さいです。
Windowsの場合,インストールドライブの容量,または使用リソース数が不足しています。 msgmniの該当するサーバマシン内で稼働する,全プログラムの所要量を見積もり,指定値を変更したあとに該当するサーバマシンを再起動してください。
Windowsの場合,インストールドライブに,共用メモリーサイズ以上の空き容量を確保してください。
msgrcv 22
36 EINVAL
EIDRM 組み込みDBが使用するメッセージキューが削除されました。
Windowsの場合,組み込みDB稼働中に,組み込みDBのインストールディレクトリ下の作業ファイルを削除したおそれがあります。 組み込みDBが異常終了していなければ,強制停止してください。その後,該当するサーバマシンを再起動してください(Windowsの場合,組み込みDBのサービスを再度開始してください)。
msgsnd 11 EAGAIN msgmni(メッセージキュー識別子の数),またはmsgtql(メッセージ数)の指定値が小さいです。 msgmni,msgtqlの該当するサーバマシン内で稼働する,全プログラムの所要量を見積もり,指定値を変更したあとに該当するサーバマシンを再起動してください。
22 EINVAL 組み込みDBが使用するメッセージキューが削除されました。 組み込みDBが異常終了していなければ,強制停止してください。その後,該当するサーバマシンを再起動してください。
open 2 ENOENT ファイル,またはディレクトリが見つかりません。
KFPO00107-Eメッセージの呼び出しモジュールにlogblib.cが出力されている場合は,メッセージテキストファイルが見つかりません。その場合,現在使用していない組み込みDBがOSに登録されている可能性があります。 現在使用していない組み込みDBをajsembdbunsetコマンドで削除してください。
6 ENXIO ファイルに対するアクセス権がありません。 デバイスが存在するか,またデバイスが有効化しているかどうかを確認してください。デバイスが有効化されていない場合は有効化してください。それ以外の原因の場合は,使用しているOSのマニュアルを参照し対策してください。
13 EACCES ファイルに対するアクセス権がありません。
対象とするファイル,ディレクトリ,または組み込みDB運用ディレクトリの権限を見直してください。
対象とするファイル,ディレクトリ,または組み込みDB運用ディレクトリに対して,実行者がアクセス権限を持っているか確認してください。
17 EEXIST 作成しようとしたファイルはすでに存在します。 ファイル名を変更して再度実行するか,または既存のファイルが不要であれば,削除してから再度実行してください。
23 ENFILE ファイルのオープン数がシステムの上限を超えました。
Windows版の場合,インストールドライブの容量が不足しています。 OSのオペレーティングシステムパラメタ(カーネルパラメタ)の,システムでオープンできるファイル最大数(HP-UXの場合はnfile,AIX 5Lの場合はmaxuproc*nofiles*固定ライセンス数,Linuxの場合はNR_FILEまたはfs.file-max)の指定値を大きくしてください。また,不要なプロセスやウィンドウがありましたら停止してください。
Windows版の場合,インストールドライブに,共用メモリーサイズ以上の空き容量を確保してください。
24 EMFILE 該当するプロセスでオープンしているファイル数が多過ぎます。
Windows版の場合,インストールドライブの容量が不足しています。 OSのオペレーティングシステムパラメタ(カーネルパラメタ)の,プロセスでオープンできるファイル数の最大(HP-UXの場合はmaxfiles,Solarisの場合はrlim_fd_cur,AIX 5Lの場合はnofiles,Linuxの場合はINR_OPEN)の値を大きくしてください。Windows版の場合,インストールドライブに,共用メモリーサイズ以上の空き容量を確保してください。
999 ENOENT Windowsの場合,組み込みDBの作業ファイルが破壊されているおそれがあります。 組み込みDBが停止しているのを確認してから,次に示すファイルをすべて削除して回復してください。
ただし,4以降のファイルはないことがあります。
組み込みDB運用ディレクトリ\uxpldir\spool\system\filmng.dat
組み込みDB運用ディレクトリ\uxpldir\spool\system\flg.dat
組み込みDB運用ディレクトリ\uxpldir\spool\system\shmmng.dat
組み込みDB運用ディレクトリ\spool\~pdatmode
%PDDIR%\spool\~pdipcid
組み込みDB運用ディレクトリ\spool\oslmqid
組み込みDB運用ディレクトリ\spool\oslsmid
組み込みDB運用ディレクトリ\spool\pdprcsts
組み込みDB運用ディレクトリ\spool\scdqid1
組み込みDB運用ディレクトリ\spool\scdqid2
組み込みDB運用ディレクトリ\tmp\pdommenv
組み込みDB運用ディレクトリ\uxpldir\spool\shm下の全ファイル
組み込みDB運用ディレクトリ\uxpldir\spool\system\semmng.dat
組み込みDB運用ディレクトリ\uxpldir\spool\system\msgmng.dat
これらのファイルを削除したあとに組み込みDBを開始する場合,エクスプローラなどの他アプリケーションで組み込みDB運用ディレクトリ\tmpにアクセスしたままの状態で,組み込みDBを開始しないでください。
semget 28 ENOSPC semmni(セマフォ識別子の数),またはsemmns(システム内のセマフォ数)の指定値が小さいです。
Windowsの場合,インストールドライブの容量が不足しています。 semmni,およびsemmnsの該当するサーバマシン内で稼働する,全プログラムの所要量を見積もり,指定値を変更したあとに該当するサーバマシンを再起動してください。
Windowsの場合,インストールドライブに,共用メモリーサイズ以上の空き容量を確保してください。
semop 22 EINVAL 組み込みDBが使用するセマフォが削除されました。
Windowsの場合,組み込みDB稼働中に,組み込みDBのインストールディレクトリ下の作業ファイルを削除したおそれがあります。 組み込みDBが異常終了していなければ,強制停止してください。その後,該当するサーバマシンを再起動してください(Windowsの場合,組み込みDBのサービスを再開始してください)。
shmat 12 ENOMEM 次のどれかの原因が考えられます。
使用できるリソース数が不足しています。共用メモリーをアタッチするプロセスの空間内に連続した空き領域を確保できない場合を含みます。
Windowsの場合,Windowsのレジストリーを参照中にエラーが発生しました。
Windowsの場合,組み込みDBのサービスが開始されていません(共用メモリーをページングファイルに割り当てている場合)。
メモリーを確保して再実行してください。
Windowsのレジストリーが破損しているおそれがあります。この場合,保守員に連絡してください。
組み込みDBのサービスが開始状態か確認してください。組み込みDBのサービスが停止状態の場合は,サービスを開始してください。
22 EINVAL 組み込みDBの共用メモリーがありません。
OS起動完了前(/etc/rc実行中)にコマンドを実行したことが考えられます。
Windowsの場合,組み込みDB稼働中に,組み込みDBのインストールディレクトリ下の作業ファイルを削除したおそれがあります。
または,組み込みDBの起動が完了していない状態でコマンドを実行したことが考えられます。 OS起動完了前にコマンドを実行したのであれば,OSの起動完了を待って再度コマンドを実行してください。組み込みDBが起動完了していない場合は,組み込みDBの起動が完了してからコマンドを実行してください。
Windowsの場合,組み込みDBが異常終了していなければ,強制停止してください。その後,組み込みDBのサービスを再開始してください。
shmdt 12 ENOMEM Windowsの場合,次のどちらかの原因が考えられます。
Windowsのレジストリーを参照中にエラーが発生しました。
組み込みDBのサービスが開始されていません(共用メモリーをページングファイルに割り当てている場合)。

Windowsのレジストリーが破損しているおそれがあります。この場合,保守員に連絡してください。
共用メモリーをページングファイルに割り当てている場合,組み込みDBのサービスが開始状態か確認してください。組み込みDBのサービスが停止状態の場合は,サービスを開始してください。
shmctl 1 EPERM オーナーではないので共用メモリーを処理できません。 KFPO00107-Eメッセージが出力されている場合は,そのメッセージを参照してください。
12 ENOMEM Windowsの場合,次のどちらかの原因が考えられます。
Windowsのレジストリーを参照中にエラーが発生しました。
組み込みDBのサービスが開始されていません(共用メモリーをページングファイルに割り当てている場合)。

Windowsのレジストリーが破損しているおそれがあります。この場合,保守員に連絡してください。
組み込みDBのサービスが開始状態か確認してください。組み込みDBのサービスが停止状態の場合は,サービスを開始してください。
shmget 12 ENOMEM UNIXの場合,要求されたサイズの共用メモリーを確保するだけのメモリー量がサーバマシンにはありません。
Windowsの場合は表B-2を参照してください。 UNIXの場合,サーバマシンのメモリー使用量を減らしてください。または,OSの実メモリーを増やしてください。
Windowsの場合は表B-2を参照してください。
22 EINVAL UNIXの場合,獲得しようとした共用メモリーのサイズが,OSのオペレーティングシステムパラメタ(カーネルパラメタ)のshmmaxの指定値を超えました。
Windowsの場合,組み込みDB稼働中に,組み込みDBのインストールディレクトリ下の作業ファイルを削除したおそれがあります。 UNIXの場合,OSのオペレーティングシステムパラメタ(カーネルパラメタ)のshmmaxの指定値を大きくしてください。指定を変更したあとに該当するサーバマシンを再起動してください。
組み込みDBサーバがWindows版の場合,組み込みDBが異常終了していなければ,強制停止してください。その後,組み込みDBのサービスを再開始してください。
28 ENOSPC UNIXの場合,共用メモリー識別子の数がOSの上限値を超えました。
Windowsの場合,インストールドライブの容量が不足しています。Windowsの場合,組み込みDBサーバがWindows版の場合,インストールドライブの容量が不足しています。また,共用メモリーとしてページングファイルを割り当てている場合は,組み込みDBのサービスが共用メモリーを管理するためのプロセス固有メモリーが不足していることが考えられます。 UNIXの場合,次に示す項目の中で対処できることを一つ以上してください。
同一マシン上にある共用メモリーセグメント数を減らしてください。
OSのオペレーティングシステムパラメタ(カーネルパラメタ)のshmmniの指定値を大きくしてください。
Windowsの場合,インストールドライブに,共用メモリーサイズ以上の空き容量を確保してください。
また,共用メモリーとしてページングファイルを割り当てている場合は,システム全体のメモリーの最大使用量を確認して,物理メモリーまたはページングファイルを拡張してください。
write 5 EIO 入出力エラーが発生しました。 OSやハードウェアの情報に従って対策してください。
14 EFAULT アクセスできない領域に書き込みしようとしました。書き込みしようとしたディスクが切り離されたおそれがあります。 系切り替えに伴うディスクの切り替え中の場合は,問題ありませんので無視してください。組み込みDB稼働中に誤ってディスクを切り離してしまった場合は,該当するファイルをバックアップから回復するか,初期化してから使用してください。それ以外の場合は,保守員に連絡してください。
27 EFBIG ファイルの大きさがシステム制限値を超えました。 組み込みDBシステム管理者,およびルートユーザーでのファイルサイズの制限値を組み込みDBシステムで使用するファイルより大きく,または無制限に変更してください。または使用するファイルサイズを小さくしてください。
28 ENOSPC ファイルシステムに十分な領域がありません。 空き領域を確保してください。
abort,creat,
execl,execle,
execlp,execv,
execvp,fopen,
fork,gethostbyaddr,gethostbyname,mmap,msgctl,msgget,msgrcv,msgsnd,open,
read,readv,
select,semctl,
semget,semop,shmat,
shmctl,shmdt,
shmget,signal,sigrelse,sigset,sigsetmask,sigvector,stat,system,write,writevなど 22 EINVAL Windows版の場合,メモリー不足が考えられます。 Windows版の場合,次に示す項目の中で対処できることをしてください。
サーバマシン内のデータベースの総容量を減らしてください。
システムの仮想メモリーの初期サイズと最大サイズを同じ値(固定値)にしてください。
表B-2 shmgetでエラーが発生した場合の対処方法(Windowsの場合)

共用メモリーの割り当て場所 要因 確認方法 対処方法
ファイルの場合 インストールディスクの空き容量が不足している場合 組み込みDBをインストールしたドライブに,十分な空き容量があるかを確認してください。 空き容量が少ないときは,不要なファイルを削除してください。
仮想メモリーの初期値と最大値の指定が異なるため,ディスクページングファイルを配置したディスクに空き容量がない場合 ディスクページングファイルを配置したディスクに空き容量があるかを確認してください。 ディスクに空き容量がないときは,仮想メモリーを再配置してください。仮想メモリーを再配置するときは,ドライブに連続した領域を作成するように,初期サイズと最大サイズを同じ値(固定値)にしてください。
メモリーが不足している場合 メモリーの使用量を確認してください。 仮想メモリーを拡張または再配置してください。仮想メモリーを拡張または再配置するときは,ドライブに連続した領域を作成するように,初期サイズと最大サイズを同じ値(固定値)にしてください。
ページングファイルがあるディスクに十分な空き容量があるかを確認してください。 仮想メモリーに拡張が必要ならば拡張してください。このとき,仮想メモリーの指定値は,初期値と最大値を同じ値に指定してください。
ページングファイルの場合 インストールディスクの空き容量が不足している場合 組み込みDBをインストールしたドライブに,十分な空き容量があるかを確認してください。 空き容量が少ないときは,不要なファイルを削除してください。
仮想メモリーの初期値と最大値の指定が異なるため,ディスクページングファイルを配置したディスクに空き容量がない場合 ディスクページングファイルを配置したディスクに空き容量があるかを確認してください。 ディスクに空き容量がないときは,仮想メモリーを再配置してください。仮想メモリーを再配置するときは,ドライブに連続した領域を作成するように,初期サイズと最大サイズを同じ値(固定値)にしてください。
メモリーが不足している場合 メモリーの使用量を確認してください。 仮想メモリーを拡張または再配置してください。仮想メモリーを拡張または再配置するときは,ドライブに連続した領域を作成するように,初期サイズと最大サイズを同じ値(固定値)にしてください。
ページングファイルがあるディスクに十分な空き容量があるかを確認してください。 仮想メモリーに拡張が必要ならば拡張してください。このとき,仮想メモリーの指定値は,初期値と最大値を同じ値に指定してください。
組み込みDBのサービスが開始していない場合 組み込みDBのサービスが開始状態かどうかを確認してください。 組み込みDBのサービスが停止状態のときはサービスを開始してください。

--

注目の投稿

cURL error 60: SSL certificate problem: unable to get local issuer certificate

cURL error 60: SSL certificate problem: unable to get local issuer certificate 更新失敗: ダウンロードに失敗しました。 cURL error 60: SSL certificate problem: ...

人気の投稿