2014-06-10

Grunt が「Warning: watch ENOSPC」と警告を出した時の対処

現在、とても優秀な前任者から引き継いだ案件にとりかかっています。
この案件の中で彼がCSSやJavaScript の結合や軽量化をしてくれる「Grunt」と呼ばれる技術を使っていたので私もトライしてみたのですが、きちんとインストールしたにも関わらず「Warning: watch ENOSPC」という警告を多発していたので対処法を探ってみました。




[最終結論] ファイルを監視しておける数には限界が設けられているので、この数が足りなくなると警告が出される。


では、まずは私のPC環境から。

OS: Ubuntu 14.04
Grunt: 0.4.5

[エラーが出た状況] Grunt watch を使ってファイルを監視しようとすると以下のように毎回表示されていました。



少し Google で探ってみると以下のページにそのものズバリの回答と対処法が説明されていました。



これを読む限り、ユーザーが監視しておけるファイル数には限界が設けられていて、例えばDropBoxなどを利用しているとこの初期値を使い果たしてしまう。
そのためGruntがエラーを返していた、ということらしいです。


では、どのようにすればこの問題に対処できるか、というと・・・?


コマンドラインで、


echo fs.inotify.max_user_watches=100000 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p


を実行すればOKです。

※ちなにみ参照ページとは違い100,000という数に変更しています。


この命令は先ほど説明したファイル監視できる数を増やす命令文になります。
これを実行してから「Grunt watch」をすると、、、?




はい!うまく起動されてファイルが変更されるのを待ってくれています。


ということで今回は短い記事でしたが、私の場合はDropBoxがその原因になるという思いがけないものでしたので今回のTipをご紹介しました。

お疲れ様でした。m_ _m



Thanks, KDS!
Your tip helped me at once!

0 件のコメント:

コメントを投稿