Как я могу узнать, не я ли я из часов inotify?

сохраните любое искусство ascii, которое вы хотите добавить в текстовый файл, и назовите его «ascii».

Откройте домашнюю папку в nautilus и скопируйте этот файл в свою домашнюю папку.

Теперь, если вы нажмете ctrl-h, вы сможете видеть скрытые файлы.

Будет файл .bashrc

Откройте его и добавьте следующую строку в конце строка ...

cat ascii

Теперь сохраните его и закройте.

Запустите свой терминал.

Если все идет ну, вы должны увидеть, что вы намерены увидеть ...

есть хорошая иллюстрация с фотографиями по следующей ссылке ...

http://iloveubuntu.net/fancify -Ваш-гном-терминал-ASCII-арт

1
задан 23 May 2017 в 15:39

1 ответ

Я не знаю, должен ли я просто увеличить это число

. Легкий способ проверить, достигли ли вы значения max_user_watches, с вашим пользователем использовать inotifywatch из пакета inotify-tools, и проверить, можете ли вы все еще собирать информацию из файла.

Например, inotifywatch -v /home/bruno/.profile для меня возвращает:

Establishing watches...
Total of 1 watches.
Finished establishing watches, now collecting statistics.

Таким образом, inotify не вызывает проблем

Если вы достигли своего максимального предела в секундах inotify, он вернет что-то вроде

Failed to watch /home/bruno/.profile; upper limit on inotify watches reached!

Если вы видите что-то подобное, то вы достигли предел и должен будет увеличить допустимый предел часов.

Он потребляет больше ОЗУ?

Да, это так. Но в соответствии с этой старой статьей сумма, которую он потребляет, минимальна по сравнению с другими аспектами работающего рабочего стола.

- ИСПОЛЬЗОВАНИЕ ПАМЯТИ - Структуры данных inotify - это легкий вес: inotify watch - это 40-байтовое устройство, 68 байтов inotify event - 272 байта. Предполагая, что у устройства есть часы 8192, структуры будут потреблять 320 Кбайт памяти. При максимальном количестве 8 устройств, которые могут существовать одновременно, это все равно всего лишь 2,5 МБ. Каждое устройство может одновременно иметь 256 событий в очереди, что составляет 68 Кбайт на устройство. И только .5 МБ, если все устройства открыты и имеют полную очередь событий. Таким образом, примерно 3 МБ памяти используются в редком случае всего открытого и полного. Каждый inotify watch выдает inode каталога / файла в памяти, размер индексного дескриптора отличается от каждой файловой системы, но позволяет предположить, что это 512 байтов. Таким образом, при условии, что максимальное количество глобальных часов будет активным, это приведет к тому, что в кэше inode будет установлено 32 МБ индексов. Опять не проблема в современной системе.

Я, конечно, полагаю, что с момента написания статьи многое не изменилось, но, глядя на цифры, я не стал бы волноваться, и увеличение лимита не увеличит потребление ОЗУ.

[d19 ]

Похожие сообщения о inotify

Ошибка Dropbox - 'echo 100000 | sudo tee / proc / sys / fs / inotify / max_user_watches 'kernel-inotify-watch-limit-reached
8
ответ дан 25 May 2018 в 09:51
  • 1
    Извините, у меня вчера был сквозняк, и я не видел вашего ответа до того, как отправил свой. Я предполагаю, что все в порядке, поскольку у них есть два разных подхода :-) Не могли бы вы просто пояснить, что в последних ядрах inotify использует 0.5KB (на 32-битной) или 1KB (64-разрядной) памяти ядра на часы, поскольку старая информация из 2005 год, похоже, не верен? – ish 25 June 2012 в 12:52

Другие вопросы по тегам:

Похожие вопросы: