изменения в/etc/security/limits.conf требуют перезагрузки?

У Вас есть sudo, добавленный к Вашим тегам. В Вашем sudoers файле можно добавить dev к разрешенным пользователям и, при необходимости ограничиваете, какие команды им позволяют выполнить, и тот пароль не требуется. Затем все, что они должны были бы сделать, ввести "sudo su - кот".

Выполненный visudo добавить следующую строку:

dev ALL = NOPASSWD: /usr/bin/su - tomcat

Существуют партии больше информации и примеров в файле человека для sudoers.

150
29.10.2019, 16:44
5 ответов

Нет, но необходимо закрыть все активные окна сессий. Они все еще помнят старые значения. Другими словами, выйдите из системы и въезжайте задним ходом. Каждая удаленная новая сессия или локальная безопасная оболочка вступают в силу предельных изменений.

114
27.01.2020, 19:28
  • 1
    , Что, если я хочу установить пределы для пользователя, который не имеет входа в систему, как то, если я хочу установить nofile предел 94000 для mongodb пользователь? Как я сделал бы это без перезагрузки? Я должен был бы просто перезапустить mongodb сервис? –  Alexej Magura 09.01.2014, 21:35
  • 2
    @AlexejMagura можно изменить rlimits выполнения процессов с prlimit команда. –  Bratchley 10.01.2014, 01:46
  • 3
    @Gilles, спасибо за точность, я отредактировал свой ответ на избежать неоднозначности. Однако Запуская новое сервисное использование sudo service mongodb restart достаточно должен позволить сервису, работающему с новыми предельными значениями. –  Slyx 10.01.2014, 17:01
  • 4
    при использовании Ubuntu и mongodb, запускается выскочкой, затем изменение этих пределов не будет влиять на mongodb. Как upstart не читает/etc/security конфигурируют bugs.launchpad.net/ubuntu/+source/upstart/+bug/938669, который необходимо установить limit строка файла конфигурации в ее новомодном файле конфигурации. –  HVNSweeting 19.01.2015, 05:22
  • 5
    , Это - другая проблема. upstart дизайном игнорирует пределы, начинаются /etc/security/limits.conf. –  Slyx 20.01.2015, 13:00

Для временного установления открытого предела файлов для пользователя, Вы в настоящее время зарегистрированы под (например, 'корень'): можно также использовать ulimit управляйте для изменения значений в текущей оболочке. Однако жесткие пределы могут только быть уменьшены, если Вы не корень.

Пример:

# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 62449
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 1024
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

Измениться nofile к 94 000 можно сделать:

ulimit -n 94000
29
27.01.2020, 19:28

Пределы наследованы от родительского процесса до его дочерних процессов. Процессы, работающие как корень, могут изменить пределы произвольно; другие процессы не могут увеличить жесткие пределы. Таким образом жесткие пределы, установленные процессом входа в систему, влияют на все процессы на сессии.

Если Вы изменяетесь /etc/security/limits.conf, это будет влиять на все новые сессии и процессы на этих новых сессиях. Это не будет влиять на процессы, которые уже работают, ни процессы, запущенные процессами, которые уже работают.

Таким образом, если необходимо увеличить некоторые пределы, необходимо будет или выйти из системы и въехать задним ходом или запустить другую сессию (например, с ssh localhost, или на другой консоли).

16
27.01.2020, 19:28

Применяйте изменения непосредственно к выполняемому процессу, если у вас установлен prlimit (поставляется с util-linux-2.21)

prlimit --pid <pid> --<limit>=<soft>:<hard>

, например

prlimit --pid 12345 --nofile=1024:2048

См. здесь

36
27.01.2020, 19:28

Цитирую ответ @Tombart

Эти ограничения будут применены после перезагрузки.

Если вы хотите применить изменения без перезагрузки, измените. /etc/pam.d/common-session, добавив эту строку в конец файла:

session required pam_limits.so
5
27.01.2020, 19:28

Теги

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