Linux システムエラー (errno) 解決ガイド

Linuxシステムコールやコマンド実行時のエラー番号(errno)の技術的解説。パーミッション、リソース制限、ファイルシステムの問題を扱います。

主要エラーコード一覧 (Major Codes)

Code 意味 対処法
EPERM (1) 操作不許可 root権限またはCapabilityが必要
ENOENT (2) ファイルなし パスの正誤とシンボリックリンク先を確認
EIO (5) I/Oエラー ハードウェア障害やFS破損の可能性。dmesg確認
EACCES (13) アクセス権限なし chmod / chown で権限修正
EEXIST (17) ファイル重複 ファイル削除またはリネーム
ENOSPC (28) 容量不足 不要ファイル削除またはボリューム拡張

まず確認すること(技術チェック)

1
詳細なエラーメッセージを確認しましたか?
Cmd: perror [errno]
Exp: エラー番号に対応するテキスト説明を確認
2
パーミッションと所有者を確認しましたか?
Cmd: ls -l [file]
Exp: 実行ユーザーに読み書き権限があること (r/w)
3
ディスク容量・iノード枯渇を確認しましたか?
Cmd: df -h / df -i
Exp: Use% が100%になっていないこと
4
プロセス制限を確認しましたか?
Cmd: ulimit -a
Exp: open files 等の値が上限に達していないこと
5
システムコールをトレースしましたか?
Cmd: strace -p [PID]
Exp: 失敗しているシステムコール引数と返り値(-1)の特定

その他のエラーコード一覧

Os

よくある質問 (FAQ)

rootでも書き込めない (Read-only file system)
ファイルシステムが破損し読み取り専用でマウントされています。mount -o remount,rw または fsck が必要です。

再発防止策

安易な chmod 777 は避け、ユーザーグループ(g+w)やACLを適切に使用してください。Logrotateを設定しディスク圧迫を防ぎましょう。