15.16. errno --- 標準の errno システムシンボル¶
このモジュールから標準の errno システムシンボルを取得することができます。個々のシンボルの値は errno に対応する整数値です。これらのシンボルの名前は、 linux/include/errno.h から借用されており、かなり網羅的なはずです。
- 
errno.errorcode¶ errno 値を背後のシステムにおける文字列表現に対応付ける辞書です。例えば、
errno.errorcode[errno.EPERM]は'EPERM'に対応付けられます。
数値のエラーコードをエラーメッセージに変換するには、 os.strerror() を使ってください。
以下のリストの内、現在のプラットフォームで使われていないシンボルはモジュール上で定義されていません。定義されているシンボルだけを挙げたリストは errno.errorcode.keys() として取得することができます。取得できるシンボルには以下のようなものがあります:
- 
errno.EPERM¶ 許可されていない操作です (Operation not permitted)
- 
errno.ENOENT¶ ファイルまたはディレクトリがありません (No such file or directory)
- 
errno.ESRCH¶ 指定したプロセスが存在しません (No such process)
- 
errno.EINTR¶ 割り込みシステムコールです (Interrupted system call)
- 
errno.EIO¶ I/O エラーです (I/O error)
- 
errno.ENXIO¶ そのようなデバイスまたはアドレスはありません (No such device or address)
- 
errno.E2BIG¶ 引数リストが長すぎます (Arg list too long)
- 
errno.ENOEXEC¶ 実行形式にエラーがあります (Exec format error)
- 
errno.EBADF¶ ファイル番号が間違っています (Bad file number)
- 
errno.ECHILD¶ 子プロセスがありません (No child processes)
- 
errno.EAGAIN¶ 再試行してください (Try again)
- 
errno.ENOMEM¶ 空きメモリがありません (Out of memory)
- 
errno.EACCES¶ 許可がありません (Permission denied)
- 
errno.EFAULT¶ 不正なアドレスです (Bad address)
- 
errno.ENOTBLK¶ ブロックデバイスが必要です (Block device required)
- 
errno.EBUSY¶ そのデバイスまたはリソースは使用中です (Device or resource busy)
- 
errno.EEXIST¶ ファイルがすでに存在します (File exists)
- 
errno.EXDEV¶ デバイスをまたいだリンクです (Cross-device link)
- 
errno.ENODEV¶ そのようなデバイスはありません (No such device)
- 
errno.ENOTDIR¶ ディレクトリではありません (Not a directory)
- 
errno.EISDIR¶ ディレクトリです (Is a directory)
- 
errno.EINVAL¶ 無効な引数です (Invalid argument)
- 
errno.ENFILE¶ ファイルテーブルがオーバフローしています (File table overflow)
- 
errno.EMFILE¶ 開かれたファイルが多すぎます (Too many open files)
- 
errno.ENOTTY¶ タイプライタではありません (Not a typewriter)
- 
errno.ETXTBSY¶ テキストファイルが使用中です (Text file busy)
- 
errno.EFBIG¶ ファイルが大きすぎます (File too large)
- 
errno.ENOSPC¶ デバイス上に空きがありません (No space left on device)
- 
errno.ESPIPE¶ 不正なシークです (Illegal seek)
- 
errno.EROFS¶ リードオンリーのファイルシステムです (Read-only file system)
- 
errno.EMLINK¶ リンクが多すぎます (Too many links)
- 
errno.EPIPE¶ 壊れたパイプです (Broken pipe)
- 
errno.EDOM¶ 数学引数が関数の定義域を越えています (Math argument out of domain of func)
- 
errno.ERANGE¶ 表現できない数学演算結果になりました (Math result not representable)
- 
errno.EDEADLK¶ リソースのデッドロックが起きます (Resource deadlock would occur)
- 
errno.ENAMETOOLONG¶ ファイル名が長すぎます (File name too long)
- 
errno.ENOLCK¶ レコードロッキングが利用できません (No record locks available)
- 
errno.ENOSYS¶ 実装されていない機能です (Function not implemented)
- 
errno.ENOTEMPTY¶ ディレクトリが空ではありません (Directory not empty)
- 
errno.ELOOP¶ これ以上シンボリックリンクを追跡できません (Too many symbolic links encountered)
- 
errno.EWOULDBLOCK¶ 操作がブロックします (Operation would block)
- 
errno.ENOMSG¶ 指定された型のメッセージはありません (No message of desired type)
- 
errno.EIDRM¶ 識別子が除去されました (Identifier removed)
- 
errno.ECHRNG¶ チャネル番号が範囲を超えました (Channel number out of range)
- 
errno.EL2NSYNC¶ レベル 2 で同期がとれていません (Level 2 not synchronized)
- 
errno.EL3HLT¶ レベル 3 で終了しました (Level 3 halted)
- 
errno.EL3RST¶ レベル 3 でリセットしました (Level 3 reset)
- 
errno.ELNRNG¶ リンク番号が範囲を超えています (Link number out of range)
- 
errno.EUNATCH¶ プロトコルドライバが接続されていません (Protocol driver not attached)
- 
errno.ENOCSI¶ CSI 構造体がありません (No CSI structure available)
- 
errno.EL2HLT¶ レベル 2 で終了しました (Level 2 halted)
- 
errno.EBADE¶ 無効な変換です (Invalid exchange)
- 
errno.EBADR¶ 無効な要求記述子です (Invalid request descriptor)
- 
errno.EXFULL¶ 変換テーブルが一杯です (Exchange full)
- 
errno.ENOANO¶ 陰極がありません (No anode)
- 
errno.EBADRQC¶ 無効なリクエストコードです (Invalid request code)
- 
errno.EBADSLT¶ 無効なスロットです (Invalid slot)
- 
errno.EDEADLOCK¶ ファイルロックにおけるデッドロックエラーです (File locking deadlock error)
- 
errno.EBFONT¶ フォントファイル形式が間違っています (Bad font file format)
- 
errno.ENOSTR¶ ストリーム型でないデバイスです (Device not a stream)
- 
errno.ENODATA¶ 利用可能なデータがありません (No data available)
- 
errno.ETIME¶ 時間切れです (Timer expired)
- 
errno.ENOSR¶ ストリームリソースを使い切りました (Out of streams resources)
- 
errno.ENONET¶ 計算機はネットワーク上にありません (Machine is not on the network)
- 
errno.ENOPKG¶ パッケージがインストールされていません (Package not installed)
- 
errno.EREMOTE¶ 対象物は遠隔にあります (Object is remote)
- 
errno.ENOLINK¶ リンクが切られました (Link has been severed)
- 
errno.EADV¶ Advertise エラーです (Advertise error)
- 
errno.ESRMNT¶ Srmount エラーです (Srmount error)
- 
errno.ECOMM¶ 送信時の通信エラーです (Communication error on send)
- 
errno.EPROTO¶ プロトコルエラーです (Protocol error)
- 
errno.EMULTIHOP¶ 多重ホップを試みました (Multihop attempted)
- 
errno.EDOTDOT¶ RFS 特有のエラーです (RFS specific error)
- 
errno.EBADMSG¶ データメッセージではありません (Not a data message)
- 
errno.EOVERFLOW¶ 定義されたデータ型にとって大きすぎる値です (Value too large for defined data type)
- 
errno.ENOTUNIQ¶ 名前がネットワーク上で一意でありません (Name not unique on network)
- 
errno.EBADFD¶ ファイル記述子の状態が不正です (File descriptor in bad state)
- 
errno.EREMCHG¶ 遠隔のアドレスが変更されました (Remote address changed)
- 
errno.ELIBACC¶ 必要な共有ライブラリにアクセスできません (Can not access a needed shared library)
- 
errno.ELIBBAD¶ 壊れた共有ライブラリにアクセスしています (Accessing a corrupted shared library)
- 
errno.ELIBSCN¶ a.out の .lib セクションが壊れています (.lib section in a.out corrupted)
- 
errno.ELIBMAX¶ リンクを試みる共有ライブラリが多すぎます (Attempting to link in too many shared libraries)
- 
errno.ELIBEXEC¶ 共有ライブラリを直接実行することができません (Cannot exec a shared library directly)
- 
errno.EILSEQ¶ 不正なバイト列です (Illegal byte sequence)
- 
errno.ERESTART¶ 割り込みシステムコールを復帰しなければなりません (Interrupted system call should be restarted)
- 
errno.ESTRPIPE¶ ストリームパイプのエラーです (Streams pipe error)
- 
errno.EUSERS¶ ユーザが多すぎます (Too many users)
- 
errno.ENOTSOCK¶ 非ソケットに対するソケット操作です (Socket operation on non-socket)
- 
errno.EDESTADDRREQ¶ 目的アドレスが必要です (Destination address required)
- 
errno.EMSGSIZE¶ メッセージが長すぎます (Message too long)
- 
errno.EPROTOTYPE¶ ソケットに対して不正なプロトコル型です (Protocol wrong type for socket)
- 
errno.ENOPROTOOPT¶ 利用できないプロトコルです (Protocol not available)
- 
errno.EPROTONOSUPPORT¶ サポートされていないプロトコルです (Protocol not supported)
- 
errno.ESOCKTNOSUPPORT¶ サポートされていないソケット型です (Socket type not supported)
- 
errno.EOPNOTSUPP¶ 通信端点に対してサポートされていない操作です (Operation not supported on transport endpoint)
- 
errno.EPFNOSUPPORT¶ サポートされていないプロトコルファミリです (Protocol family not supported)
- 
errno.EAFNOSUPPORT¶ プロトコルでサポートされていないアドレスファミリです (Address family not supported by protocol)
- 
errno.EADDRINUSE¶ アドレスは使用中です (Address already in use)
- 
errno.EADDRNOTAVAIL¶ 要求されたアドレスを割り当てできません (Cannot assign requested address)
- 
errno.ENETDOWN¶ ネットワークがダウンしています (Network is down)
- 
errno.ENETUNREACH¶ ネットワークに到達できません (Network is unreachable)
- 
errno.ENETRESET¶ リセットによってネットワーク接続が切られました (Network dropped connection because of reset)
- 
errno.ECONNABORTED¶ ソフトウェアによって接続が終了されました (Software caused connection abort)
- 
errno.ECONNRESET¶ 接続がピアによってリセットされました (Connection reset by peer)
- 
errno.ENOBUFS¶ バッファに空きがありません (No buffer space available)
- 
errno.EISCONN¶ 通信端点がすでに接続されています (Transport endpoint is already connected)
- 
errno.ENOTCONN¶ 通信端点が接続されていません (Transport endpoint is not connected)
- 
errno.ESHUTDOWN¶ 通信端点のシャットダウン後は送信できません (Cannot send after transport endpoint shutdown)
- 
errno.ETOOMANYREFS¶ 参照が多すぎます: 接続できません (Too many references: cannot splice)
- 
errno.ETIMEDOUT¶ 接続がタイムアウトしました (Connection timed out)
- 
errno.ECONNREFUSED¶ 接続を拒否されました (Connection refused)
- 
errno.EHOSTDOWN¶ ホストはシステムダウンしています (Host is down)
- 
errno.EHOSTUNREACH¶ ホストへの経路がありません (No route to host)
- 
errno.EALREADY¶ すでに処理中です (Operation already in progress)
- 
errno.EINPROGRESS¶ 現在処理中です (Operation now in progress)
- 
errno.ESTALE¶ 無効な NFS ファイルハンドルです (Stale NFS file handle)
- 
errno.EUCLEAN¶ 構造のクリーニングが必要です (Structure needs cleaning)
- 
errno.ENOTNAM¶ XENIX 名前付きファイルではありません (Not a XENIX named type file)
- 
errno.ENAVAIL¶ XENIX セマフォは利用できません (No XENIX semaphores available)
- 
errno.EISNAM¶ 名前付きファイルです (Is a named type file)
- 
errno.EREMOTEIO¶ 遠隔側の I/O エラーです (Remote I/O error)
- 
errno.EDQUOT¶ ディスククオータを超えました (Quota exceeded)
