LINUX.ORG.RU

ulimit, увеличить кол-во открываемых файлов

 


0

1

Запускаю одну программку из-под другого юзера через sudo, ей не хватает доступных дескрипторов для файлов.

# grep ^[^#] /etc/security/limits.conf 
* hard nofile 8192
sszb              soft    nofile          8192
sszb              hard    nofile          16384
fargred              soft    nofile          8192
fargred              hard    nofile          16384
Последние две строчки — на всякий случай.
# grep ^[^#] /home/sszb/.bashrc
if [[ $- != *i* ]] ; then
	# Shell is non-interactive.  Be done now!
	return
fi
ulimit -n 4097
export LANG=ru_RU.CP1251
# su sszb -
bash: ulimit: open files: cannot modify limit: Operation not permitted
sszb@myhost /home/sszb $
Если его не задавать через .bashrc, то будет 1024. Если задавать, то доступный диапазон составляет 0 <= x <= 4096, но этого мало.

Deleted

Ну у тебя shadow без pam наконпелян, например; ну и смотри /proc/sys/fs/file-max.

anonymous ()
Ответ на: комментарий от anonymous

Да, shadow без pam, и я хочу оставить его таким какой он есть, этот анонимус сказал, что так можно.

Deleted ()
Ответ на: комментарий от Deleted

Так я нашёл, как это сделать, но это означает патчить ядро своими костылями или писать бинарник чтобы вызывать setrlimit() и указывать в RLIMIT_NOFILE нечто большее 4096. Так что PAM.

Deleted ()

Попробуй прописать в /etc/security/limits.conf (у тебя может быть в другом месте данный файл)

sszb    hard    nofile  10240

Затем перелогинится и поднять лимит через ulimit -n 10240

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от Chaser_Andrey

Блин, невнимательно читал, ты уже прописал в limits.conf.

Ну а ulimit -n 16384 перед запуском программы не спасает?

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от Chaser_Andrey

у тебя может быть в другом месте данный файл

У меня гента, а не слака.

Deleted ()
Ответ на: комментарий от Deleted

Поправка: я посмотрел в ядро и увидел в RLIMIT_NOFILE какое-то условное значение. Там не 4096. 4096 прописано в include/linux/fs.h в константе INR_OPEN_MAX.

Deleted ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.