Limite de usuário de relógios inotify alcançados no Ubuntu 16.04

17

Acabei de instalar o Ubuntu 16.04 e recebo este aviso quando inicio o SmartGit :

IOException: User limit of inotify watches reached

Além disso, recebo este aviso de lançamento tail -f :

tail: inotify resources exhausted 

tail: inotify cannot be used, reverting to polling

Eu nunca recebi esse erro com o Ubuntu 14.04 e os aplicativos e arquivos que estou usando no novo Ubuntu são exatamente os mesmos que eu estava usando na versão anterior.

As únicas diferenças relevantes são que adicionei um disco rígido adicional no PC e configurei a ferramenta de backup do Ubuntu. Este problema pode estar relacionado com um segundo disco ou com a ferramenta de backup?

    
por Andrea 10.05.2016 / 19:27

1 resposta

38

O padrão atual no Xenial é 8192 (veja fs / notify / inotify / inotify_user.c na fonte do kernel), você pode verificar isso imprimindo o arquivo para stdout:

cat /proc/sys/fs/inotify/max_user_watches
8192

Você pode aumentar o número, por exemplo, duplicando para 16384, usando:

echo 16384 | sudo tee /proc/sys/fs/inotify/max_user_watches

tenha em mente que os relógios inotify consomem memória, acho que são cerca de 160 bytes por relógio em sistemas de 64 bits.

Para definir isso permanentemente, adicione uma entrada ao /etc/sysctl.conf, por exemplo:

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

.. ou edite manualmente /etc/sysctl.conf (você precisa de privilégios de root para atualizá-lo) e execute sudo sysctl -p

    
por Colin Ian King 10.05.2016 / 19:48