[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/linux/increase-ulimit":3,"mdc--68fhmr-key":610,"mdc--o4j7bn-key":620,"mdc-q3v7z2-key":628,"mdc-47lxzy-key":636,"mdc--piixab-key":651,"mdc-dc2obz-key":659,"mdc--oklyom-key":667,"mdc-dtn5dy-key":675,"mdc--wuckkl-key":683,"mdc--hq6bws-key":691,"related-/guides/linux/file-descriptor-limit,/guides/linux/systemd-service-limits,/errors/linux/enospc-error":705},{"id":4,"title":5,"appliesTo":6,"author":12,"body":13,"canonical":544,"code":544,"createdAt":545,"description":546,"difficulty":547,"draft":548,"estimatedTime":549,"extension":550,"faq":551,"howToSteps":564,"howToTotalTime":583,"image":544,"keywords":584,"locale":590,"meta":591,"navigation":592,"path":593,"platform":594,"related":595,"section":599,"seo":600,"severity":544,"stem":601,"summary":602,"tags":603,"twitterCreator":544,"twitterSite":544,"type":608,"updatedAt":545,"__hash__":609},"content_ru/guides/linux/increase-ulimit.md","Как увеличить ulimit в Linux: полное руководство и настройка лимитов",[7,8,9,10,11],"Ubuntu 22.04/24.04","Debian 11/12","CentOS 7/8/Stream","RHEL 8/9","ядро Linux 5.x+","FixPedia Team",{"type":14,"value":15,"toc":533},"minimark",[16,21,30,33,37,65,69,72,92,103,106,138,141,153,157,163,178,181,196,206,209,213,220,235,238,246,249,275,278,282,289,307,310,334,337,362,365,384,388,398,412,415,421,424,439,442,446,449,479,486,490,529],[17,18,20],"h2",{"id":19},"введение-зачем-это-нужно","Введение / Зачем это нужно",[22,23,24,25,29],"p",{},"В Linux каждому процессу и пользователю назначаются ограничения на использование ресурсов: количество открытых файлов, запущенных процессов, память и другие объекты. Эти ограничения управляются командой ",[26,27,28],"code",{},"ulimit",". Если лимиты слишком низкие, приложения могут выдавать ошибки вроде «Too many open files» или отказываться создавать новые потоки и соединения.",[22,31,32],{},"После выполнения этого гайда вы научитесь временно и постоянно увеличивать лимиты ulimit для сессий, пользователей и systemd-сервисов, а также сможете выбирать подходящий метод в зависимости от задачи.",[17,34,36],{"id":35},"требования-подготовка","Требования / Подготовка",[38,39,40,44,51,62],"ul",{},[41,42,43],"li",{},"Сервер или ПК с Linux (Ubuntu, Debian, CentOS, RHEL).",[41,45,46,47,50],{},"Права пользователя с доступом к ",[26,48,49],{},"sudo"," или root для редактирования системных файлов.",[41,52,53,54,57,58,61],{},"Установленный текстовый редактор (",[26,55,56],{},"nano",", ",[26,59,60],{},"vim"," или другой).",[41,63,64],{},"Для настройки systemd — наличие управляемого сервиса, лимиты которого нужно изменить.",[17,66,68],{"id":67},"шаг-1-проверить-текущие-лимиты","Шаг 1: Проверить текущие лимиты",[22,70,71],{},"Перед изменением узнайте текущие значения. Для текущей оболочки выполните:",[73,74,79],"pre",{"className":75,"code":76,"language":77,"meta":78,"style":78},"language-bash shiki shiki-themes github-light github-dark","ulimit -a\n","bash","",[26,80,81],{"__ignoreMap":78},[82,83,86,89],"span",{"class":84,"line":85},"line",1,[82,87,28],{"class":88},"sj4cs",[82,90,91],{"class":88}," -a\n",[22,93,94,95,98,99,102],{},"Эта команда покажет все лимиты: ",[26,96,97],{},"-n"," (максимум открытых файлов), ",[26,100,101],{},"-u"," (максимум процессов пользователя), стек и другие параметры.",[22,104,105],{},"Для проверки лимитов конкретного процесса используйте его PID:",[73,107,109],{"className":75,"code":108,"language":77,"meta":78,"style":78},"cat /proc/\u003CPID>/limits\n",[26,110,111],{"__ignoreMap":78},[82,112,113,117,121,125,128,132,135],{"class":84,"line":85},[82,114,116],{"class":115},"sScJk","cat",[82,118,120],{"class":119},"sZZnC"," /proc/",[82,122,124],{"class":123},"szBVR","\u003C",[82,126,127],{"class":119},"PI",[82,129,131],{"class":130},"sVt8B","D",[82,133,134],{"class":123},">",[82,136,137],{"class":119},"/limits\n",[22,139,140],{},"Также можно проверить глобальный предел открытых файлов в системе:",[73,142,144],{"className":75,"code":143,"language":77,"meta":78,"style":78},"cat /proc/sys/fs/file-max\n",[26,145,146],{"__ignoreMap":78},[82,147,148,150],{"class":84,"line":85},[82,149,116],{"class":115},[82,151,152],{"class":119}," /proc/sys/fs/file-max\n",[17,154,156],{"id":155},"шаг-2-временно-увеличить-лимиты-в-сессии","Шаг 2: Временно увеличить лимиты в сессии",[22,158,159,160,162],{},"Если нужно быстро поднять лимиты для текущей оболочки или скрипта, используйте ",[26,161,28],{},". Например, для мягкого лимита открытых файлов:",[73,164,166],{"className":75,"code":165,"language":77,"meta":78,"style":78},"ulimit -n 65536\n",[26,167,168],{"__ignoreMap":78},[82,169,170,172,175],{"class":84,"line":85},[82,171,28],{"class":88},[82,173,174],{"class":88}," -n",[82,176,177],{"class":88}," 65536\n",[22,179,180],{},"Для максимума процессов пользователя:",[73,182,184],{"className":75,"code":183,"language":77,"meta":78,"style":78},"ulimit -u 16384\n",[26,185,186],{"__ignoreMap":78},[82,187,188,190,193],{"class":84,"line":85},[82,189,28],{"class":88},[82,191,192],{"class":88}," -u",[82,194,195],{"class":88}," 16384\n",[197,198,199],"blockquote",{},[22,200,201,202,205],{},"⚠️ Важно: такие изменения действуют только в текущей сессии и не сохранятся после перезапуска терминала или системы. Кроме того, мягкий лимит не может превышать жёсткий — проверить его можно командой ",[26,203,204],{},"ulimit -Hn",".",[207,208],"in-article-ad",{},[17,210,212],{"id":211},"шаг-3-настроить-постоянные-лимиты-через-limitsconf","Шаг 3: Настроить постоянные лимиты через limits.conf",[22,214,215,216,219],{},"Для постоянного увеличения лимитов по пользователям или группам отредактируйте ",[26,217,218],{},"/etc/security/limits.conf",". Откройте файл с правами root:",[73,221,223],{"className":75,"code":222,"language":77,"meta":78,"style":78},"sudo nano /etc/security/limits.conf\n",[26,224,225],{"__ignoreMap":78},[82,226,227,229,232],{"class":84,"line":85},[82,228,49],{"class":115},[82,230,231],{"class":119}," nano",[82,233,234],{"class":119}," /etc/security/limits.conf\n",[22,236,237],{},"Добавьте строки по образцу:",[73,239,244],{"className":240,"code":242,"language":243,"meta":78},[241],"language-text","# Для конкретного пользователя\nusername  soft  nofile  65536\nusername  hard  nofile  1048576\nusername  soft  nproc  16384\nusername  hard  nproc  32768\n\n# Для группы\n@groupname  soft  nofile  32768\n@groupname  hard  nofile  524288\n","text",[26,245,242],{"__ignoreMap":78},[22,247,248],{},"Здесь:",[38,250,251,257,263,269],{},[41,252,253,256],{},[26,254,255],{},"soft"," — мягкий лимит, который пользователь может повышать до жёсткого.",[41,258,259,262],{},[26,260,261],{},"hard"," — жёсткий лимит, который может изменить только root.",[41,264,265,268],{},[26,266,267],{},"nofile"," — максимум открытых файловых дескрипторов.",[41,270,271,274],{},[26,272,273],{},"nproc"," — максимум процессов на пользователя.",[22,276,277],{},"Сохраните файл. Чтобы настройки применились, перезайдите в сессию пользователя или перезагрузите систему.",[17,279,281],{"id":280},"шаг-4-настроить-лимиты-для-systemd-сервисов","Шаг 4: Настроить лимиты для systemd-сервисов",[22,283,284,285,288],{},"Если лимиты нужны для сервиса, запускаемого через systemd, используйте drop-in-файлы. Например, для ",[26,286,287],{},"nginx",":",[73,290,292],{"className":75,"code":291,"language":77,"meta":78,"style":78},"sudo systemctl edit nginx\n",[26,293,294],{"__ignoreMap":78},[82,295,296,298,301,304],{"class":84,"line":85},[82,297,49],{"class":115},[82,299,300],{"class":119}," systemctl",[82,302,303],{"class":119}," edit",[82,305,306],{"class":119}," nginx\n",[22,308,309],{},"Добавьте секцию с нужными лимитами:",[73,311,315],{"className":312,"code":313,"language":314,"meta":78,"style":78},"language-ini shiki shiki-themes github-light github-dark","[Service]\nLimitNOFILE=65536\nLimitNPROC=16384\n","ini",[26,316,317,322,328],{"__ignoreMap":78},[82,318,319],{"class":84,"line":85},[82,320,321],{},"[Service]\n",[82,323,325],{"class":84,"line":324},2,[82,326,327],{},"LimitNOFILE=65536\n",[82,329,331],{"class":84,"line":330},3,[82,332,333],{},"LimitNPROC=16384\n",[22,335,336],{},"Сохраните файл, затем перезапустите сервис:",[73,338,340],{"className":75,"code":339,"language":77,"meta":78,"style":78},"sudo systemctl daemon-reload\nsudo systemctl restart nginx\n",[26,341,342,351],{"__ignoreMap":78},[82,343,344,346,348],{"class":84,"line":85},[82,345,49],{"class":115},[82,347,300],{"class":119},[82,349,350],{"class":119}," daemon-reload\n",[82,352,353,355,357,360],{"class":84,"line":324},[82,354,49],{"class":115},[82,356,300],{"class":119},[82,358,359],{"class":119}," restart",[82,361,306],{"class":119},[22,363,364],{},"Вы можете проверить применение лимитов командой:",[73,366,368],{"className":75,"code":367,"language":77,"meta":78,"style":78},"systemctl show nginx --property=LimitNOFILE,LimitNPROC\n",[26,369,370],{"__ignoreMap":78},[82,371,372,375,378,381],{"class":84,"line":85},[82,373,374],{"class":115},"systemctl",[82,376,377],{"class":119}," show",[82,379,380],{"class":119}," nginx",[82,382,383],{"class":88}," --property=LimitNOFILE,LimitNPROC\n",[17,385,387],{"id":386},"шаг-5-применить-системные-лимиты-через-sysctl","Шаг 5: Применить системные лимиты через sysctl",[22,389,390,391,394,395,288],{},"Для глобального ограничения и увеличения максимума открытых файлов в системе настройте ",[26,392,393],{},"fs.file-max",". Откройте ",[26,396,397],{},"/etc/sysctl.conf",[73,399,401],{"className":75,"code":400,"language":77,"meta":78,"style":78},"sudo nano /etc/sysctl.conf\n",[26,402,403],{"__ignoreMap":78},[82,404,405,407,409],{"class":84,"line":85},[82,406,49],{"class":115},[82,408,231],{"class":119},[82,410,411],{"class":119}," /etc/sysctl.conf\n",[22,413,414],{},"Добавьте или измените строку:",[73,416,419],{"className":417,"code":418,"language":243,"meta":78},[241],"fs.file-max = 2097152\n",[26,420,418],{"__ignoreMap":78},[22,422,423],{},"Примените настройку:",[73,425,427],{"className":75,"code":426,"language":77,"meta":78,"style":78},"sudo sysctl -p\n",[26,428,429],{"__ignoreMap":78},[82,430,431,433,436],{"class":84,"line":85},[82,432,49],{"class":115},[82,434,435],{"class":119}," sysctl",[82,437,438],{"class":88}," -p\n",[22,440,441],{},"Этот параметр влияет на всю систему, но не отменяет пользовательские и сервисные лимиты — он задаёт верхнюю границу для всех процессов вместе.",[17,443,445],{"id":444},"проверка-результата","Проверка результата",[22,447,448],{},"Убедитесь, что лимиты применились:",[38,450,451,457,467,473],{},[41,452,453,454,205],{},"Для текущей сессии: ",[26,455,456],{},"ulimit -a",[41,458,459,460,463,464,205],{},"Для пользователя после перелогина: ",[26,461,462],{},"ulimit -n"," и ",[26,465,466],{},"ulimit -u",[41,468,469,470,205],{},"Для systemd-сервиса: ",[26,471,472],{},"systemctl show \u003Cсервис> --property=LimitNOFILE,LimitNPROC",[41,474,475,476,205],{},"Для процесса: ",[26,477,478],{},"cat /proc/\u003CPID>/limits",[22,480,481,482,485],{},"Если значения не изменились, проверьте, не переопределяются ли лимиты в ",[26,483,484],{},"/etc/security/limits.d/",", настройках PAM или drop-in-файлах systemd.",[17,487,489],{"id":488},"возможные-проблемы","Возможные проблемы",[38,491,492,502,508,520],{},[41,493,494,495,498,499,205],{},"Лимиты не применяются для графических сессий — убедитесь, что PAM читает ",[26,496,497],{},"limits.conf",", и при необходимости настройте ",[26,500,501],{},"/etc/pam.d/common-session",[41,503,504,505,507],{},"systemd игнорирует ",[26,506,497],{}," для своих сервисов — всегда используйте drop-in-файлы для systemd-юнитов.",[41,509,510,511,513,514,516,517,519],{},"Жёсткий лимит ниже нужного — повысьте его в ",[26,512,497],{}," с ключом ",[26,515,261],{}," или временно через ",[26,518,204],{}," от root.",[41,521,522,523,525,526,528],{},"Ошибки выделения памяти или файлов после увеличения ",[26,524,267],{}," — проверьте ",[26,527,393],{}," и доступную память, чтобы система могла обслуживать новые дескрипторы.",[530,531,532],"style",{},"html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":78,"searchDepth":324,"depth":324,"links":534},[535,536,537,538,539,540,541,542,543],{"id":19,"depth":324,"text":20},{"id":35,"depth":324,"text":36},{"id":67,"depth":324,"text":68},{"id":155,"depth":324,"text":156},{"id":211,"depth":324,"text":212},{"id":280,"depth":324,"text":281},{"id":386,"depth":324,"text":387},{"id":444,"depth":324,"text":445},{"id":488,"depth":324,"text":489},null,"2026-04-27 11:15:46","Пошаговая инструкция, как увеличить ulimit в Linux для процессов и пользователей. Проверенные решения для снятия ограничений файлов, памяти и процессов за 5 минут.","medium",false,"10-15 мин","md",[552,555,558,561],{"question":553,"answer":554},"Безопасно ли увеличивать nofile и nproc до десятков тысяч?","Да, если это требуется рабочим процессам и у системы достаточно памяти и файловых ресурсов. Увеличивайте постепенно и проверяйте нагрузку.",{"question":556,"answer":557},"Почему после редактирования limits.conf ничего не изменилось?","Возможно, лимиты переопределяются systemd или PAM. Проверьте настройки в /etc/systemd/system.conf, drop-in-файлах сервисов и убедитесь, что сессия перезапущена.",{"question":559,"answer":560},"В чём разница между мягким и жёстким лимитом?","Мягкий лимит — текущее ограничение, его может повышать пользователь до жёсткого. Жёсткий лимит — потолок, выше которого без прав root не подняться.",{"question":562,"answer":563},"Как проверить текущие лимиты для запущенного процесса?","Используйте cat /proc/\u003CPID>/limits — это покажет все лимиты по памяти, файлам и процессам для конкретного PID.",[565,568,571,574,577,580],{"name":566,"text":567},"Проверить текущие лимиты","Выполните ulimit -a для текущей сессии и cat /proc/self/limits для проверки в контексте процесса.",{"name":569,"text":570},"Временно увеличить лимиты","Используйте ulimit -n \u003Cзначение> для мягкого лимита файлов и ulimit -u для процессов в текущей сессии.",{"name":572,"text":573},"Настроить постоянные лимиты через limits.conf","Добавьте строки в /etc/security/limits.conf для пользователя или группы с нужными nofile и nproc.",{"name":575,"text":576},"Настроить лимиты для systemd-сервисов","Создайте drop-in-файл через systemctl edit \u003Cсервис> и укажите LimitNOFILE и LimitNPROC.",{"name":578,"text":579},"Применить системные лимиты через sysctl","Настройте fs.file-max в /etc/sysctl.conf и примените командой sysctl -p для глобального ограничения файлов.",{"name":581,"text":582},"Проверить результат","Убедитесь, что лимиты применились через ulimit -a, systemctl show \u003Cсервис> или cat /proc/\u003CPID>/limits.","PT15M",[585,586,587,588,589],"как увеличить ulimit linux","ulimit too many open files","увеличить лимит открытых файлов linux","nproc max user processes","limits.conf настройка","ru_RU",{},true,"/guides/linux/increase-ulimit","linux",[596,597,598],"/guides/linux/file-descriptor-limit","/guides/linux/systemd-service-limits","/errors/linux/enospc-error","Гайды Linux",{"title":5,"description":546},"guides/linux/increase-ulimit","Узнайте, как безопасно увеличить лимиты ulimit в Linux, чтобы избежать ошибок «Too many open files» или отказов в выделении ресурсов. Гайд с примерами для сессий, systemd и постоянных настроек.",[604,28,497,605,267,273,606,607],"Linux","systemd","sysctl","tuning","guide","-rJo-AzCVMYZNBcaM163SAXUKbOOVGkA0Hof1rU3LQU",{"data":611,"body":612},{},{"type":613,"children":614},"root",[615],{"type":616,"tag":22,"props":617,"children":618},"element",{},[619],{"type":243,"value":554},{"data":621,"body":622},{},{"type":613,"children":623},[624],{"type":616,"tag":22,"props":625,"children":626},{},[627],{"type":243,"value":557},{"data":629,"body":630},{},{"type":613,"children":631},[632],{"type":616,"tag":22,"props":633,"children":634},{},[635],{"type":243,"value":560},{"data":637,"body":638},{},{"type":613,"children":639},[640],{"type":616,"tag":22,"props":641,"children":642},{},[643,645],{"type":243,"value":644},"Используйте cat /proc/",{"type":616,"tag":646,"props":647,"children":648},"pid",{},[649],{"type":243,"value":650},"/limits — это покажет все лимиты по памяти, файлам и процессам для конкретного PID.",{"data":652,"body":653},{},{"type":613,"children":654},[655],{"type":616,"tag":22,"props":656,"children":657},{},[658],{"type":243,"value":567},{"data":660,"body":661},{},{"type":613,"children":662},[663],{"type":616,"tag":22,"props":664,"children":665},{},[666],{"type":243,"value":570},{"data":668,"body":669},{},{"type":613,"children":670},[671],{"type":616,"tag":22,"props":672,"children":673},{},[674],{"type":243,"value":573},{"data":676,"body":677},{},{"type":613,"children":678},[679],{"type":616,"tag":22,"props":680,"children":681},{},[682],{"type":243,"value":576},{"data":684,"body":685},{},{"type":613,"children":686},[687],{"type":616,"tag":22,"props":688,"children":689},{},[690],{"type":243,"value":579},{"data":692,"body":693},{},{"type":613,"children":694},[695],{"type":616,"tag":22,"props":696,"children":697},{},[698,700],{"type":243,"value":699},"Убедитесь, что лимиты применились через ulimit -a, systemctl show \u003Cсервис> или cat /proc/",{"type":616,"tag":646,"props":701,"children":702},{},[703],{"type":243,"value":704},"/limits.",[]]