где является значение по умолчанию ulimit набором значений? (Linux, песни)

При рассмотрении результатов nslookup у Вас есть тот же доменный суффиксный поисковый список на обеих машинах? Нажмите усовершенствованную кнопку на странице свойств TCP/IP, затем перейдите к вкладке DNS. Есть ли там какие-либо различия?

Кроме того, почему Вы не даете нам вывод ipconfig /all от командной строки?


- Christopher Karel

34
задан 3 April 2015 в 12:42
7 ответов

Похоже, это /etc/security/limits.conf[1219 visiblehttp://ss64.com/bash/limits.conf.html[1220 impression

1
ответ дан 28 November 2019 в 19:52

Когда вы проверяли ограничения, использовали ли вы для этого пользователя root?

Из справочной страницы limits.conf :

ПРИМЕЧАНИЕ: группа и подстановочный знак ограничения не применяются к пользователю root. Чтобы установить ограничение для пользователя root, это поле должно содержать литерал имя пользователя root.

Использование явных имен пользователей решит проблему в этом случае.

3
ответ дан 28 November 2019 в 19:52

В RHEL6 (CentOS6) "максимальное количество пользовательских процессов" по умолчанию установлено на 1024.
Вы можете изменить это значение в файле:

/etc/security/limits.d/90-nproc.conf

См. https://bugzilla.redhat.com/show_bug.cgi?id=432903 , если вы хотите пожаловаться на это :)

15
ответ дан 28 November 2019 в 19:52

Эти ограничения по умолчанию применяются:

  • ядром Linux во время загрузки init процесс),
  • наследование , из пределов родительского процесса (во время fork (2) время),
  • PAM , когда пользовательский сеанс открыт (может заменить значения ядра / унаследованные),
  • сам процесс (может заменять PAM и значения ядра / унаследованные, см. setrlimit (2) ).

Обычные пользовательские процессы не могут выйти за рамки жестких ограничений.

Ядро Linux

