web-dev-qa-db-ja.com

エラー:サービスのみを開始/停止するときにデバイスにスペースが残っていません

私はすでにこのような複数の質問があることを知っていますが、それらの答えのどれも私の問題に当てはまりません。

そこで、Debian 7.7からDebian 8.1にアップグレードしようとしました。すべて正常に動作しますが、特定の操作はError: No space left on deviceを報告します。

df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       443G   28G  393G   7% /
udev             10M     0   10M   0% /dev
tmpfs           1.6G  8.7M  1.6G   1% /run
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
tmpfs           795M     0  795M   0% /run/user/0

df -i

Filesystem       Inodes  IUsed    IFree IUse% Mounted on
/dev/sda1      29450240 419083 29031157    2% /
udev            1015256    338  1014918    1% /dev
tmpfs           1017372    502  1016870    1% /run
tmpfs           1017372      1  1017371    1% /dev/shm
tmpfs           1017372      7  1017365    1% /run/lock
tmpfs           1017372     13  1017359    1% /sys/fs/cgroup
tmpfs           1017372      4  1017368    1% /run/user/0

エラーメッセージの例:

$: service Apache2 restart
Error: No space left on device

$: /etc/init.d/mysql restart
[....] Restarting mysql (via systemctl): mysql.serviceError: No space left on device

/tmpのファイルをタップして追加/削除することもできます。 ls -al

drwxrwxrwt   8 root root  4096 Jul 23 18:47 tmp

ここで何が起こっているのかをデバッグしたり理解したりするにはどうすればよいですか? /tmpディレクトリに問題があると思いますが、何が原因なのかわかりません。

5
OptimusCrime

多くのデバッグの後、私は nix.SE で別のSE回答に答えを見つけました。

Inotifyを実行するウォッチャーが少なすぎたため、このエラーが発生したことがわかりました。私の場合、この問題はシステムのどこのエラーログにも記録されていません。

単にファイルを編集する/etc/sysctl.conf追加:

fs.inotify.max_user_watches = 262144

...次にsysctl -p 問題を解決しました。

15
OptimusCrime