Линукс лимит открытых файлов
Справочная статья о том, как узнать лимиты открытых файлов в линукс..
Введение
Лимиты на кол-во открытых файлов необходимы для ограничения использования оперативной памяти.
Текущий лимит (Soft limit) открытых файлов на процесс для текущего пользователя
1 2 3 |
ulimit -Sn |
Максимальный лимит (Hard limit) открытых файлов на процесс для текущего пользователя
1 2 3 |
ulimit -Hn |
Посчитать кол-во открытых файлов всеми процессами
1 2 3 |
lsof | wc -l |
Посчитать кол-во открытых файлов всеми процессами (по версии ядра линукс)
1 2 3 |
cat /proc/sys/fs/file-nr |
Максимальный лимит открытых файлов для всей системы
1 2 3 |
cat /proc/sys/fs/file-max |
Изменить максимальный лимит файлов на процесс для пользователя
Открываем файл limits.conf
1 2 3 |
sudo nano /etc/security/limits.conf |
Добавляем нужные лимиты
1 2 3 4 5 6 7 8 |
## <domain> <type> <item> <value> ## ## Example hard limit for max opened files username hard nofile 4096 ## Example soft limit for max opened files username soft nofile 1024 |
Описание формата limits.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
#<domain> <type> <item> <value> # #Where: # 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, must be # the literal username root. # # can have the two values: # - "soft" for enforcing the soft limits # - "hard" for enforcing hard limits # # 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) |
Изменить максимальный лимит файлов для всей системы до выхода из системы
1 2 3 |
sysctl -w fs.file-max=500000 |
Изменить максимальный лимит файлов для всей системы
1 2 3 4 |
echo 800000 >> /etc/sysctl.conf sysctl -p |
или так
1 2 3 |
echo 800000 > /proc/sys/fs/file-max |
Author: | Tags: /
| Rating:
1 comment.
Write a comment