Во время загрузки Linux устанавливает ограничения по умолчанию для процесса init , которые затем наследуются всеми остальными (дочерними) процессами. Чтобы увидеть эти ограничения: cat /proc/1/limits[111953 impression.[12145 providedFor example, по умолчанию ядро ​​для максимальное количество дескрипторов файлов ( ulimit -n ) было 1024/1024 (мягкий, жесткий), а было увеличено до 1024/4096 в Linux 2.6.39.

По умолчанию максимальное количество процессов , о которых вы говорите , ограничено примерно :

Total RAM in kB / 128

для архитектур x86 (по крайней мере), но дистрибутивы иногда меняют значения ядра по умолчанию, поэтому проверьте исходный код ядра на предмет kernel / fork.c , fork_init () . Предел «количества процессов» там называется RLIMIT_NPROC.

PAM

Обычно, чтобы гарантировать аутентификацию пользователя при входе в систему, PAM используется вместе с некоторыми модулями (см. /etc/pam.d/login ).

В Debian модуль PAM, отвечающий за установку ограничений, находится здесь: /lib/security/pam_limits.so .

Эта библиотека будет читать свою конфигурацию из /etc/security/limits.conf и /etc/security/limits.d / *. Conf , но даже если эти файлы пусто, pam_limits.so может использовать жестко запрограммированные значения , которые вы можете проверить в исходном коде.

Например, в Debian библиотека была исправлена ​​, поэтому по умолчанию максимальное количество процессов ( nproc ) не ограничено, а максимальное количество файлов ( nofile ) составляет 1024/1024:

  case RLIMIT_NOFILE: поэтому можно использовать жестко запрограммированные значения , которые вы можете проверить в исходном коде. 

Например, в Debian библиотека была исправлена ​​, поэтому по умолчанию максимальное количество процессов ( nproc ) не ограничено, а максимальное количество файлов ( nofile ) составляет 1024/1024:

  case RLIMIT_NOFILE: поэтому можно использовать жестко запрограммированные значения , которые вы можете проверить в исходном коде. 

Например, в Debian библиотека была исправлена ​​, поэтому по умолчанию максимальное количество процессов ( nproc ) не ограничено, а максимальное количество файлов ( nofile ) составляет 1024/1024:

  case RLIMIT_NOFILE:
 pl-> limits [i] .limit.rlim_cur = 1024;
 pl-> limits [i] .limit.rlim_max = 1024;

Итак, проверьте исходный код PAM-модуля CentOS (найдите RLIMIT_NPROC).

Однако обратите внимание, что многие процессы не проходят через PAM (обычно, если они не запускаются зарегистрированным пользователем, например, демоны и, возможно, задания cron).

45
ответ дан 28 November 2019 в 19:52

kernel / fork.c

max_threads = mempages / (8 * THREAD_SIZE / PAGE_SIZE);

В 64-битной версии Размер потока равен 8192

 grep -i total /proc/meminfo 
 MemTotal:        8069352 kB

Теперь я получаю сумму в килобайтах, деленную на 4

 echo $((8069352/4))
 2017338

Теперь я получил количество страниц

 echo $((8 * 8192 / 4096)
 16

Конечный результат:

echo $((2017338/16))
126083

Таким образом, вы получили параметр thread-max, а ограничение для пользовательского процесса по умолчанию составляет половину

init_task.signal->rlim[RLIMIT_NPROC].rlim_cur = max_threads/2;
init_task.signal->rlim[RLIMIT_NPROC].rlim_max = max_threads/2;

ulimit от root

ulimit -u
62932
echo $((62932*2))
125864 #we are near
2
ответ дан 28 November 2019 в 19:52

/ etc / securityде конфигурациялоо учурунда "noproc" конфигурациясы иштебей калышы дагы бир мүмкүнчүлүк бар. /limits.conf.

Сиздин /etc/security/limits.d/90-nproc.conf конфигурациясын жокко чыгарган дагы бир файл бар.

*          soft    nproc     1024
root       soft    nproc     unlimited

Мына * конфигурация мурунку конфигурация файлында эмнени орнотсоңуз, аны жокко чыгарат. Демек, сиз ушул файлдагы орнотууну конфигурациялай аласыз.

1
ответ дан 28 November 2019 в 19:52

Информация об этом ужасна в Интернете, вот файл limits.conf, который я сделал для debian linux, показывая все возможные параметры и их максимальные «безопасные» пределы, настройте их соответствующим образом.

Это самые высокие значения, которые вы можете установить, некоторые вещи хешируются, их активация приводит к ошибке и невозможности входа в консоль, изменять закомментированные варианты на ваш страх и риск, но в этом нет необходимости (по умолчанию в большинстве случаев не ограничено)

Я надеюсь, что это будет полезно для кого-то, так как я нигде не смог найти эту информацию, есть 4 часа исследования этого файла.

==== FILE START =====
# /etc/security/limits.conf
# 
#Each line describes a limit for a user in the form:
#
#<domain>        <type>  <item>  <value>
#
#Where:
#<domain> can be:
#- a user name
#- a group name, with @group syntax
#- the wildcard     *, for default entry
#- the wildcard %, can be also used with %group syntax,
#         for maxlogin limit
#- NOTE: group and wildcard limits are not applied to     root.
#  To apply a limit to the     root user, <domain> must be
#  the literal username     root.
#
#<type> can have the two values:
#- "soft" for enforcing the soft limits
#- "hard" for enforcing hard limits
#
#<item> can be one of the following:
#- core - limits the core file size (KB)
#- data - max data size (KB)
#- fsize - maximum filesize (KB)
#- memlock - max locked-in-memory address space (KB)
#- nofile - max number of open files
#- rss - max resident set size (KB)
#- stack - max stack size (KB)
#- cpu - max CPU time (MIN)
#- nproc - max number of processes
#- as - address space limit (KB)
#- maxlogins - max number of logins for this user
#- maxsyslogins - max number of logins on the system
#- priority - the priority to run user process with
#- locks - max number of file locks the user can hold
#- sigpending - max number of pending signals
#- msgqueue - max memory used by POSIX message queues (bytes)
#- nice - max nice priority allowed to raise to values: [-20, 19]
#- rtprio - max realtime priority
#- chroot - change     root to directory (Debian-specific)
#
#<domain>      <type>  <item>         <value>
#

#*               soft    core            0
#root            hard    core            100000
#*               hard    rss             10000
#@student        hard    nproc           20
#@faculty        soft    nproc           20
#@faculty        hard    nproc           50
#ftp             hard    nproc           0
#ftp             -       chroot          /ftp
#@student        -       maxlogins       4

# -- Defaults:
#(core) core file size                (blocks, -c) 0 (ulimit -Hc or -Sc)
#(data) data seg size                  (bytes, -d) unlimited
#(priority) scheduling priority               (-e) 0
#(fsize) file size                    (blocks, -f) unlimited
#(sigpending) pending signals                 (-i) 378197
#(memlock) max locked memory          (kbytes, -l) 64
# max memory size                     (kbytes, -m) unlimited
#(nofile) open files                          (-n) 65536
# pipe size                        (512 bytes, -p) 8
#(msgqueue) POSIX message queues       (bytes, -q) 819200
#(rtprio) real-time priority                  (-r) 0
#(stack) stack size                   (kbytes, -s) 8192
#(cpu) cpu time                      (seconds, -t) unlimited
#(nproc) max user processes                   (-u) 378197
# virtual memory                      (kbytes, -v) unlimited
#(locks) file locks                           (-x) unlimited

# --     root Limits:
root               -    core            -1
root               -    data            -1
root               -    fsize           -1
root               -    memlock         -1
root               -    nofile          999999
root               -    stack           -1
root               -    cpu             -1
root               -    nproc           -1
root               -    priority        0
root               -    locks           -1
root               -    sigpending      -1
root               -    msgqueue        -1
root               -    rtprio          -1
root               -    maxlogins       -1
root               -    maxsyslogins    -1
#root               -    rss             -1
#root               -    as              -1
#root               -    nice            0
#root               -    chroot          -1

#All Users:
# -- Hard Limits
*               hard    core            -1
*               hard    data            -1
*               hard    fsize           -1
*               hard    memlock         -1
*               hard    nofile          999999
*               hard    stack           -1
*               hard    cpu             -1
*               hard    nproc           -1
*               hard    priority        0
*               hard    locks           -1
*               hard    sigpending      -1
*               hard    msgqueue        -1
*               hard    rtprio          -1
*               hard    maxlogins       -1
*               hard    maxsyslogins    -1
#*               hard    rss             -1
#*               hard    as              -1
#*               hard    nice            0
#*               hard    chroot          -1

# -- Soft Limits
*               soft    core            -1
*               soft    data            -1
*               soft    fsize           -1
*               soft    memlock         -1
*               soft    nofile          999999
*               soft    stack           -1
*               soft    cpu             -1
*               soft    nproc           -1
*               soft    priority        0
*               soft    locks           -1
*               soft    sigpending      -1
*               soft    msgqueue        -1
*               soft    maxlogins       -1
*               soft    maxsyslogins    -1
*               soft    rtprio          -1
#*               soft    rss             -1
#*               soft    as              -1
#*               soft    nice            0
#*               soft    chroot          -1

#randomuser:
# -- Soft Limits
randomuser           soft    core            -1
randomuser           soft    data            -1
randomuser           soft    fsize           -1
randomuser           soft    memlock         -1
randomuser           soft    nofile          999999
randomuser           soft    stack           -1
randomuser           soft    cpu             -1
randomuser           soft    nproc           -1
randomuser           soft    priority        0
randomuser           soft    locks           -1
randomuser           soft    sigpending      -1
randomuser           soft    msgqueue        -1
randomuser           soft    maxlogins       -1
randomuser           soft    maxsyslogins    -1
randomuser           soft    rtprio          -1
#randomuser           soft    rss             -1
#randomuser           soft    as              -1
#randomuser           soft    nice            0
#randomuser           soft    chroot          -1

# End of file
3
ответ дан 28 November 2019 в 19:52

Теги

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