/kernel: file: table is full

2008 / 06 / 12 ( Thu )
この記事をはてなブックマークに登録する この記事をYahoo!ブックマークに登録する この記事をlivedoorクリップに登録する
FreeBSDのコンソールにこんなメッセージが。
/kernel: file: table is full


これは、カーネルのファイルディスクリプタの制限を越えてファイルが扱われたために出るメッセージ。

ディスクプリタとは。

ディスクリプタとは、ファイルや標準入出力をOSが識別するために使用する識別子の事で、
Unix/Linuxでは、
標準入力:0
標準出力:1
標準エラー出力:2
ファイル:3〜
となっています。

# make > make.LOG 2>&1

というふうによく使います。

現在の設定は、以下のコマンドで確認可能です。
# sysctl -A |grep maxfiles
kern.maxfiles: 2088
kern.maxfilesperproc: 1879

今回はファイルディスクリプタの制限数が2088になっていて、2088個以上のファイルを開こうとして、/kernel: file: table is fullと怒られてしまったようです。

設定変更は以下のコマンドを実行するか、
# sysctl -w kern.maxfiles=4096
kern.maxfiles: 2088 -> 4096


/etc/sysctl.conf に以下のように記述します。
▼/etc/sysctl.conf
kern.maxfiles=4096


サーバー構築・運用に関わるプロフェッショナルの方々の体験談や解説がいっぱい集まった、
こちら↓のページも合わせてご参照ください。
ブログランキング

テーマ:トラブル - ジャンル:コンピュータ

00:13:22 | Unix/Linux | トラックバック(0) | コメント(0) | page top↑
<<sendmailでsubmissionポートを使用したSMTP-Authの設定 | ホーム | バックアップは大切>>
コメント
コメントの投稿














管理者にだけ表示を許可する

トラックバック
トラックバックURL
http://iamse.blog110.fc2.com/tb.php/101-aafed799
この記事にトラックバックする(FC2ブログユーザー)
| ホーム |