Não sei se devo aumentar esse número
A maneira mais fácil de verificar se você atingiu seu max_user_watches
valor é, com seu usuário, usar inotifywatch
o pacote inotify-tools
e verificar se você ainda pode coletar informações de um arquivo.
Por exemplo inotifywatch -v /home/bruno/.profile
para mim retorna:
Establishing watches...
Total of 1 watches.
Finished establishing watches, now collecting statistics.
Portanto inotify
, não há problemas ao criar um novo relógio, não há problemas aqui.
Se você atingiu seu limite máximo nos relógios inotify, ele retornará algo como
Failed to watch /home/bruno/.profile; upper limit on inotify watches reached!
Se você vir algo assim, atingiu o limite e precisará aumentar o limite permitido de relógios.
Consome mais RAM?
Sim. Mas, de acordo com este artigo antigo, a quantidade consumida é mínima em comparação com outros aspectos de uma área de trabalho em execução.
--USO DE MEMÓRIA--
As estruturas de dados inotify são leves:
inotify watch é 40 bytes inotify device é 68 bytes inotify event é 272 bytes
Então, supondo que um dispositivo possua 8192 relógios, as estruturas consumirão apenas 320 KB de memória. Com um número máximo de 8 dispositivos autorizados por vez, isso ainda é de apenas 2,5 MB
Cada dispositivo também pode ter 256 eventos na fila por vez, o que equivale a 68 KB por dispositivo. E apenas 0,5 MB se todos os dispositivos estiverem abertos e tiverem uma fila de eventos completa.
Portanto, aproximadamente 3 MB de memória são usados no caso raro de tudo aberto e cheio.
Cada relógio inotify fixa o inode de um diretório / arquivo na memória, o tamanho de um inode é diferente por sistema de arquivos, mas vamos supor que sejam 512 bytes.
Portanto, supondo que o número máximo de vigias globais esteja ativo, isso reduziria 32 MB de inodes no cache de inodes. Novamente, não é um problema em um sistema moderno.
Obviamente, estou assumindo que as coisas não mudaram muito desde que o artigo foi escrito, mas olhando para os números, não me preocuparia e aumentar o limite não aumentará muito o consumo de RAM.
Publicações relacionadas sobre inotify