Відповіді:
На нових ядрах (2.6.32+) на CentOS / RHEL ви можете змінити це під час виконання за допомогою / proc / <pid> / limit:
cd /proc/7671/
[root@host 7671]# cat limits | grep nice
Max nice priority 0 0
[root@host 7671]# echo -n "Max nice priority=5:6" > limits
[root@host 7671]# cat limits | grep nice
Max nice priority 5 6
Як задокументовано тут , prlimit
команда, введена з util-linux 2.21, дозволяє читати та змінювати межі запущених процесів.
Це подальше записування /proc/<pid>/limits
, яке не було інтегровано в основне ядро. Це рішення має спрацювати.
Якщо у вас немає prlimit(1)
, то ви можете знайти код в мінімалістську версію в prlimit(2)
сторінках керівництва .
У новій версії util-linux-ng ви можете використовувати команду prlimit, для отримання додаткової інформації прочитайте це посилання /superuser/404239/setting-ulimit-on-a-running-process
Ви можете спробувати ulimit man ulimit
за допомогою параметра -n, однак маг-сторінка не в більшості ОС не дозволяє встановити це.
Ви можете встановити системний ліміт опису файлів за допомогою sysctl -w fs.file-max=N
та зробити так, щоб зміни зберігалися після завантаження/etc/sysctl.conf
Однак я б також запропонував переглянути процес, щоб побачити, чи дійсно потрібно мати стільки файлів, що відкриваються в даний момент часу, і якщо ви насправді можете закрити деякі файли та бути ефективнішими в цьому процесі.
ulimit
не застосовує налаштування до запущених процесів .