доступных дескрипторов файлов - 0, как увеличить [closed]

С некоторых пор мы получаем сообщение «Слишком много открытых файлов» в приложении Java при загрузке файлов. Итак, я начал поиск в Google и увеличил fs.file-max до 200000 в моем /etc/sysctl.conf . После этого я запускаю sysctl -p . Но это не помогло. Потому что, когда я набираю cat / proc / sys / fs / file-nr , он возвращает 2550 0 200000 . Первые четыре цифры меняются, но 0 всегда равен 0, с тех пор как я начал искать ..

Что я здесь делаю не так, или как я могу это исправить?

Я использую релиз CentOS 5.9 (final) , с одним SSD, поэтому я не думаю, что это будет проблемой. (Кроме того, он не налитый, слабый или что-то в этом роде, и он уже несколько месяцев работает нормально.)

Еще кое-что, но я не уверен, есть ли у него что-нибудь с этой проблемой; Я могу создавать, уничтожать и редактировать файлы через SSH с помощью nano / rm. И приложение Java работает нормально до этой проблемы.

Спасибо.

-1
задан 29 July 2013 в 04:07
1 ответ

Забудьте об уровне ОС fs.file-max , это максимальное количество файловых дескрипторов, которые ваш текущий пользователь / группа может иметь (для каждого процесса), которые вы хотите редактировать . См. ulimit -n .

Вы можете настроить это ограничение как root, изменив /etc/security/limits.conf . Также убедитесь, что ограничение применяется, добавив ulimit -SHn 8192 (или любое другое ограничение, которое вы хотите иметь) в ваш ~ / .bashrc .

0
ответ дан 5 December 2019 в 20:45

Теги

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