2021-11-28 (Su) [長年日記]
_ fire tv stick 4K Max
さすが簡単でいいね。
リモコンのボリュームは、TV のボリュームが変わるのね。無茶するなぁ。
とりあえず、ウマ娘を見たことがなかったので見てみた。 2nd season らしい。前作見てないな。
あとは Youtube でも流しとこうか。
_ ClamAV の on-access scan を仕掛ける
↓こんなこと言われるんだよね。
ERROR: ClamInotif: could not watch path '/home/backup', No space left on device
何が起きてるのか、デバッグしてみようかと思ってソースコードをひとまず覗いてみたところ、 こんなコードを発見。
logg("!ClamInotif: could not watch path '%s', %s\n", pt->strarg, strerror(errno));
if (errno == EINVAL && optget(ctx->clamdopts, "OnAccessPrevention")->enabled) {
logg("*ClamInotif: when using the OnAccessPrevention option, please ensure your kernel\n\t\t\twas compiled with CONFIG_FANOTIFY_ACCESS_PERMISSIONS set to Y\n");
kill(getpid(), SIGTERM);
}
if (errno == ENOSPC) {
logg("*ClamInotif: you likely do not have enough inotify watchpoints available ... run the follow command to increase available watchpoints and try again ...\n");
logg("*\t $ echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p\n");
kill(getpid(), SIGTERM);
}
No space left on device は ENOSPC だな。inotify の watch point が足りない?
でも、fs.inotify.max_user_watches は既にその値だわ。512K個で足りない? たしかにファイルは多いけどな。
行儀の悪いコードだなぁ。errno を 0 と比較したり、logg の後で errno を参照したり。 って、logg で errno を backup/restore してねーじゃんか。バグか… どうりでメッセージが出てないわけだ。
1M個にしてみた。
mike2:~ % find /home -print0 | xargs -0 ls -ld |cut -c1 |sort|uniq -c
6679241 -
1875960 d
1770 l
12 p
…もしかして足りない? ディレクトリの個数だとして 1.8M個必要。
やっぱり足りなかったのかな。同じエラーになったので、2M個にしてみた。
動かない… 10M個にしたらメモリ食いすぎ負荷高すぎでまともに動かなくなった orz
監視エリアを限定するしかないな。
[ツッコミを入れる]