sudo всегда устанавливает пределы процесса для чисел из /etc/security/limits.d?

Я наблюдал следующее поведение:

[ec2-user@ip-10-66-68-55 ~]$ uname -a Linux ip-10-66-68-55 3.4.103-76.114.amzn1.x86_64 #1 SMP Fri Sep 12 00:57:39 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux [ec2-user@ip-10-66-68-55 ~]$ ulimit -H -n; ulimit -S -n 1000 1000 [ec2-user@ip-10-66-68-55 ~]$ cat /etc/security/limits.d/80-nofile.conf ec2-user hard nofile 123456 ec2-user soft nofile 123456 [ec2-user@ip-10-66-68-55 ~]$ bash -c 'ulimit -H -n; ulimit -S -n' #I expect this limit to be 1000, same as above. it is. 1000 1000 [ec2-user@ip-10-66-68-55 ~]$ sudo -u ec2-user bash -c 'ulimit -H -n; ulimit -S -n' #I expected this limit to be 1000, the same as if I had not called sudo -u ec2-user #Instead, I get the one from limits.d/80-nofile.conf. 123456 123456 

Быстрый поиск по странице sudo man не показывал прямой ссылки на / etc / security / limits.

Я хочу полагаться на это поведение, чтобы гарантировать, что демона, которого я волнует, запускает с ограничениями, установленными на 80-nofile.conf, но я не знаю, насколько это достоверно. Это где-то задокументировано?

Какие типы файлов / переменных конфигурации влияют на это поведение? могу ли я сказать sudo, чтобы не отменять текущие ограничения?

  • при синхронизации времени выполнения команды с помощью sudo `time` должно быть до` sudo` или после `sudo`?
  • Добавление kill в группу sudoers
  • Использует ли sudo команду временно изменить $ PATH как root?
  • Как убить процесс, который говорит «Операция не разрешена» при попытке?
  • Почему Plan 9 использует «snarf» вместо «copy»?
  • Какая угроза пользователю, пытающемуся sudo без разрешения?
  • Является ли Cat-v.org официальным вспомогательным сайтом Plan 9 от Bell Labs?
  • sudo -u имя пользователя -s "cmd arg" возвращает команду не найдена
  • 2 Solutions collect form web for “sudo всегда устанавливает пределы процесса для чисел из /etc/security/limits.d?”

    Вероятно, вы должны заглянуть в файл /etc/pam.d/sudo и проверить, требуется ли в нем файл pam_limits.so или в любом из других файлов, которые он включает.

    Например, файл /etc/pam.d/sudo в моей системе выглядит ниже.

     #%PAM-1.0 auth required pam_env.so readenv=1 user_readenv=0 auth required pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0 @include common-auth @include common-account @include common-session-noninteractive 

    Теперь вы можете искать pam_limits.so в других файлах, которые включены с помощью параметра @inlude .

    Спасибо @hrv за понимание. Я подтвердил это после быстрого эксперимента: когда /etc/pam.d/sudo включал pam_limits.so, тогда запуск sudo действительно их установил, а когда /etc/pam.d/sudo не включил их, то запуск sudo не устанавливали их.

    Я проверил несколько разных машин, и один из них включил pam_limits.so в /etc/pam.d/sudo, а другой – нет.

    Interesting Posts

    Пакеты, не полученные устройством TUN

    Ошибки набора номера Wvdial.conf. Модель малины Pi B Модем Huawei E1820 3G

    Перейти к следующему помеченному сообщению в Mutt

    обработка ошибок runuser

    Порт прямого хоста LXC NAT для контейнера

    Как я могу перечислить все подключения к моему хосту, в том числе для гостей LXC?

    Как отслеживать вывод, когда процесс выполняется на сервере RedHat Linux?

    большие серверы электронной почты, отправляемые с сервера, не могут идентифицировать

    Как сохранить контейнер lxc состояния

    Типичные текстовые файлы, присутствующие во всех (большинстве) системах GNU / Linux?

    Что означает $ # в оболочке?

    Что такое конфигурация iptables для моего рабочего стола?

    Как определить, является ли вход из аргумента, файла или терминала

    Как я могу заставить обновление cvs использовать маску posix acl по умолчанию для папки назначения?

    Полноэкранные игры с моей настройкой с двумя мониторами xrandr

    Linux и Unix - лучшая ОС в мире.