[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/errors/linux/linux-disk-saturation":3,"mdc--letqyz-key":807,"mdc-4cnkuf-key":833,"mdc-wjo8f9-key":853,"mdc-hgpnfa-key":889,"mdc-kzixgo-key":921,"mdc-421ikn-key":957,"related-/errors/linux/linux-high-memory-usage,/guides/linux/linux-performance-monitoring,/errors/linux/linux-disk-full":987},{"id":4,"title":5,"appliesTo":6,"author":11,"body":12,"canonical":749,"code":750,"createdAt":751,"description":752,"difficulty":753,"draft":754,"estimatedTime":755,"extension":756,"faq":757,"howToSteps":764,"howToTotalTime":777,"image":749,"keywords":778,"locale":786,"meta":787,"navigation":315,"path":788,"platform":789,"related":790,"section":794,"seo":795,"severity":796,"stem":797,"summary":798,"tags":799,"twitterCreator":749,"twitterSite":749,"type":805,"updatedAt":751,"__hash__":806},"content_ru/errors/linux/linux-disk-saturation.md","Высокое использование диска в Linux (Disk Saturation)",[7,8,9,10],"Ubuntu 20.04/22.04","Debian 11/12","CentOS 7/8","RHEL 8/9","FixPedia Team",{"type":13,"value":14,"toc":727},"minimark",[15,19,24,32,43,47,50,78,82,87,94,117,120,176,180,189,196,202,208,212,226,229,235,238,242,254,257,276,280,284,344,348,351,362,366,369,395,399,422,426,430,545,549,685,689,706,710,723],[16,17,5],"h1",{"id":18},"высокое-использование-диска-в-linux-disk-saturation",[20,21,23],"h2",{"id":22},"что-такое-насыщение-диска","Что такое насыщение диска?",[25,26,27,31],"p",{},[28,29,30],"strong",{},"Насыщение диска"," (Disk Saturation) — это состояние, при котором накопитель не справляется с объёмом поступающих запросов на запись и чтение данных. В отличие от простой высокой загрузки, насыщение означает, что диск работает на пределе своих возможностей, и любые дополнительные операции вызывают задержки в очереди.",[33,34,39],"pre",{"className":35,"code":37,"language":38},[36],"language-text","Показатель насыщения:\n- До 50% — нормальная работа\n- 50-80% — повышенная нагрузка\n- 80-100% — критическое насыщение\n","text",[40,41,37],"code",{"__ignoreMap":42},"",[20,44,46],{"id":45},"симптомы-проблемы","Симптомы проблемы",[25,48,49],{},"При насыщении диска в Linux наблюдаются следующие признаки:",[51,52,53,60,66,72],"ul",{},[54,55,56,59],"li",{},[28,57,58],{},"Замедление системы"," — приложения долго запускаются и реагируют на действия пользователя",[54,61,62,65],{},[28,63,64],{},"Высокий iowait"," — процессор тратит много времени на ожидание операций ввода-вывода",[54,67,68,71],{},[28,69,70],{},"Зависание файловых операций"," — копирование, запись и чтение файлов происходят с задержками",[54,73,74,77],{},[28,75,76],{},"Проблемы с журналированием"," — записи в системные логи могут отставать",[20,79,81],{"id":80},"диагностика-насыщения-диска","Диагностика насыщения диска",[83,84,86],"h3",{"id":85},"_1-использование-iostat","1. Использование iostat",[25,88,89,90,93],{},"Установите пакет ",[40,91,92],{},"sysstat"," и выполните:",[33,95,99],{"className":96,"code":97,"language":98,"meta":42,"style":42},"language-bash shiki shiki-themes github-light github-dark","iostat -x 1\n","bash",[40,100,101],{"__ignoreMap":42},[102,103,106,110,114],"span",{"class":104,"line":105},"line",1,[102,107,109],{"class":108},"sScJk","iostat",[102,111,113],{"class":112},"sj4cs"," -x",[102,115,116],{"class":112}," 1\n",[25,118,119],{},"Обратите внимание на следующие метрики:",[121,122,123,139],"table",{},[124,125,126],"thead",{},[127,128,129,133,136],"tr",{},[130,131,132],"th",{},"Параметр",[130,134,135],{},"Описание",[130,137,138],{},"Критическое значение",[140,141,142,154,165],"tbody",{},[127,143,144,148,151],{},[145,146,147],"td",{},"%util",[145,149,150],{},"Процент времени CPU, занятого обработкой I/O запросов",[145,152,153],{},"> 80%",[127,155,156,159,162],{},[145,157,158],{},"r/s, w/s",[145,160,161],{},"Количество операций чтения/записи в секунду",[145,163,164],{},"Зависит от типа диска",[127,166,167,170,173],{},[145,168,169],{},"r_await, w_await",[145,171,172],{},"Среднее время ожидания операций чтения/записи",[145,174,175],{},"> 20 мс",[83,177,179],{"id":178},"_2-проверка-iowait-через-top","2. Проверка iowait через top",[33,181,183],{"className":96,"code":182,"language":98,"meta":42,"style":42},"top\n",[40,184,185],{"__ignoreMap":42},[102,186,187],{"class":104,"line":105},[102,188,182],{"class":108},[25,190,191,192,195],{},"В верхней строке отображается параметр ",[28,193,194],{},"wa"," (iowait):",[33,197,200],{"className":198,"code":199,"language":38},[36],"%Cpu(s):  5.2 us,  2.1 sy,  0.0 ni, 72.3 id, 18.4 wa,  0.0 hi,  2.0 si,  0.0 st\n",[40,201,199],{"__ignoreMap":42},[25,203,204,205,207],{},"Если ",[28,206,194],{}," превышает 20-30%, это указывает на проблемы с диском.",[83,209,211],{"id":210},"_3-мониторинг-процессов-с-iotop","3. Мониторинг процессов с iotop",[33,213,215],{"className":96,"code":214,"language":98,"meta":42,"style":42},"sudo iotop\n",[40,216,217],{"__ignoreMap":42},[102,218,219,222],{"class":104,"line":105},[102,220,221],{"class":108},"sudo",[102,223,225],{"class":224},"sZZnC"," iotop\n",[25,227,228],{},"Эта команда показывает процессы, активно использующие диск:",[33,230,233],{"className":231,"code":232,"language":38},[36],"Total DISK READ:       0.00 B/s | Total DISK WRITE:     150.23 M/s\nTID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO COMMAND\n1247 be/4 root        0.00 B/s  150.23 M/s  0.00 %  0.00 % dd if=/dev/zero of=/test\n",[40,234,232],{"__ignoreMap":42},[236,237],"in-article-ad",{},[83,239,241],{"id":240},"_4-анализ-с-помощью-vmstat","4. Анализ с помощью vmstat",[33,243,245],{"className":96,"code":244,"language":98,"meta":42,"style":42},"vmstat 1\n",[40,246,247],{"__ignoreMap":42},[102,248,249,252],{"class":104,"line":105},[102,250,251],{"class":108},"vmstat",[102,253,116],{"class":112},[25,255,256],{},"Ключевые колонки:",[51,258,259,265,271],{},[54,260,261,264],{},[28,262,263],{},"si"," (swap in) — данные, загруженные из swap",[54,266,267,270],{},[28,268,269],{},"so"," (swap out) — данные, выгруженные в swap",[54,272,273,275],{},[28,274,194],{}," — iowait",[20,277,279],{"id":278},"типичные-причины-насыщения","Типичные причины насыщения",[83,281,283],{"id":282},"_1-интенсивная-запись-логов","1. Интенсивная запись логов",[33,285,287],{"className":96,"code":286,"language":98,"meta":42,"style":42},"# Проверка размера директории логов\ndu -sh /var/log/*\n\n# Мониторинг активности записи\nsudo lsof | grep -E \"REG|/var/log\"\n",[40,288,289,295,310,317,323],{"__ignoreMap":42},[102,290,291],{"class":104,"line":105},[102,292,294],{"class":293},"sJ8bj","# Проверка размера директории логов\n",[102,296,298,301,304,307],{"class":104,"line":297},2,[102,299,300],{"class":108},"du",[102,302,303],{"class":112}," -sh",[102,305,306],{"class":224}," /var/log/",[102,308,309],{"class":112},"*\n",[102,311,313],{"class":104,"line":312},3,[102,314,316],{"emptyLinePlaceholder":315},true,"\n",[102,318,320],{"class":104,"line":319},4,[102,321,322],{"class":293},"# Мониторинг активности записи\n",[102,324,326,328,331,335,338,341],{"class":104,"line":325},5,[102,327,221],{"class":108},[102,329,330],{"class":224}," lsof",[102,332,334],{"class":333},"szBVR"," |",[102,336,337],{"class":108}," grep",[102,339,340],{"class":112}," -E",[102,342,343],{"class":224}," \"REG|/var/log\"\n",[83,345,347],{"id":346},"_2-работа-с-большими-базами-данных","2. Работа с большими базами данных",[25,349,350],{},"Базы данных PostgreSQL, MySQL, MongoDB активно используют диск при:",[51,352,353,356,359],{},[54,354,355],{},"Выполнении тяжёлых запросов",[54,357,358],{},"Проведении операций VACUUM/индексации",[54,360,361],{},"Записи транзакционных логов",[83,363,365],{"id":364},"_3-недостаток-оперативной-памяти","3. Недостаток оперативной памяти",[25,367,368],{},"При нехватке RAM система активно использует swap:",[33,370,372],{"className":96,"code":371,"language":98,"meta":42,"style":42},"# Проверка использования swap\nswapon --show\nfree -h\n",[40,373,374,379,387],{"__ignoreMap":42},[102,375,376],{"class":104,"line":105},[102,377,378],{"class":293},"# Проверка использования swap\n",[102,380,381,384],{"class":104,"line":297},[102,382,383],{"class":108},"swapon",[102,385,386],{"class":112}," --show\n",[102,388,389,392],{"class":104,"line":312},[102,390,391],{"class":108},"free",[102,393,394],{"class":112}," -h\n",[83,396,398],{"id":397},"_4-фрагментация-файловой-системы","4. Фрагментация файловой системы",[33,400,402],{"className":96,"code":401,"language":98,"meta":42,"style":42},"# Проверка фрагментации (для ext4)\nsudo fsck -n /dev/sda1\n",[40,403,404,409],{"__ignoreMap":42},[102,405,406],{"class":104,"line":105},[102,407,408],{"class":293},"# Проверка фрагментации (для ext4)\n",[102,410,411,413,416,419],{"class":104,"line":297},[102,412,221],{"class":108},[102,414,415],{"class":224}," fsck",[102,417,418],{"class":112}," -n",[102,420,421],{"class":224}," /dev/sda1\n",[20,423,425],{"id":424},"способы-устранения-проблемы","Способы устранения проблемы",[83,427,429],{"id":428},"краткосрочные-решения","Краткосрочные решения",[431,432,433,469,513],"ol",{},[54,434,435,438],{},[28,436,437],{},"Остановка ресурсоёмких процессов",[33,439,441],{"className":96,"code":440,"language":98,"meta":42,"style":42},"# Найдите процессы с высоким I/O\nps aux | awk '$8 ~ /D/ {print $0}'\n# D — состояние uninterruptible sleep (обычно ожидание I/O)\n",[40,442,443,448,464],{"__ignoreMap":42},[102,444,445],{"class":104,"line":105},[102,446,447],{"class":293},"# Найдите процессы с высоким I/O\n",[102,449,450,453,456,458,461],{"class":104,"line":297},[102,451,452],{"class":108},"ps",[102,454,455],{"class":224}," aux",[102,457,334],{"class":333},[102,459,460],{"class":108}," awk",[102,462,463],{"class":224}," '$8 ~ /D/ {print $0}'\n",[102,465,466],{"class":104,"line":312},[102,467,468],{"class":293},"# D — состояние uninterruptible sleep (обычно ожидание I/O)\n",[54,470,471,474],{},[28,472,473],{},"Очистка временных файлов",[33,475,477],{"className":96,"code":476,"language":98,"meta":42,"style":42},"# Очистка кэша пакетов\nsudo apt clean\n\n# Очистка старых логов\nsudo journalctl --vacuum-time=7d\n",[40,478,479,484,494,498,503],{"__ignoreMap":42},[102,480,481],{"class":104,"line":105},[102,482,483],{"class":293},"# Очистка кэша пакетов\n",[102,485,486,488,491],{"class":104,"line":297},[102,487,221],{"class":108},[102,489,490],{"class":224}," apt",[102,492,493],{"class":224}," clean\n",[102,495,496],{"class":104,"line":312},[102,497,316],{"emptyLinePlaceholder":315},[102,499,500],{"class":104,"line":319},[102,501,502],{"class":293},"# Очистка старых логов\n",[102,504,505,507,510],{"class":104,"line":325},[102,506,221],{"class":108},[102,508,509],{"class":224}," journalctl",[102,511,512],{"class":112}," --vacuum-time=7d\n",[54,514,515,518],{},[28,516,517],{},"Очистка swap (если много свободной памяти)",[33,519,521],{"className":96,"code":520,"language":98,"meta":42,"style":42},"sudo swapoff -a && sudo swapon -a\n",[40,522,523],{"__ignoreMap":42},[102,524,525,527,530,533,537,539,542],{"class":104,"line":105},[102,526,221],{"class":108},[102,528,529],{"class":224}," swapoff",[102,531,532],{"class":112}," -a",[102,534,536],{"class":535},"sVt8B"," && ",[102,538,221],{"class":108},[102,540,541],{"class":224}," swapon",[102,543,544],{"class":112}," -a\n",[83,546,548],{"id":547},"долгосрочные-решения","Долгосрочные решения",[431,550,551,589,650,666],{},[54,552,553,556,559,560],{},[28,554,555],{},"Переход на SSD",[557,558],"br",{},"Замена HDD на SSD значительно повышает производительность I/O:",[33,561,563],{"className":96,"code":562,"language":98,"meta":42,"style":42},"# Проверка типа диска\nlsblk -d -o NAME,TYPE,ROTA\n# ROTA=1 — HDD, ROTA=0 — SSD\n",[40,564,565,570,584],{"__ignoreMap":42},[102,566,567],{"class":104,"line":105},[102,568,569],{"class":293},"# Проверка типа диска\n",[102,571,572,575,578,581],{"class":104,"line":297},[102,573,574],{"class":108},"lsblk",[102,576,577],{"class":112}," -d",[102,579,580],{"class":112}," -o",[102,582,583],{"class":224}," NAME,TYPE,ROTA\n",[102,585,586],{"class":104,"line":312},[102,587,588],{"class":293},"# ROTA=1 — HDD, ROTA=0 — SSD\n",[54,590,591,594,596,597,600,601,604,605],{},[28,592,593],{},"Настройка I/O Scheduler",[557,595],{},"Для SSD рекомендуется использовать ",[40,598,599],{},"none"," или ",[40,602,603],{},"mq-deadline",":",[33,606,608],{"className":96,"code":607,"language":98,"meta":42,"style":42},"# Просмотр текущего планировщика\ncat /sys/block/sda/queue/scheduler\n\n# Установка планировщика\necho \"mq-deadline\" | sudo tee /sys/block/sda/queue/scheduler\n",[40,609,610,615,623,627,632],{"__ignoreMap":42},[102,611,612],{"class":104,"line":105},[102,613,614],{"class":293},"# Просмотр текущего планировщика\n",[102,616,617,620],{"class":104,"line":297},[102,618,619],{"class":108},"cat",[102,621,622],{"class":224}," /sys/block/sda/queue/scheduler\n",[102,624,625],{"class":104,"line":312},[102,626,316],{"emptyLinePlaceholder":315},[102,628,629],{"class":104,"line":319},[102,630,631],{"class":293},"# Установка планировщика\n",[102,633,634,637,640,642,645,648],{"class":104,"line":325},[102,635,636],{"class":112},"echo",[102,638,639],{"class":224}," \"mq-deadline\"",[102,641,334],{"class":333},[102,643,644],{"class":108}," sudo",[102,646,647],{"class":224}," tee",[102,649,622],{"class":224},[54,651,652,655],{},[28,653,654],{},"Оптимизация приложений",[51,656,657,660,663],{},[54,658,659],{},"Настройте буферизацию и кэширование в приложениях",[54,661,662],{},"Используйте асинхронные операции записи",[54,664,665],{},"Разнесите операции чтения и записи по времени",[54,667,668,671,673,674],{},[28,669,670],{},"Мониторинг и алертинг",[557,672],{},"Настройте систему мониторинга (Prometheus, Zabbix, Nagios) для отслеживания:",[51,675,676,679,682],{},[54,677,678],{},"Процента использования диска (%util)",[54,680,681],{},"Времени ожидания I/O (await)",[54,683,684],{},"Значения iowait",[20,686,688],{"id":687},"профилактика","Профилактика",[51,690,691,694,697,700,703],{},[54,692,693],{},"Регулярно очищайте логи и временные файлы",[54,695,696],{},"Следите за свободным местом на диске",[54,698,699],{},"Настройте ротацию логов",[54,701,702],{},"Используйте мониторинг для раннего обнаружения проблем",[54,704,705],{},"Планируйте ёмкость хранилища с запасом 20-30%",[20,707,709],{"id":708},"заключение","Заключение",[25,711,712,713,715,716,719,720,722],{},"Насыщение диска — серьёзная проблема, влияющая на производительность всей системы. Своевременная диагностика с помощью ",[40,714,109],{},", ",[40,717,718],{},"iotop"," и ",[40,721,251],{}," позволяет быстро определить причину высокой нагрузки. Комплексный подход, включающий как немедленные меры, так и долгосрочную оптимизацию (переход на SSD, настройка планировщика, оптимизация приложений), поможет решить проблему и предотвратить её повторное возникновение.",[724,725,726],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}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 .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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":42,"searchDepth":297,"depth":297,"links":728},[729,730,731,737,743,747,748],{"id":22,"depth":297,"text":23},{"id":45,"depth":297,"text":46},{"id":80,"depth":297,"text":81,"children":732},[733,734,735,736],{"id":85,"depth":312,"text":86},{"id":178,"depth":312,"text":179},{"id":210,"depth":312,"text":211},{"id":240,"depth":312,"text":241},{"id":278,"depth":297,"text":279,"children":738},[739,740,741,742],{"id":282,"depth":312,"text":283},{"id":346,"depth":312,"text":347},{"id":364,"depth":312,"text":365},{"id":397,"depth":312,"text":398},{"id":424,"depth":297,"text":425,"children":744},[745,746],{"id":428,"depth":312,"text":429},{"id":547,"depth":312,"text":548},{"id":687,"depth":297,"text":688},{"id":708,"depth":297,"text":709},null,"DSK-SAT-01","2026-02-13 20:48:17","Руководство по диагностике и устранению проблемы насыщения диска в Linux-системах. Определение процессов, активно записывающих данные на диск.","medium",false,"15-45 мин","md",[758,761],{"question":759,"answer":760},"Как быстро проверить насыщение диска?","Используйте команду `iostat -x 1` для просмотра утилизации устройств и `%util` — если значение близко к 100%, это указывает на насыщение диска.",{"question":762,"answer":763},"Чем отличается насыщение диска от высокой загрузки CPU iowait?","**iowait** — это время, когда CPU простаивает, ожидая завершения операций ввода-вывода. **Насыщение диска** — это состояние, при котором диск не может обработать все поступающие запросы, даже если CPU не перегружен.",[765,768,771,774],{"name":766,"text":767},"Определение насыщения диска","Используйте утилиту `iostat` из пакета `sysstat`. Запустите `iostat -x 1` и обратите внимание на колонку **%util** — если она показывает значения выше 80-90%, диск насыщен.",{"name":769,"text":770},"Поиск процессов, нагружающих диск","Примените команду `iotop` для мониторинга процессов в реальном времени. Для однократного снимка используйте `iotop -b -o` или комбинацию `ps aux | sort -k7 -nr | head -10`.",{"name":772,"text":773},"Анализwait времени","Проверьте значение **iowait** с помощью команды `top` или `vmstat 1`. Если **wa** превышает 20-30%, это свидетельствует о проблемах с диском.",{"name":775,"text":776},"Оптимизация производительности","Рассмотрите возможность переноса данных на SSD, настройку **I/O scheduler** (например, `mq-deadline` для SSD), использование **RAID** для балансировки нагрузки.","PT35M",[779,780,781,782,783,784,785],"linux диск насыщение","высокое использование диска linux","iostat disk saturation","linux iowait high","диагностика диска linux","io wait linux","оптимизация диска linux","ru_RU",{},"/errors/linux/linux-disk-saturation","linux",[791,792,793],"/errors/linux/linux-high-memory-usage","/guides/linux/linux-performance-monitoring","/errors/linux/linux-disk-full","Ошибки Linux",{"title":5,"description":752},"high","errors/linux/linux-disk-saturation","Проблема высокой насыщенности диска (disk saturation) возникает, когда операции ввода-вывода достигают предела пропускной способности накопителя. Это приводит к замедлению системы и проблемам с производительностью.",[789,800,801,802,803,804],"disk","performance","io","storage","troubleshooting","error","WKR2mrlZQ4JDzPUxFdV8i3IrP1D6AAd6ZnyQPQJ7NU8",{"data":808,"body":809},{},{"type":810,"children":811},"root",[812],{"type":813,"tag":25,"props":814,"children":815},"element",{},[816,818,824,826,831],{"type":38,"value":817},"Используйте команду ",{"type":813,"tag":40,"props":819,"children":821},{"className":820},[],[822],{"type":38,"value":823},"iostat -x 1",{"type":38,"value":825}," для просмотра утилизации устройств и ",{"type":813,"tag":40,"props":827,"children":829},{"className":828},[],[830],{"type":38,"value":147},{"type":38,"value":832}," — если значение близко к 100%, это указывает на насыщение диска.",{"data":834,"body":835},{},{"type":810,"children":836},[837],{"type":813,"tag":25,"props":838,"children":839},{},[840,845,847,851],{"type":813,"tag":28,"props":841,"children":842},{},[843],{"type":38,"value":844},"iowait",{"type":38,"value":846}," — это время, когда CPU простаивает, ожидая завершения операций ввода-вывода. ",{"type":813,"tag":28,"props":848,"children":849},{},[850],{"type":38,"value":30},{"type":38,"value":852}," — это состояние, при котором диск не может обработать все поступающие запросы, даже если CPU не перегружен.",{"data":854,"body":855},{},{"type":810,"children":856},[857],{"type":813,"tag":25,"props":858,"children":859},{},[860,862,867,869,874,876,881,883,887],{"type":38,"value":861},"Используйте утилиту ",{"type":813,"tag":40,"props":863,"children":865},{"className":864},[],[866],{"type":38,"value":109},{"type":38,"value":868}," из пакета ",{"type":813,"tag":40,"props":870,"children":872},{"className":871},[],[873],{"type":38,"value":92},{"type":38,"value":875},". Запустите ",{"type":813,"tag":40,"props":877,"children":879},{"className":878},[],[880],{"type":38,"value":823},{"type":38,"value":882}," и обратите внимание на колонку ",{"type":813,"tag":28,"props":884,"children":885},{},[886],{"type":38,"value":147},{"type":38,"value":888}," — если она показывает значения выше 80-90%, диск насыщен.",{"data":890,"body":891},{},{"type":810,"children":892},[893],{"type":813,"tag":25,"props":894,"children":895},{},[896,898,903,905,911,913,919],{"type":38,"value":897},"Примените команду ",{"type":813,"tag":40,"props":899,"children":901},{"className":900},[],[902],{"type":38,"value":718},{"type":38,"value":904}," для мониторинга процессов в реальном времени. Для однократного снимка используйте ",{"type":813,"tag":40,"props":906,"children":908},{"className":907},[],[909],{"type":38,"value":910},"iotop -b -o",{"type":38,"value":912}," или комбинацию ",{"type":813,"tag":40,"props":914,"children":916},{"className":915},[],[917],{"type":38,"value":918},"ps aux | sort -k7 -nr | head -10",{"type":38,"value":920},".",{"data":922,"body":923},{},{"type":810,"children":924},[925],{"type":813,"tag":25,"props":926,"children":927},{},[928,930,934,936,942,943,949,951,955],{"type":38,"value":929},"Проверьте значение ",{"type":813,"tag":28,"props":931,"children":932},{},[933],{"type":38,"value":844},{"type":38,"value":935}," с помощью команды ",{"type":813,"tag":40,"props":937,"children":939},{"className":938},[],[940],{"type":38,"value":941},"top",{"type":38,"value":600},{"type":813,"tag":40,"props":944,"children":946},{"className":945},[],[947],{"type":38,"value":948},"vmstat 1",{"type":38,"value":950},". Если ",{"type":813,"tag":28,"props":952,"children":953},{},[954],{"type":38,"value":194},{"type":38,"value":956}," превышает 20-30%, это свидетельствует о проблемах с диском.",{"data":958,"body":959},{},{"type":810,"children":960},[961],{"type":813,"tag":25,"props":962,"children":963},{},[964,966,971,973,978,980,985],{"type":38,"value":965},"Рассмотрите возможность переноса данных на SSD, настройку ",{"type":813,"tag":28,"props":967,"children":968},{},[969],{"type":38,"value":970},"I/O scheduler",{"type":38,"value":972}," (например, ",{"type":813,"tag":40,"props":974,"children":976},{"className":975},[],[977],{"type":38,"value":603},{"type":38,"value":979}," для SSD), использование ",{"type":813,"tag":28,"props":981,"children":982},{},[983],{"type":38,"value":984},"RAID",{"type":38,"value":986}," для балансировки нагрузки.",[988,1872,3184],{"id":989,"title":990,"appliesTo":991,"author":11,"body":994,"canonical":749,"code":1823,"createdAt":1824,"description":1825,"difficulty":753,"draft":754,"estimatedTime":1826,"extension":756,"faq":1827,"howToSteps":1837,"howToTotalTime":777,"image":749,"keywords":1850,"locale":786,"meta":1859,"navigation":315,"path":791,"platform":789,"related":1860,"section":794,"seo":1863,"severity":796,"stem":1864,"summary":1865,"tags":1866,"twitterCreator":749,"twitterSite":749,"type":805,"updatedAt":1824,"__hash__":1871},"content_ru/errors/linux/linux-high-memory-usage.md","Высокая нагрузка на память в Linux: причины и решения",[7,8,9,992,993],"Rocky Linux 8/9","Альт Линукс",{"type":13,"value":995,"toc":1797},[996,999,1003,1010,1012,1015,1055,1059,1063,1066,1077,1080,1086,1099,1103,1106,1130,1133,1165,1168,1192,1195,1229,1233,1236,1245,1247,1255,1272,1276,1279,1289,1298,1309,1312,1314,1318,1322,1325,1329,1332,1336,1339,1343,1350,1354,1357,1361,1365,1370,1440,1443,1463,1467,1476,1504,1507,1511,1611,1615,1618,1650,1657,1660,1677,1681,1684,1752,1756,1781,1783,1791,1794],[16,997,990],{"id":998},"высокая-нагрузка-на-память-в-linux-причины-и-решения",[20,1000,1002],{"id":1001},"введение","Введение",[25,1004,1005,1006,1009],{},"Проблема высокого потребления оперативной памяти (ОЗУ) в Linux — одна из наиболее распространённых причин замедления работы системы и сбоев приложений. Когда оперативная память исчерпывается, ядро Linux активирует механизм ",[28,1007,1008],{},"OOM Killer"," (Out of Memory Killer), который принудительно завершает процессы для освобождения ресурсов. В этой статье рассматриваются методы диагностики, анализа и устранения проблем с высокой нагрузкой на память.",[20,1011,46],{"id":45},[25,1013,1014],{},"Прежде чем переходить к диагностике, важно распознать основные признаки высокого потребления памяти:",[51,1016,1017,1021,1027,1043,1049],{},[54,1018,1019,59],{},[28,1020,58],{},[54,1022,1023,1026],{},[28,1024,1025],{},"Частые зависания"," — система перестаёт отвечать на запросы",[54,1028,1029,1032,1033,1036,1037,600,1040],{},[28,1030,1031],{},"Сообщения в логах"," — появление записей типа ",[40,1034,1035],{},"Out of memory: Kill process"," в ",[40,1038,1039],{},"/var/log/messages",[40,1041,1042],{},"dmesg",[54,1044,1045,1048],{},[28,1046,1047],{},"Активное использование swap"," — система активно работает с разделом подкачки",[54,1050,1051,1054],{},[28,1052,1053],{},"Ошибки приложений"," — программы аварийно завершаются с сообщениями о нехватке памяти",[20,1056,1058],{"id":1057},"диагностика-состояния-памяти","Диагностика состояния памяти",[83,1060,1062],{"id":1061},"базовая-проверка-с-помощью-free","Базовая проверка с помощью free",[25,1064,1065],{},"Первая команда, которую следует выполнить при подозрении на проблемы с памятью:",[33,1067,1069],{"className":96,"code":1068,"language":98,"meta":42,"style":42},"free -h\n",[40,1070,1071],{"__ignoreMap":42},[102,1072,1073,1075],{"class":104,"line":105},[102,1074,391],{"class":108},[102,1076,394],{"class":112},[25,1078,1079],{},"Пример вывода:",[33,1081,1084],{"className":1082,"code":1083,"language":38},[36],"              total        used        free      shared  buff/cache   available\nMem:           15Gi       8.2Gi       2.1Gi       345Mi       4.6Gi       6.3Gi\nSwap:         2.0Gi       1.5Gi       500Mi\n",[40,1085,1083],{"__ignoreMap":42},[25,1087,1088,1091,1092,1095,1096,920],{},[28,1089,1090],{},"Важно понимать:"," колонка ",[40,1093,1094],{},"buff/cache"," показывает память, используемую системой для кэширования файлов. Это не проблема — Linux автоматически освободит эту память, когда приложениям потребуется больше ОЗУ. Ориентируйтесь на колонку ",[40,1097,1098],{},"available",[83,1100,1102],{"id":1101},"определение-процессов-потребляющих-память","Определение процессов, потребляющих память",[25,1104,1105],{},"Для поиска процессов, использующих больше всего оперативной памяти, используйте:",[33,1107,1109],{"className":96,"code":1108,"language":98,"meta":42,"style":42},"ps aux --sort=-%mem | head -n 15\n",[40,1110,1111],{"__ignoreMap":42},[102,1112,1113,1115,1117,1120,1122,1125,1127],{"class":104,"line":105},[102,1114,452],{"class":108},[102,1116,455],{"class":224},[102,1118,1119],{"class":112}," --sort=-%mem",[102,1121,334],{"class":333},[102,1123,1124],{"class":108}," head",[102,1126,418],{"class":112},[102,1128,1129],{"class":112}," 15\n",[25,1131,1132],{},"Вывод покажет:",[51,1134,1135,1141,1147,1153,1159],{},[54,1136,1137,1140],{},[28,1138,1139],{},"USER"," — владелец процесса",[54,1142,1143,1146],{},[28,1144,1145],{},"PID"," — идентификатор процесса",[54,1148,1149,1152],{},[28,1150,1151],{},"%MEM"," — процент использования ОЗУ",[54,1154,1155,1158],{},[28,1156,1157],{},"RSS"," — размер резидентной части процесса (в Кб)",[54,1160,1161,1164],{},[28,1162,1163],{},"COMMAND"," — команда запуска процесса",[25,1166,1167],{},"Для получения информации о конкретном процессе:",[33,1169,1171],{"className":96,"code":1170,"language":98,"meta":42,"style":42},"pmap -x \u003CPID>\n",[40,1172,1173],{"__ignoreMap":42},[102,1174,1175,1178,1180,1183,1186,1189],{"class":104,"line":105},[102,1176,1177],{"class":108},"pmap",[102,1179,113],{"class":112},[102,1181,1182],{"class":333}," \u003C",[102,1184,1185],{"class":224},"PI",[102,1187,1188],{"class":535},"D",[102,1190,1191],{"class":333},">\n",[25,1193,1194],{},"или",[33,1196,1198],{"className":96,"code":1197,"language":98,"meta":42,"style":42},"cat /proc/\u003CPID>/status | grep -E \"VmRSS|VmSize|VmData\"\n",[40,1199,1200],{"__ignoreMap":42},[102,1201,1202,1204,1207,1210,1212,1214,1217,1220,1222,1224,1226],{"class":104,"line":105},[102,1203,619],{"class":108},[102,1205,1206],{"class":224}," /proc/",[102,1208,1209],{"class":333},"\u003C",[102,1211,1185],{"class":224},[102,1213,1188],{"class":535},[102,1215,1216],{"class":333},">",[102,1218,1219],{"class":224},"/status",[102,1221,334],{"class":333},[102,1223,337],{"class":108},[102,1225,340],{"class":112},[102,1227,1228],{"class":224}," \"VmRSS|VmSize|VmData\"\n",[83,1230,1232],{"id":1231},"мониторинг-в-реальном-времени","Мониторинг в реальном времени",[25,1234,1235],{},"Интерактивные утилиты для мониторинга:",[33,1237,1239],{"className":96,"code":1238,"language":98,"meta":42,"style":42},"htop\n",[40,1240,1241],{"__ignoreMap":42},[102,1242,1243],{"class":104,"line":105},[102,1244,1238],{"class":108},[25,1246,1194],{},[33,1248,1249],{"className":96,"code":182,"language":98,"meta":42,"style":42},[40,1250,1251],{"__ignoreMap":42},[102,1252,1253],{"class":104,"line":105},[102,1254,182],{"class":108},[25,1256,1257,1258,1261,1262,1265,1266,1268,1269,1271],{},"В ",[40,1259,1260],{},"htop"," нажмите ",[28,1263,1264],{},"M"," для сортировки по использованию памяти. В ",[40,1267,941],{}," используйте команду ",[28,1270,1264],{}," после запуска.",[83,1273,1275],{"id":1274},"проверка-использования-swap","Проверка использования swap",[25,1277,1278],{},"Активное использование swap-пространства указывает на нехватку оперативной памяти:",[33,1280,1281],{"className":96,"code":244,"language":98,"meta":42,"style":42},[40,1282,1283],{"__ignoreMap":42},[102,1284,1285,1287],{"class":104,"line":105},[102,1286,251],{"class":108},[102,1288,116],{"class":112},[25,1290,1291,1292,1294,1295,1297],{},"Обратите внимание на колонку ",[28,1293,263],{}," (swap in) и ",[28,1296,269],{}," (swap out). Значения, отличные от нуля в течение длительного времени, сигнализируют о проблеме.",[33,1299,1301],{"className":96,"code":1300,"language":98,"meta":42,"style":42},"swapon --show\n",[40,1302,1303],{"__ignoreMap":42},[102,1304,1305,1307],{"class":104,"line":105},[102,1306,383],{"class":108},[102,1308,386],{"class":112},[25,1310,1311],{},"Эта команда покажет все swap-разделы и файлы.",[236,1313],{},[20,1315,1317],{"id":1316},"типичные-причины-высокого-потребления-памяти","Типичные причины высокого потребления памяти",[83,1319,1321],{"id":1320},"_1-утечки-памяти-в-приложениях","1. Утечки памяти в приложениях",[25,1323,1324],{},"Некорректно написанные программы могут выделять память и не освобождать её. Определить утечку можно постепенным ростом потребления памяти конкретным процессом во времени.",[83,1326,1328],{"id":1327},"_2-слишком-большое-количество-запущенных-процессов","2. Слишком большое количество запущенных процессов",[25,1330,1331],{},"Множество фоновых процессов, запущенных автоматически, могут суммарно потреблять значительный объём ОЗУ.",[83,1333,1335],{"id":1334},"_3-недостаточный-объём-оперативной-памяти","3. Недостаточный объём оперативной памяти",[25,1337,1338],{},"Для современных задач может требоваться больше ОЗУ, чем установлено в системе.",[83,1340,1342],{"id":1341},"_4-некорректные-настройки-свопинга","4. Некорректные настройки свопинга",[25,1344,1345,1346,1349],{},"Параметр ",[40,1347,1348],{},"vm.swappiness"," определяет агрессивность использования swap. Значение по умолчанию — 60, что может быть слишком высоким для серверов.",[83,1351,1353],{"id":1352},"_5-кэширование-файловой-системы","5. Кэширование файловой системы",[25,1355,1356],{},"Linux активно кэширует файлы в памяти. При некорректной настройке это может приводить к проблемам.",[20,1358,1360],{"id":1359},"методы-решения-проблем","Методы решения проблем",[83,1362,1364],{"id":1363},"оптимизация-параметров-ядра","Оптимизация параметров ядра",[25,1366,1367,1368,604],{},"Настройка параметра ",[40,1369,1348],{},[33,1371,1373],{"className":96,"code":1372,"language":98,"meta":42,"style":42},"# Просмотр текущего значения\ncat /proc/sys/vm/swappiness\n\n# Временное изменение (до перезагрузки)\nsysctl vm.swappiness=10\n\n# Постоянное изменение\necho \"vm.swappiness=10\" >> /etc/sysctl.conf\nsysctl -p\n",[40,1374,1375,1380,1387,1391,1396,1407,1412,1418,1432],{"__ignoreMap":42},[102,1376,1377],{"class":104,"line":105},[102,1378,1379],{"class":293},"# Просмотр текущего значения\n",[102,1381,1382,1384],{"class":104,"line":297},[102,1383,619],{"class":108},[102,1385,1386],{"class":224}," /proc/sys/vm/swappiness\n",[102,1388,1389],{"class":104,"line":312},[102,1390,316],{"emptyLinePlaceholder":315},[102,1392,1393],{"class":104,"line":319},[102,1394,1395],{"class":293},"# Временное изменение (до перезагрузки)\n",[102,1397,1398,1401,1404],{"class":104,"line":325},[102,1399,1400],{"class":108},"sysctl",[102,1402,1403],{"class":224}," vm.swappiness=",[102,1405,1406],{"class":112},"10\n",[102,1408,1410],{"class":104,"line":1409},6,[102,1411,316],{"emptyLinePlaceholder":315},[102,1413,1415],{"class":104,"line":1414},7,[102,1416,1417],{"class":293},"# Постоянное изменение\n",[102,1419,1421,1423,1426,1429],{"class":104,"line":1420},8,[102,1422,636],{"class":112},[102,1424,1425],{"class":224}," \"vm.swappiness=10\"",[102,1427,1428],{"class":333}," >>",[102,1430,1431],{"class":224}," /etc/sysctl.conf\n",[102,1433,1435,1437],{"class":104,"line":1434},9,[102,1436,1400],{"class":108},[102,1438,1439],{"class":112}," -p\n",[25,1441,1442],{},"Рекомендуемые значения:",[51,1444,1445,1451,1457],{},[54,1446,1447,1450],{},[28,1448,1449],{},"10-30"," — для серверов с достаточным объёмом ОЗУ",[54,1452,1453,1456],{},[28,1454,1455],{},"60"," — значение по умолчанию",[54,1458,1459,1462],{},[28,1460,1461],{},"90-100"," — для систем с очень малым объёмом ОЗУ",[83,1464,1466],{"id":1465},"очистка-кэша-страниц","Очистка кэша страниц",[1468,1469,1470],"blockquote",{},[25,1471,1472,1475],{},[28,1473,1474],{},"Внимание:"," Не выполняйте на production-серверах без крайней необходимости.",[33,1477,1479],{"className":96,"code":1478,"language":98,"meta":42,"style":42},"# Очистка кэша страниц (только с правами root)\nsync && echo 3 > /proc/sys/vm/drop_caches\n",[40,1480,1481,1486],{"__ignoreMap":42},[102,1482,1483],{"class":104,"line":105},[102,1484,1485],{"class":293},"# Очистка кэша страниц (только с правами root)\n",[102,1487,1488,1491,1493,1495,1498,1501],{"class":104,"line":297},[102,1489,1490],{"class":108},"sync",[102,1492,536],{"class":535},[102,1494,636],{"class":112},[102,1496,1497],{"class":112}," 3",[102,1499,1500],{"class":333}," >",[102,1502,1503],{"class":224}," /proc/sys/vm/drop_caches\n",[25,1505,1506],{},"Эта команда очистит кэш страниц, dentries и inode. Эффект будет временным.",[83,1508,1510],{"id":1509},"оптимизация-запущенных-процессов","Оптимизация запущенных процессов",[431,1512,1513,1537,1564],{},[54,1514,1515,1518],{},[28,1516,1517],{},"Определите ненужные процессы:",[33,1519,1521],{"className":96,"code":1520,"language":98,"meta":42,"style":42},"systemctl list-units --type=service --state=running\n",[40,1522,1523],{"__ignoreMap":42},[102,1524,1525,1528,1531,1534],{"class":104,"line":105},[102,1526,1527],{"class":108},"systemctl",[102,1529,1530],{"class":224}," list-units",[102,1532,1533],{"class":112}," --type=service",[102,1535,1536],{"class":112}," --state=running\n",[54,1538,1539,1542],{},[28,1540,1541],{},"Отключите автозапуск ненужных сервисов:",[33,1543,1545],{"className":96,"code":1544,"language":98,"meta":42,"style":42},"systemctl disable \u003Cservice_name>\n",[40,1546,1547],{"__ignoreMap":42},[102,1548,1549,1551,1554,1556,1559,1562],{"class":104,"line":105},[102,1550,1527],{"class":108},[102,1552,1553],{"class":224}," disable",[102,1555,1182],{"class":333},[102,1557,1558],{"class":224},"service_nam",[102,1560,1561],{"class":535},"e",[102,1563,1191],{"class":333},[54,1565,1566,1569],{},[28,1567,1568],{},"Остановите процессы вручную:",[33,1570,1572],{"className":96,"code":1571,"language":98,"meta":42,"style":42},"kill -15 \u003CPID>  # мягкое завершение\nkill -9 \u003CPID>   # принудительное завершение (если не помогает)\n",[40,1573,1574,1593],{"__ignoreMap":42},[102,1575,1576,1579,1582,1584,1586,1588,1590],{"class":104,"line":105},[102,1577,1578],{"class":112},"kill",[102,1580,1581],{"class":112}," -15",[102,1583,1182],{"class":333},[102,1585,1185],{"class":224},[102,1587,1188],{"class":535},[102,1589,1216],{"class":333},[102,1591,1592],{"class":293},"  # мягкое завершение\n",[102,1594,1595,1597,1600,1602,1604,1606,1608],{"class":104,"line":297},[102,1596,1578],{"class":112},[102,1598,1599],{"class":112}," -9",[102,1601,1182],{"class":333},[102,1603,1185],{"class":224},[102,1605,1188],{"class":535},[102,1607,1216],{"class":333},[102,1609,1610],{"class":293},"   # принудительное завершение (если не помогает)\n",[83,1612,1614],{"id":1613},"настройка-oom-killer","Настройка OOM Killer",[25,1616,1617],{},"Вы можете настроить поведение OOM Killer для отдельных процессов:",[33,1619,1621],{"className":96,"code":1620,"language":98,"meta":42,"style":42},"# Установить приоритет OOM для процесса (от -17 до 0)\necho -17 > /proc/\u003CPID>/oom_score_adj\n",[40,1622,1623,1628],{"__ignoreMap":42},[102,1624,1625],{"class":104,"line":105},[102,1626,1627],{"class":293},"# Установить приоритет OOM для процесса (от -17 до 0)\n",[102,1629,1630,1632,1635,1637,1639,1641,1643,1645,1647],{"class":104,"line":297},[102,1631,636],{"class":112},[102,1633,1634],{"class":112}," -17",[102,1636,1500],{"class":333},[102,1638,1206],{"class":224},[102,1640,1209],{"class":333},[102,1642,1185],{"class":224},[102,1644,1188],{"class":535},[102,1646,1216],{"class":333},[102,1648,1649],{"class":224},"/oom_score_adj\n",[25,1651,1652,1653,1656],{},"Значение ",[28,1654,1655],{},"-17"," полностью исключает процесс из завершения OOM Killer.",[25,1658,1659],{},"Для демонов и важных сервисов добавьте в systemd-юнит:",[33,1661,1665],{"className":1662,"code":1663,"language":1664,"meta":42,"style":42},"language-ini shiki shiki-themes github-light github-dark","[Service]\nOOMScoreAdjust=-1000\n","ini",[40,1666,1667,1672],{"__ignoreMap":42},[102,1668,1669],{"class":104,"line":105},[102,1670,1671],{},"[Service]\n",[102,1673,1674],{"class":104,"line":297},[102,1675,1676],{},"OOMScoreAdjust=-1000\n",[83,1678,1680],{"id":1679},"увеличение-swap-пространства","Увеличение swap-пространства",[25,1682,1683],{},"Если физической памяти недостаточно, создайте дополнительный swap-файл:",[33,1685,1687],{"className":96,"code":1686,"language":98,"meta":42,"style":42},"# Создание файла подкачки на 2 Гб\nfallocate -l 2G /swapfile\nchmod 600 /swapfile\nmkswap /swapfile\nswapon /swapfile\n\n# Добавление в fstab для постоянного монтирования\necho '/swapfile none swap sw 0 0' >> /etc/fstab\n",[40,1688,1689,1694,1708,1718,1725,1731,1735,1740],{"__ignoreMap":42},[102,1690,1691],{"class":104,"line":105},[102,1692,1693],{"class":293},"# Создание файла подкачки на 2 Гб\n",[102,1695,1696,1699,1702,1705],{"class":104,"line":297},[102,1697,1698],{"class":108},"fallocate",[102,1700,1701],{"class":112}," -l",[102,1703,1704],{"class":224}," 2G",[102,1706,1707],{"class":224}," /swapfile\n",[102,1709,1710,1713,1716],{"class":104,"line":312},[102,1711,1712],{"class":108},"chmod",[102,1714,1715],{"class":112}," 600",[102,1717,1707],{"class":224},[102,1719,1720,1723],{"class":104,"line":319},[102,1721,1722],{"class":108},"mkswap",[102,1724,1707],{"class":224},[102,1726,1727,1729],{"class":104,"line":325},[102,1728,383],{"class":108},[102,1730,1707],{"class":224},[102,1732,1733],{"class":104,"line":1409},[102,1734,316],{"emptyLinePlaceholder":315},[102,1736,1737],{"class":104,"line":1414},[102,1738,1739],{"class":293},"# Добавление в fstab для постоянного монтирования\n",[102,1741,1742,1744,1747,1749],{"class":104,"line":1420},[102,1743,636],{"class":112},[102,1745,1746],{"class":224}," '/swapfile none swap sw 0 0'",[102,1748,1428],{"class":333},[102,1750,1751],{"class":224}," /etc/fstab\n",[20,1753,1755],{"id":1754},"профилактика-проблем-с-памятью","Профилактика проблем с памятью",[431,1757,1758,1764,1769,1775],{},[54,1759,1760,1763],{},[28,1761,1762],{},"Регулярный мониторинг"," — настройте системные метрики для отслеживания использования памяти",[54,1765,1766,1768],{},[28,1767,654],{}," — используйте профилировщики для поиска утечек памяти в коде",[54,1770,1771,1774],{},[28,1772,1773],{},"Правильное планирование"," — выбирайте объём ОЗУ в соответствии с требованиями рабочих нагрузок",[54,1776,1777,1780],{},[28,1778,1779],{},"Обновление системы"," — используйте актуальные версии ядра и системных библиотек",[20,1782,709],{"id":708},[25,1784,1785,1786,719,1788,1790],{},"Высокое потребление памяти в Linux — комплексная проблема, требующая систематического подхода к диагностике. Начните с мониторинга состояния системы с помощью команд ",[40,1787,391],{},[40,1789,452],{},", определите процессы-«пожиратели» памяти и оптимизируйте их работу. Настройка параметров ядра и правильная конфигурация swap помогут предотвратить проблемы в будущем.",[25,1792,1793],{},"Если стандартные методы не помогают, рассмотрите возможность увеличения физической оперативной памяти или оптимизации архитектуры приложений.",[724,1795,1796],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}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 .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}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":42,"searchDepth":297,"depth":297,"links":1798},[1799,1800,1801,1807,1814,1821,1822],{"id":1001,"depth":297,"text":1002},{"id":45,"depth":297,"text":46},{"id":1057,"depth":297,"text":1058,"children":1802},[1803,1804,1805,1806],{"id":1061,"depth":312,"text":1062},{"id":1101,"depth":312,"text":1102},{"id":1231,"depth":312,"text":1232},{"id":1274,"depth":312,"text":1275},{"id":1316,"depth":297,"text":1317,"children":1808},[1809,1810,1811,1812,1813],{"id":1320,"depth":312,"text":1321},{"id":1327,"depth":312,"text":1328},{"id":1334,"depth":312,"text":1335},{"id":1341,"depth":312,"text":1342},{"id":1352,"depth":312,"text":1353},{"id":1359,"depth":297,"text":1360,"children":1815},[1816,1817,1818,1819,1820],{"id":1363,"depth":312,"text":1364},{"id":1465,"depth":312,"text":1466},{"id":1509,"depth":312,"text":1510},{"id":1613,"depth":312,"text":1614},{"id":1679,"depth":312,"text":1680},{"id":1754,"depth":297,"text":1755},{"id":708,"depth":297,"text":709},"MEM-HIGH","2026-02-13 20:51:01","Подробное руководство по диагностике и устранению проблем с высоким потреблением памяти в Linux. Определение процессов, использующих много ОЗУ, и методы оптимизации.","25-40 мин",[1828,1831,1834],{"question":1829,"answer":1830},"Почему Linux показывает 100% использование памяти, хотя я не запускал тяжёлые приложения?","Linux использует принцип **cached memory** — система кэширует часто используемые данные в свободной оперативной памяти для ускорения доступа. Это не является проблемой: память будет освобождена при необходимости приложениями. Используйте команду `free -h` и смотрите строку **available**, а не **used**.",{"question":1832,"answer":1833},"Как найти процесс, который потребляет больше всего памяти?","Используйте команду `ps aux --sort=-%mem | head -n 10` для просмотра топ-10 процессов по потреблению памяти. Также можно использовать интерактивные утилиты `htop` или `top`.",{"question":1835,"answer":1836},"Что делать, если система уходит в своп (swap)?","Если система активно использует swap, это сигнал о нехватке ОЗУ. Решения: добавить оперативную память, оптимизировать работу приложений, настроить параметр **vm.swappiness** (значение от 0 до 100, чем меньше — тем меньше система использует swap), или увеличить размер swap-раздела.",[1838,1841,1844,1847],{"name":1839,"text":1840},"Проверить текущее состояние памяти","Выполните команду `free -h` для получения общей картины использования памяти. Обратите внимание на колонку **available** — это реально доступная память для приложений.",{"name":1842,"text":1843},"Определить топ процессов по памяти","Используйте `ps aux --sort=-%mem | head -n 15` для вывода списка процессов, потребляющих больше всего оперативной памяти.",{"name":1845,"text":1846},"Проанализировать использование swap","Проверьте активность свопа командой `vmstat 1` или `sar -S 1 5`. Частое использование swap указывает на нехватку ОЗУ.",{"name":1848,"text":1849},"Оптимизировать параметры системы","Настройте `vm.swappiness` (рекомендуется 10-30 для серверов), очистите кэш страниц `sync && echo 3 > /proc/sys/vm/drop_caches` (с осторожностью на production-системах).",[1851,1852,1853,1854,1855,1856,1857,1858],"linux высокая нагрузка на память","linux oom killer","высокое потребление оперативной памяти linux","free memory linux","top memory linux","ps aux memory usage","linux swap usage","очистка памяти linux",{},[1861,792,1862],"/errors/linux/linux-out-of-memory-killer","/guides/linux/linux-memory-management",{"title":990,"description":1825},"errors/linux/linux-high-memory-usage","Проблема высокого потребления оперативной памяти в Linux-системах: диагностика процессов, анализ использования памяти и эффективные способы снижения нагрузки.",[789,1867,801,804,1868,1869,1870],"memory","oom","ram","optimization","WdRQzxwV9DyppVzqr8RMQnjIpI91V18e2sF0OMQC3kc",{"id":1873,"title":1874,"appliesTo":1875,"author":11,"body":1880,"canonical":749,"code":749,"createdAt":3123,"description":3124,"difficulty":753,"draft":754,"estimatedTime":3125,"extension":756,"faq":3126,"howToSteps":3139,"howToTotalTime":3158,"image":749,"keywords":3159,"locale":786,"meta":3170,"navigation":315,"path":792,"platform":789,"related":3171,"section":3174,"seo":3175,"severity":749,"stem":3176,"summary":3177,"tags":3178,"twitterCreator":749,"twitterSite":749,"type":3182,"updatedAt":3123,"__hash__":3183},"content_ru/guides/linux/linux-performance-monitoring.md","Мониторинг производительности Linux: полное руководство по инструментам",[1876,1877,1878,1879],"Ubuntu 22.04","CentOS 8","Debian 11","Fedora 36+",{"type":13,"value":1881,"toc":3086},[1882,1886,1889,1892,1896,1904,1909,1917,1920,1959,1976,1991,1997,2002,2014,2016,2022,2025,2056,2062,2067,2080,2087,2114,2126,2135,2138,2149,2160,2163,2195,2201,2211,2219,2231,2234,2260,2263,2279,2282,2291,2295,2302,2315,2318,2365,2372,2378,2385,2395,2404,2407,2445,2457,2464,2469,2500,2506,2510,2513,2536,2538,2542,2546,2595,2599,2635,2639,2684,2688,2728,2732,2740,2774,2789,2792,2816,2819,2936,2940,2944,2987,2989,3021,3025,3060,3062,3080,3083],[20,1883,1885],{"id":1884},"введение-в-мониторинг-производительности-linux","Введение в мониторинг производительности Linux",[25,1887,1888],{},"Мониторинг производительности Linux — это не просто проверка загрузки CPU. Это комплексный анализ системы: процессор, память, диски, сеть, ввод-вывод. Понимание метрик позволяет предотвратить простои, оптимизировать затраты на ресурсы и быстро реагировать на аномалии.",[25,1890,1891],{},"В этом руководстве вы освоите как базовые утилиты, так и расширенные инструменты. Мы сосредоточимся на практических сценариях: как найти «горячий» процесс, почему диск медленный, почему сеть перегружена. Все команды работают на большинстве дистрибутивов (Ubuntu, CentOS, Debian, Fedora).",[20,1893,1895],{"id":1894},"базовые-утилиты-для-ежедневного-использования","Базовые утилиты для ежедневного использования",[83,1897,1899,719,1901,1903],{"id":1898},"top-и-htop-интерактивный-мониторинг-процессов",[40,1900,941],{},[40,1902,1260],{},": интерактивный мониторинг процессов",[25,1905,1906,1908],{},[40,1907,941],{}," — ваш первый инструмент при анализе. Запустите его и изучите экран:",[33,1910,1911],{"className":96,"code":182,"language":98,"meta":42,"style":42},[40,1912,1913],{"__ignoreMap":42},[102,1914,1915],{"class":104,"line":105},[102,1916,182],{"class":108},[25,1918,1919],{},"Ключевые строки:",[51,1921,1922,1940,1953],{},[54,1923,1924,1927,1928,1931,1932,1935,1936,1939],{},[40,1925,1926],{},"%Cpu(s)",": разбивка на ",[40,1929,1930],{},"us"," (пользовательские процессы), ",[40,1933,1934],{},"sy"," (системные), ",[40,1937,1938],{},"id"," (простой).",[54,1941,1942,1945,1946,715,1949,715,1951,920],{},[40,1943,1944],{},"KiB Mem",": использование RAM: ",[40,1947,1948],{},"used",[40,1950,391],{},[40,1952,1094],{},[54,1954,1955,1958],{},[40,1956,1957],{},"KiB Swap",": активность подкачки.",[25,1960,1961,1962,1965,1966,1968,1969,1972,1973,920],{},"Сортировка: нажмите ",[40,1963,1964],{},"P"," (по CPU), ",[40,1967,1264],{}," (по памяти). Чтобы увидеть все процессы, включая потоки, добавьте ",[40,1970,1971],{},"-H"," при запуске: ",[40,1974,1975],{},"top -H",[25,1977,1978,1981,1982,1984,1985,600,1988,920],{},[28,1979,1980],{},"Совет",": ",[40,1983,1260],{}," — улучшенная версия с цветами, деревом процессов и удобным управлением. Установите через ",[40,1986,1987],{},"sudo apt install htop",[40,1989,1990],{},"sudo yum install htop",[83,1992,1994,1996],{"id":1993},"vmstat-виртуальная-статистика",[40,1995,251],{},": виртуальная статистика",[25,1998,1999,2001],{},[40,2000,251],{}," даёт сводку по системе каждые N секунд. Идеален для быстрой проверки «общего здоровья».",[33,2003,2005],{"className":96,"code":2004,"language":98,"meta":42,"style":42},"vmstat 2\n",[40,2006,2007],{"__ignoreMap":42},[102,2008,2009,2011],{"class":104,"line":105},[102,2010,251],{"class":108},[102,2012,2013],{"class":112}," 2\n",[25,2015,1079],{},[33,2017,2020],{"className":2018,"code":2019,"language":38},[36],"procs -----------memory---------- ---swap-- -----io------ -system-- ------cpu-----\n r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st\n 2  0      0 123456  78900 456789    0    0   100   200  123  456 30 10 55  5  0\n",[40,2021,2019],{"__ignoreMap":42},[25,2023,2024],{},"Расшифровка:",[51,2026,2027,2033,2041,2048],{},[54,2028,2029,2032],{},[40,2030,2031],{},"r",": процессы в очереди на выполнение. Значение > количества ядер — нехватка CPU.",[54,2034,2035,2037,2038,2040],{},[40,2036,263],{},"/",[40,2039,269],{},": страницы, перемещаемые в/из подкачки. Ненулевые значения указывают на недостаток RAM.",[54,2042,2043,2037,2045,2047],{},[40,2044,1930],{},[40,2046,1934],{},": высокие значения (>80%) говорят о нагрузке на CPU.",[54,2049,2050,2052,2053,2055],{},[40,2051,194],{},": время, затраченное на ожидание ввода-вывода. Высокий ",[40,2054,194],{}," (например, >20%) — проблема с дисками.",[83,2057,2059,2061],{"id":2058},"iostat-детали-по-дискам-и-cpu",[40,2060,109],{},": детали по дискам и CPU",[25,2063,89,2064,2066],{},[40,2065,92],{},", если ещё не сделали. Команда:",[33,2068,2070],{"className":96,"code":2069,"language":98,"meta":42,"style":42},"iostat -x 2\n",[40,2071,2072],{"__ignoreMap":42},[102,2073,2074,2076,2078],{"class":104,"line":105},[102,2075,109],{"class":108},[102,2077,113],{"class":112},[102,2079,2013],{"class":112},[25,2081,2082,2083,2086],{},"Ключевые метрики для дисков (",[40,2084,2085],{},"Device","):",[51,2088,2089,2094,2100],{},[54,2090,2091,2093],{},[40,2092,147],{},": процент времени, когда диск занят операциями. Близко к 100% — диск перегружен.",[54,2095,2096,2099],{},[40,2097,2098],{},"await",": среднее время (в мс) завершения операции. Высокие значения (например, >50 мс для SSD) — проблема.",[54,2101,2102,2105,2106,950,2108,2110,2111,2113],{},[40,2103,2104],{},"svctm",": среднее время обслуживания операции. Сравнивайте с ",[40,2107,2098],{},[40,2109,2098],{}," >> ",[40,2112,2104],{},", очередь большая.",[25,2115,2116,2117,715,2120,715,2123,920],{},"Для CPU: ",[40,2118,2119],{},"%user",[40,2121,2122],{},"%system",[40,2124,2125],{},"%idle",[83,2127,2129,719,2132,2134],{"id":2128},"df-и-du-место-на-дисках",[40,2130,2131],{},"df",[40,2133,300],{},": место на дисках",[25,2136,2137],{},"Быстрая проверка свободного места:",[33,2139,2141],{"className":96,"code":2140,"language":98,"meta":42,"style":42},"df -h\n",[40,2142,2143],{"__ignoreMap":42},[102,2144,2145,2147],{"class":104,"line":105},[102,2146,2131],{"class":108},[102,2148,394],{"class":112},[25,2150,2151,2152,2155,2156,2159],{},"human-readable (",[40,2153,2154],{},"-h",") вывод в гигабайтах. Обращайте внимание на ",[40,2157,2158],{},"%Use",". Если >90% — очистите логи или увеличьте том.",[25,2161,2162],{},"Чтобы найти «пожирателей» места в конкретной папке:",[33,2164,2166],{"className":96,"code":2165,"language":98,"meta":42,"style":42},"du -sh /var/* | sort -rh | head -10\n",[40,2167,2168],{"__ignoreMap":42},[102,2169,2170,2172,2174,2177,2180,2182,2185,2188,2190,2192],{"class":104,"line":105},[102,2171,300],{"class":108},[102,2173,303],{"class":112},[102,2175,2176],{"class":224}," /var/",[102,2178,2179],{"class":112},"*",[102,2181,334],{"class":333},[102,2183,2184],{"class":108}," sort",[102,2186,2187],{"class":112}," -rh",[102,2189,334],{"class":333},[102,2191,1124],{"class":108},[102,2193,2194],{"class":112}," -10\n",[25,2196,2197,2198,920],{},"Это покажет 10 самых больших подпапок в ",[40,2199,2200],{},"/var",[83,2202,2204,719,2207,2210],{"id":2203},"ss-и-netstat-сетевая-активность",[40,2205,2206],{},"ss",[40,2208,2209],{},"netstat",": сетевая активность",[25,2212,2213,2215,2216,2218],{},[40,2214,2206],{}," — современная замена ",[40,2217,2209],{},". Быстрый просмотр соединений:",[33,2220,2222],{"className":96,"code":2221,"language":98,"meta":42,"style":42},"ss -tuln\n",[40,2223,2224],{"__ignoreMap":42},[102,2225,2226,2228],{"class":104,"line":105},[102,2227,2206],{"class":108},[102,2229,2230],{"class":112}," -tuln\n",[25,2232,2233],{},"Флаги:",[51,2235,2236,2242,2248,2254],{},[54,2237,2238,2241],{},[40,2239,2240],{},"-t",": TCP,",[54,2243,2244,2247],{},[40,2245,2246],{},"-u",": UDP,",[54,2249,2250,2253],{},[40,2251,2252],{},"-l",": listening,",[54,2255,2256,2259],{},[40,2257,2258],{},"-n",": numeric (без разрешения имён).",[25,2261,2262],{},"Для статистики по интерфейсам:",[33,2264,2266],{"className":96,"code":2265,"language":98,"meta":42,"style":42},"ip -s link\n",[40,2267,2268],{"__ignoreMap":42},[102,2269,2270,2273,2276],{"class":104,"line":105},[102,2271,2272],{"class":108},"ip",[102,2274,2275],{"class":112}," -s",[102,2277,2278],{"class":224}," link\n",[25,2280,2281],{},"Или для деталей по сетевым пакетам:",[33,2283,2285],{"className":96,"code":2284,"language":98,"meta":42,"style":42},"nstat\n",[40,2286,2287],{"__ignoreMap":42},[102,2288,2289],{"class":104,"line":105},[102,2290,2284],{"class":108},[20,2292,2294],{"id":2293},"расширенные-инструменты-для-глубокого-анализа","Расширенные инструменты для глубокого анализа",[83,2296,2298,2301],{"id":2297},"sar-сбор-исторических-данных",[40,2299,2300],{},"sar",": сбор исторических данных",[25,2303,2304,2306,2307,2310,2311,2314],{},[40,2305,2300],{}," (System Activity Reporter) записывает метрики каждые N минут. Данные хранятся в ",[40,2308,2309],{},"/var/log/sysstat/"," (имя файла зависит от дистрибутива, например, ",[40,2312,2313],{},"sa14"," для 14-го дня).",[25,2316,2317],{},"Просмотр данных за сегодня:",[33,2319,2321],{"className":96,"code":2320,"language":98,"meta":42,"style":42},"sar -u  # CPU\nsar -r  # Memory\nsar -b  # I/O\nsar -n DEV  # Network interfaces\n",[40,2322,2323,2333,2343,2353],{"__ignoreMap":42},[102,2324,2325,2327,2330],{"class":104,"line":105},[102,2326,2300],{"class":108},[102,2328,2329],{"class":112}," -u",[102,2331,2332],{"class":293},"  # CPU\n",[102,2334,2335,2337,2340],{"class":104,"line":297},[102,2336,2300],{"class":108},[102,2338,2339],{"class":112}," -r",[102,2341,2342],{"class":293},"  # Memory\n",[102,2344,2345,2347,2350],{"class":104,"line":312},[102,2346,2300],{"class":108},[102,2348,2349],{"class":112}," -b",[102,2351,2352],{"class":293},"  # I/O\n",[102,2354,2355,2357,2359,2362],{"class":104,"line":319},[102,2356,2300],{"class":108},[102,2358,418],{"class":112},[102,2360,2361],{"class":224}," DEV",[102,2363,2364],{"class":293},"  # Network interfaces\n",[25,2366,2367,2368,2371],{},"Пример: ",[40,2369,2370],{},"sar -u 2 5"," — CPU каждые 2 секунды, 5 раз.",[25,2373,2374,2377],{},[28,2375,2376],{},"Преимущество",": можно увидеть, что происходило в момент проблемы, даже если вы не сидели у терминала.",[83,2379,2381,2384],{"id":2380},"nmon-интерактивный-мониторинг-всех-ресурсов",[40,2382,2383],{},"nmon",": интерактивный мониторинг всех ресурсов",[25,2386,2387,2388,2390,2391,2394],{},"Установите ",[40,2389,2383],{}," (",[40,2392,2393],{},"sudo apt install nmon","). Запустите:",[33,2396,2398],{"className":96,"code":2397,"language":98,"meta":42,"style":42},"nmon\n",[40,2399,2400],{"__ignoreMap":42},[102,2401,2402],{"class":104,"line":105},[102,2403,2397],{"class":108},[25,2405,2406],{},"Клавиши:",[51,2408,2409,2415,2421,2427,2433,2439],{},[54,2410,2411,2414],{},[40,2412,2413],{},"c"," — CPU,",[54,2416,2417,2420],{},[40,2418,2419],{},"m"," — memory,",[54,2422,2423,2426],{},[40,2424,2425],{},"d"," — disks,",[54,2428,2429,2432],{},[40,2430,2431],{},"n"," — network,",[54,2434,2435,2438],{},[40,2436,2437],{},"t"," — top processes,",[54,2440,2441,2444],{},[40,2442,2443],{},"q"," — выход.",[25,2446,2447,2449,2450,2453,2454,920],{},[40,2448,2383],{}," полезен для быстрого осмотра и записи сессии (файл ",[40,2451,2452],{},".nmon","), который потом можно анализировать в Excel или через ",[40,2455,2456],{},"nmon2csv",[83,2458,2460,2463],{"id":2459},"glances-кросс-платформенный-мониторинг",[40,2461,2462],{},"glances",": кросс-платформенный мониторинг",[25,2465,2466,2468],{},[40,2467,2462],{}," — Python-утилита, которая объединяет много метрик в одном интерактивном интерфейсе. Установка:",[33,2470,2472],{"className":96,"code":2471,"language":98,"meta":42,"style":42},"pip install glances\n# или для системы:\nsudo apt install glances\n",[40,2473,2474,2485,2490],{"__ignoreMap":42},[102,2475,2476,2479,2482],{"class":104,"line":105},[102,2477,2478],{"class":108},"pip",[102,2480,2481],{"class":224}," install",[102,2483,2484],{"class":224}," glances\n",[102,2486,2487],{"class":104,"line":297},[102,2488,2489],{"class":293},"# или для системы:\n",[102,2491,2492,2494,2496,2498],{"class":104,"line":312},[102,2493,221],{"class":108},[102,2495,490],{"class":224},[102,2497,2481],{"class":224},[102,2499,2484],{"class":224},[25,2501,2502,2503,2505],{},"Запуск: ",[40,2504,2462],{},". Поддерживает цвета, алерты (пороги), экспорт в JSON, InfluxDB, Elasticsearch.",[20,2507,2509],{"id":2508},"графические-и-веб-решения","Графические и веб-решения",[25,2511,2512],{},"Для долгосрочного мониторинга и визуализации используйте связки:",[431,2514,2515,2521,2530],{},[54,2516,2517,2520],{},[28,2518,2519],{},"Prometheus + Grafana",": сбор метрик через экспортеры (node_exporter) и красивый дашборд.",[54,2522,2523,2526,2527,920],{},[28,2524,2525],{},"Netdata",": «из коробки» мониторинг с веб-интерфейсом на порту 19999. Установка: ",[40,2528,2529],{},"bash \u003C(curl -Ss https://my-netdata.io/kickstart.sh)",[54,2531,2532,2535],{},[28,2533,2534],{},"Zabbix/Nagios",": для enterprise-мониторинга с алертами.",[236,2537],{},[20,2539,2541],{"id":2540},"практические-сценарии","Практические сценарии",[83,2543,2545],{"id":2544},"сценарий-1-высокая-загрузка-cpu","Сценарий 1: Высокая загрузка CPU",[431,2547,2548,2555,2562,2575,2584],{},[54,2549,2550,2551,600,2553,920],{},"Запустите ",[40,2552,941],{},[40,2554,1260],{},[54,2556,2557,2558,2561],{},"Сортируйте по ",[40,2559,2560],{},"%CPU",". Найдите процесс с максимальным потреблением.",[54,2563,2564,2565,715,2568,715,2571,2574],{},"Если это ",[40,2566,2567],{},"java",[40,2569,2570],{},"python",[40,2572,2573],{},"node"," — проверьте логи приложения.",[54,2576,2564,2577,600,2580,2583],{},[40,2578,2579],{},"kworker",[40,2581,2582],{},"migration"," — возможно, проблема в ядре или IRQ.",[54,2585,2586,2587,2590,2591,2594],{},"Используйте ",[40,2588,2589],{},"perf top"," для профилирования (установите ",[40,2592,2593],{},"linux-tools",").",[83,2596,2598],{"id":2597},"сценарий-2-диск-полностью-занят","Сценарий 2: Диск полностью занят",[431,2600,2601,2612,2621,2629],{},[54,2602,2603,2606,2607,719,2609,2611],{},[40,2604,2605],{},"iostat -x 2"," — смотрите ",[40,2608,147],{},[40,2610,2098],{}," по дискам.",[54,2613,2614,2616,2617,2620],{},[40,2615,718],{}," (установите через ",[40,2618,2619],{},"sudo apt install iotop",") — показывает, какой процесс пишет/читает.",[54,2622,204,2623,2625,2626,2628],{},[40,2624,2098],{}," высокий, а ",[40,2627,147],{}," низкий — возможно, проблема в сети (NFS, iSCSI).",[54,2630,2631,2632,920],{},"Проверьте очередь диска: ",[40,2633,2634],{},"cat /proc/diskstats | grep \u003Cdevice>",[83,2636,2638],{"id":2637},"сценарий-3-нехватка-памяти","Сценарий 3: Нехватка памяти",[431,2640,2641,2652,2664,2670,2677],{},[54,2642,2643,2606,2646,2648,2649,920],{},[40,2644,2645],{},"free -h",[40,2647,1098],{}," (доступно) и ",[40,2650,2651],{},"swap",[54,2653,204,2654,2656,2657,2037,2659,1036,2661,2663],{},[40,2655,2651],{}," активно используется (",[40,2658,263],{},[40,2660,269],{},[40,2662,251],{}," >0) — недостаток RAM.",[54,2665,2666,2669],{},[40,2667,2668],{},"ps aux --sort=-%mem | head -10"," — топ-10 по памяти.",[54,2671,2672,2673,2676],{},"Проверьте кэш: ",[40,2674,2675],{},"cat /proc/meminfo | grep -E \"Cached|Buffers\"",". Большой кэш — нормально, ОС использует свободную RAM.",[54,2678,2679,2680,2683],{},"Если процесс «съедает» память — ищите утечки (например, через ",[40,2681,2682],{},"valgrind"," для C/C++).",[83,2685,2687],{"id":2686},"сценарий-4-сетевая-перегрузка","Сценарий 4: Сетевая перегрузка",[431,2689,2690,2704,2713,2719],{},[54,2691,2692,2695,2696,2699,2700,2703],{},[40,2693,2694],{},"ip -s link"," — ошибки (",[40,2697,2698],{},"errs",") и дропы (",[40,2701,2702],{},"drop",") по интерфейсу.",[54,2705,2706,2709,2710,2594],{},[40,2707,2708],{},"ss -s"," — сводка по сокетам (например, много ",[40,2711,2712],{},"TIME-WAIT",[54,2714,2715,2718],{},[40,2716,2717],{},"nethogs"," (установите) — показывает трафик по процессам.",[54,2720,2721,2724,2725,2727],{},[40,2722,2723],{},"iftop"," — аналогично ",[40,2726,941],{},", но для сети.",[20,2729,2731],{"id":2730},"автоматизация-и-алертинг","Автоматизация и алертинг",[25,2733,2734,2735,719,2738,604],{},"Для регулярного сбора данных настройте ",[40,2736,2737],{},"cron",[40,2739,2300],{},[33,2741,2743],{"className":96,"code":2742,"language":98,"meta":42,"style":42},"# Включите сбор данных (если не запущен)\nsudo systemctl enable sysstat\nsudo systemctl start sysstat\n",[40,2744,2745,2750,2763],{"__ignoreMap":42},[102,2746,2747],{"class":104,"line":105},[102,2748,2749],{"class":293},"# Включите сбор данных (если не запущен)\n",[102,2751,2752,2754,2757,2760],{"class":104,"line":297},[102,2753,221],{"class":108},[102,2755,2756],{"class":224}," systemctl",[102,2758,2759],{"class":224}," enable",[102,2761,2762],{"class":224}," sysstat\n",[102,2764,2765,2767,2769,2772],{"class":104,"line":312},[102,2766,221],{"class":108},[102,2768,2756],{"class":224},[102,2770,2771],{"class":224}," start",[102,2773,2762],{"class":224},[25,2775,2776,2777,2780,2781,2784,2785,2788],{},"Файл ",[40,2778,2779],{},"/etc/default/sysstat"," (Debian/Ubuntu) или ",[40,2782,2783],{},"/etc/sysconfig/sysstat"," (RHEL/CentOS) содержит параметры сбора (например, ",[40,2786,2787],{},"SA1_OPTIONS=\"-S XALL\""," для всех метрик).",[25,2790,2791],{},"Для алертов используйте:",[51,2793,2794,2800,2809],{},[54,2795,2796,2799],{},[40,2797,2798],{},"monit"," — простой демон, который следит за процессами, дисками, CPU.",[54,2801,2802,2037,2805,2808],{},[40,2803,2804],{},"nagios",[40,2806,2807],{},"zabbix"," — сложные системы с веб-интерфейсом.",[54,2810,2811,2812,2815],{},"Скрипты на Bash/Python, которые проверяют метрики и шлют уведомления (например, через ",[40,2813,2814],{},"mail"," или Telegram API).",[25,2817,2818],{},"Пример скрипта для проверки загрузки CPU:",[33,2820,2822],{"className":96,"code":2821,"language":98,"meta":42,"style":42},"#!/bin/bash\nLOAD=$(awk '{print $1}' /proc/loadavg)\nTHRESHOLD=$(nproc)  # количество ядер\nif (( $(echo \"$LOAD > $THRESHOLD\" | bc -l) )); then\n  echo \"Высокая нагрузка: $LOAD\" | mail -s \"Alert: CPU load\" admin@example.com\nfi\n",[40,2823,2824,2829,2852,2870,2906,2931],{"__ignoreMap":42},[102,2825,2826],{"class":104,"line":105},[102,2827,2828],{"class":293},"#!/bin/bash\n",[102,2830,2831,2834,2837,2840,2843,2846,2849],{"class":104,"line":297},[102,2832,2833],{"class":535},"LOAD",[102,2835,2836],{"class":333},"=",[102,2838,2839],{"class":535},"$(",[102,2841,2842],{"class":108},"awk",[102,2844,2845],{"class":224}," '{print $1}'",[102,2847,2848],{"class":224}," /proc/loadavg",[102,2850,2851],{"class":535},")\n",[102,2853,2854,2857,2859,2861,2864,2867],{"class":104,"line":312},[102,2855,2856],{"class":535},"THRESHOLD",[102,2858,2836],{"class":333},[102,2860,2839],{"class":535},[102,2862,2863],{"class":108},"nproc",[102,2865,2866],{"class":535},")  ",[102,2868,2869],{"class":293},"# количество ядер\n",[102,2871,2872,2875,2878,2881,2884,2887,2890,2892,2894,2897,2900,2903],{"class":104,"line":319},[102,2873,2874],{"class":333},"if",[102,2876,2877],{"class":535}," (( $(echo ",[102,2879,2880],{"class":224},"\"",[102,2882,2883],{"class":535},"$LOAD",[102,2885,2886],{"class":224}," > ",[102,2888,2889],{"class":535},"$THRESHOLD",[102,2891,2880],{"class":224},[102,2893,334],{"class":333},[102,2895,2896],{"class":535}," bc ",[102,2898,2899],{"class":333},"-",[102,2901,2902],{"class":535},"l) )); ",[102,2904,2905],{"class":333},"then\n",[102,2907,2908,2911,2914,2916,2918,2920,2923,2925,2928],{"class":104,"line":325},[102,2909,2910],{"class":112},"  echo",[102,2912,2913],{"class":224}," \"Высокая нагрузка: ",[102,2915,2883],{"class":535},[102,2917,2880],{"class":224},[102,2919,334],{"class":333},[102,2921,2922],{"class":108}," mail",[102,2924,2275],{"class":112},[102,2926,2927],{"class":224}," \"Alert: CPU load\"",[102,2929,2930],{"class":224}," admin@example.com\n",[102,2932,2933],{"class":104,"line":1409},[102,2934,2935],{"class":333},"fi\n",[20,2937,2939],{"id":2938},"интерпретация-метрик-и-профилактика","Интерпретация метрик и профилактика",[83,2941,2943],{"id":2942},"ключевые-индикаторы","Ключевые индикаторы",[51,2945,2946,2954,2965,2976],{},[54,2947,2948,1981,2951,2953],{},[28,2949,2950],{},"CPU",[40,2952,2125],{}," \u003C 20% — перегрузка. Но для веб-серверов нормально 70-80% idle, если нет очереди.",[54,2955,2956,1981,2959,2961,2962,2964],{},[28,2957,2958],{},"Memory",[40,2960,1098],{}," \u003C 10% от total — тревога. Следите за ",[40,2963,2651],{}," — если активен, это признак нехватки RAM.",[54,2966,2967,1981,2970,2972,2973,2975],{},[28,2968,2969],{},"Disk",[40,2971,2098],{}," > 20 мс для SSD, > 10 мс для HDD — проблема. ",[40,2974,147],{}," > 80% — диск не справляется.",[54,2977,2978,2981,2982,2037,2984,2986],{},[28,2979,2980],{},"Network",": рост ",[40,2983,2702],{},[40,2985,2698],{}," — перегрузка или ошибка драйвера.",[83,2988,688],{"id":687},[51,2990,2991,2999,3002,3009,3012],{},[54,2992,2993,2994,715,2997,2594],{},"Регулярно проверяйте логи (",[40,2995,2996],{},"/var/log/syslog",[40,2998,1042],{},[54,3000,3001],{},"Настройте мониторинг с порогами (например, CPU > 90% 5 минут).",[54,3003,3004,3005,3008],{},"Ограничивайте процессы через ",[40,3006,3007],{},"cgroups"," (systemd slice, docker limits).",[54,3010,3011],{},"Обновляйте ядро и драйверы — иногда проблемы исправляются в новых версиях.",[54,3013,3014,3015,719,3018,920],{},"Для I/O-интенсивных задач используйте ",[40,3016,3017],{},"ionice",[40,3019,3020],{},"nice",[83,3022,3024],{"id":3023},"частые-ошибки-новичков","Частые ошибки новичков",[51,3026,3027,3036,3047,3057],{},[54,3028,3029,3030,3032,3033,3035],{},"Смотреть только ",[40,3031,941],{}," без учёта ",[40,3034,194],{}," — пропустить I/O-проблему.",[54,3037,3038,3039,1036,3041,3044,3045,920],{},"Считать ",[40,3040,391],{},[40,3042,3043],{},"free -m"," как «свободная память» — не учитывать кэш. Лучше ",[40,3046,1098],{},[54,3048,3049,3050,2037,3052,1036,3054,3056],{},"Игнорировать ",[40,3051,263],{},[40,3053,269],{},[40,3055,251],{}," — подкачка убивает производительность.",[54,3058,3059],{},"Не настраивать алерты — узнают о проблеме, когда сервер уже упал.",[20,3061,709],{"id":708},[25,3063,3064,3065,715,3067,715,3069,3071,3072,3074,3075,2037,3077,3079],{},"Мониторинг — это непрерывный процесс. Начните с базовых утилитий (",[40,3066,941],{},[40,3068,251],{},[40,3070,109],{},"), затем добавьте ",[40,3073,2300],{}," для истории и ",[40,3076,2462],{},[40,3078,2383],{}," для комплексного обзора. Для production-сред обязательно настройте графические дашборды (Grafana) и алерты.",[25,3081,3082],{},"Помните: метрики без контекста бесполезны. Знайте свою нагрузку: сколько запросов в секунду, объём данных, пиковые часы. Тогда аномалии будут видны сразу.",[724,3084,3085],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}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 .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":42,"searchDepth":297,"depth":297,"links":3087},[3088,3089,3101,3109,3110,3116,3117,3122],{"id":1884,"depth":297,"text":1885},{"id":1894,"depth":297,"text":1895,"children":3090},[3091,3093,3095,3097,3099],{"id":1898,"depth":312,"text":3092},"top и htop: интерактивный мониторинг процессов",{"id":1993,"depth":312,"text":3094},"vmstat: виртуальная статистика",{"id":2058,"depth":312,"text":3096},"iostat: детали по дискам и CPU",{"id":2128,"depth":312,"text":3098},"df и du: место на дисках",{"id":2203,"depth":312,"text":3100},"ss и netstat: сетевая активность",{"id":2293,"depth":297,"text":2294,"children":3102},[3103,3105,3107],{"id":2297,"depth":312,"text":3104},"sar: сбор исторических данных",{"id":2380,"depth":312,"text":3106},"nmon: интерактивный мониторинг всех ресурсов",{"id":2459,"depth":312,"text":3108},"glances: кросс-платформенный мониторинг",{"id":2508,"depth":297,"text":2509},{"id":2540,"depth":297,"text":2541,"children":3111},[3112,3113,3114,3115],{"id":2544,"depth":312,"text":2545},{"id":2597,"depth":312,"text":2598},{"id":2637,"depth":312,"text":2638},{"id":2686,"depth":312,"text":2687},{"id":2730,"depth":297,"text":2731},{"id":2938,"depth":297,"text":2939,"children":3118},[3119,3120,3121],{"id":2942,"depth":312,"text":2943},{"id":687,"depth":312,"text":688},{"id":3023,"depth":312,"text":3024},{"id":708,"depth":297,"text":709},"2026-02-14 12:02:44","Узнайте, как использовать top, vmstat, iostat и другие утилиты для анализа нагрузки на систему. Пошаговая инструкция с примерами команд.","15-30 мин",[3127,3130,3133,3136],{"answer":3128,"question":3129},"Используйте `top` или `htop` (если установлен). Они отображают динамический список процессов с потреблением CPU, памяти и другими метриками.","Какая команда показывает загрузку CPU в реальном времени?",{"answer":3131,"question":3132},"Для свободного места на разделах — `df -h`. Для определения размера конкретных папок — `du -sh /путь/к/папке`.","Как проверить использование дискового пространства?",{"answer":3134,"question":3135},"Найдите процесс через `ps aux --sort=-%mem | head -10`, затем проанализируйте его логи или перезапустите. Если проблема повторяется — проверьте утечки памяти в коде.","Что делать, если процесс потребляет слишком много памяти?",{"answer":3137,"question":3138},"Да, через SSH можно запускать стандартные утилиты (`top`, `vmstat`, `iostat`). Для постоянного мониторинга удобнее настроить агент (например, `collectd`) или использовать веб-интерфейсы вроде `Webmin`.","Можно ли мониторить удалённый сервер без установки дополнительного ПО?",[3140,3143,3146,3149,3152,3155],{"name":3141,"text":3142},"Установите необходимые утилиты","Большинство инструментов уже в системе, но для полного набора установите пакет `sysstat` (`sudo apt install sysstat` или `sudo yum install sysstat`). Он содержит `iostat`, `mpstat`, `sar`.",{"name":3144,"text":3145},"Используйте `top` для быстрого обзора","Запустите `top` в терминале. Нажмите `P` для сортировки по CPU, `M` — по памяти. Для выхода — `q`. Ключевые поля: `%CPU`, `%MEM`, `RES`.",{"name":3147,"text":3148},"Анализируйте общую статистику через `vmstat`","Команда `vmstat 2` выводит каждые 2 секунды данные по памяти, подкачке, прерываниям и контекстным переключениям. Обращайте внимание на `si`/`so` (подкачка) и `us`/`sy` (пользовательский/системный CPU).",{"name":3150,"text":3151},"Проверьте дисковую активность с `iostat`","`iostat -x 2` показывает расширенную статистику по дискам. Важные метрики: `%util` (загрузка диска) и `await` (среднее время ожидания). Если `%util` близок к 100% — диск является узким местом.",{"name":3153,"text":3154},"Мониторьте сеть через `ss` и `netstat`","`ss -tuln` отображает открытые порты и соединения. Для статистики по интерфейсам используйте `ip -s link` или `ifconfig` (устарел). Пакетный уровень — `nstat`.",{"name":3156,"text":3157},"Собирайте историю с `sar`","`sar` сохраняет данные в `/var/log/sysstat/`. Просмотр: `sar -u 2 5` (CPU за 5 интервалов по 2 сек). Для графиков можно использовать `ksar` или `sar2graph`.","PT20M",[3160,3161,3162,3163,3164,3165,3166,3167,3168,3169],"мониторинг производительности linux","как проверить нагрузку на сервер linux","утилиты для мониторинга linux","top vmstat iostat команды","анализ загрузки цп linux","мониторинг оперативной памяти linux","дисковый ввод вывод linux","сетевые метрики linux","перформанс линукс","linux performance tuning",{},[3172,3173],"/guides/linux/linux-log-analysis","/guides/linux/linux-process-management","Гайды по Linux",{"title":1874,"description":3124},"guides/linux/linux-performance-monitoring","Этот гайд познакомит вас с основными и расширенными инструментами мониторинга Linux, покажет, как интерпретировать метрики и оперативно выявлять узкие места в производительности.",[3179,3180,801,3181,804],"мониторинг","Linux","sysadmin","guide","x1hrmedT6poFQsUlP6mMbAbjfWvMdIy3lsvt8UbgLE0",{"id":3185,"title":3186,"appliesTo":3187,"author":11,"body":3192,"canonical":749,"code":749,"createdAt":4645,"description":4646,"difficulty":4647,"draft":754,"estimatedTime":4648,"extension":756,"faq":4649,"howToSteps":4662,"howToTotalTime":4678,"image":749,"keywords":4679,"locale":786,"meta":4689,"navigation":315,"path":793,"platform":789,"related":4690,"section":794,"seo":4694,"severity":796,"stem":4695,"summary":4696,"tags":4697,"twitterCreator":749,"twitterSite":749,"type":3182,"updatedAt":4645,"__hash__":4702},"content_ru/errors/linux/linux-disk-full.md","Linux Диск Полный: Быстрое Освобождение Места Пошагово",[3188,3189,3190,3191],"Ubuntu/Debian 20.04+","CentOS/RHEL 8+","Arch Linux","Любой дистрибутив с systemd",{"type":13,"value":3193,"toc":4623},[3194,3197,3204,3211,3215,3226,3236,3238,3273,3277,3283,3288,3303,3307,3310,3314,3356,3376,3381,3387,3394,3398,3404,3486,3489,3504,3514,3516,3520,3523,3527,3532,3616,3621,3671,3676,3705,3709,3716,3822,3849,3853,3909,3925,3934,3937,3991,3994,4032,4036,4040,4043,4107,4111,4114,4142,4146,4153,4176,4180,4186,4226,4230,4233,4476,4480,4485,4494,4502,4520,4525,4541,4546,4572,4583,4605,4608,4620],[16,3195,3186],{"id":3196},"linux-диск-полный-быстрое-освобождение-места-пошагово",[25,3198,3199,3200,3203],{},"Ситуация, когда на Linux-сервере или рабочей станции внезапно появляется ошибка ",[28,3201,3202],{},"«No space left on device»",", знакомая многим администраторам и пользователям. Система перестаёт работать корректно: не устанавливаются обновления, не пишутся логи, не работают базы данных. Эта проблема критична и требует немедленного решения.",[25,3205,3206,3207,3210],{},"В этом гайде вы получите ",[28,3208,3209],{},"конкретный, пошаговый план"," по диагностике и освобождению дискового пространства в Linux. Мы рассмотрим только рабочие команды, актуальные для большинства дистрибутивов (Ubuntu, Debian, CentOS, RHEL, Arch), и дадим рекомендации по профилактике.",[20,3212,3214],{"id":3213},"шаг-1-диагностика-где-именно-закончилось-место","🔍 Шаг 1: Диагностика — где именно закончилось место?",[25,3216,3217,3218,3220,3221,600,3223,920],{},"Первым делом нужно понять, какой именно раздел (filesystem) заполнен. Ошибка может быть не в корневом ",[40,3219,2037],{},", а в отдельном смонтированном разделе, например ",[40,3222,2200],{},[40,3224,3225],{},"/home",[33,3227,3228],{"className":96,"code":2140,"language":98,"meta":42,"style":42},[40,3229,3230],{"__ignoreMap":42},[102,3231,3232,3234],{"class":104,"line":105},[102,3233,2131],{"class":108},[102,3235,394],{"class":112},[25,3237,256],{},[51,3239,3240,3246,3252,3258,3267],{},[54,3241,3242,3245],{},[28,3243,3244],{},"Filesystem"," — устройство или раздел.",[54,3247,3248,3251],{},[28,3249,3250],{},"Size"," — общий размер.",[54,3253,3254,3257],{},[28,3255,3256],{},"Used"," — использованное место.",[54,3259,3260,3263,3264,920],{},[28,3261,3262],{},"Use%"," — процент использования. ",[28,3265,3266],{},"Внимание на значения 90-100%",[54,3268,3269,3272],{},[28,3270,3271],{},"Mounted on"," — точка монтирования.",[25,3274,3275],{},[28,3276,1079],{},[33,3278,3281],{"className":3279,"code":3280,"language":38},[36],"Filesystem      Size  Used Avail Use% Mounted on\n/dev/sda1        50G   48G  1.5G  97% /\n/dev/sdb1       200G   30G  160G  16% /home\ntmpfs           7.8G  1.2G  6.6G  16% /tmp\n",[40,3282,3280],{"__ignoreMap":42},[25,3284,3285,3286,2594],{},"Здесь проблема в корневом разделе (",[40,3287,2037],{},[1468,3289,3290],{},[25,3291,3292,3293,3296,3297,3299,3300,920],{},"⚠️ ",[28,3294,3295],{},"Важно:"," Если команда ",[40,3298,2131],{}," не показывает проблему, проверьте inodes (индексы файлов) — они тоже могут закончиться: ",[40,3301,3302],{},"df -i",[20,3304,3306],{"id":3305},"шаг-2-поиск-пожирателей-дискового-пространства","📊 Шаг 2: Поиск «пожирателей» дискового пространства",[25,3308,3309],{},"После определения проблемного раздела нужно найти, какие каталоги и файлы занимают больше всего места.",[83,3311,3313],{"id":3312},"способ-a-стандартные-утилиты-du-и-sort","Способ A: Стандартные утилиты du и sort",[33,3315,3317],{"className":96,"code":3316,"language":98,"meta":42,"style":42},"# Анализ 20 самых больших каталогов в корне (игнорируем ошибки доступа)\nsudo du -x / 2>/dev/null | sort -n | tail -20\n",[40,3318,3319,3324],{"__ignoreMap":42},[102,3320,3321],{"class":104,"line":105},[102,3322,3323],{"class":293},"# Анализ 20 самых больших каталогов в корне (игнорируем ошибки доступа)\n",[102,3325,3326,3328,3331,3333,3336,3339,3342,3344,3346,3348,3350,3353],{"class":104,"line":297},[102,3327,221],{"class":108},[102,3329,3330],{"class":224}," du",[102,3332,113],{"class":112},[102,3334,3335],{"class":224}," /",[102,3337,3338],{"class":333}," 2>",[102,3340,3341],{"class":224},"/dev/null",[102,3343,334],{"class":333},[102,3345,2184],{"class":108},[102,3347,418],{"class":112},[102,3349,334],{"class":333},[102,3351,3352],{"class":108}," tail",[102,3354,3355],{"class":112}," -20\n",[51,3357,3358,3364,3370],{},[54,3359,3360,3363],{},[40,3361,3362],{},"-x"," — оставаться в одной файловой системе (не заглядывать в другие смонтированные разделы).",[54,3365,3366,3369],{},[40,3367,3368],{},"sort -n"," — числовая сортировка по размеру (по возрастанию).",[54,3371,3372,3375],{},[40,3373,3374],{},"tail -20"," — взять последние 20 строк (самые большие).",[25,3377,3378],{},[28,3379,3380],{},"Результат будет выглядеть так:",[33,3382,3385],{"className":3383,"code":3384,"language":38},[36],"5242880    /var/lib/docker\n3145728    /usr/lib/jvm\n2097152    /var/log\n...\n",[40,3386,3384],{"__ignoreMap":42},[25,3388,3389,3390,3393],{},"Это показывает, что ",[40,3391,3392],{},"/var/lib/docker"," — главный кандидат на очистку.",[83,3395,3397],{"id":3396},"способ-b-интерактивный-анализ-с-ncdu-рекомендуется","Способ B: Интерактивный анализ с ncdu (рекомендуется)",[25,3399,2387,3400,3403],{},[40,3401,3402],{},"ncdu"," — самый удобный инструмент для анализа дискового пространства.",[33,3405,3407],{"className":96,"code":3406,"language":98,"meta":42,"style":42},"# Для Ubuntu/Debian\nsudo apt update && sudo apt install ncdu\n\n# Для CentOS/RHEL (EPEL репозиторий)\nsudo yum install epel-release && sudo yum install ncdu\n\n# Для Arch\nsudo pacman -S ncdu\n",[40,3408,3409,3414,3434,3438,3443,3465,3469,3474],{"__ignoreMap":42},[102,3410,3411],{"class":104,"line":105},[102,3412,3413],{"class":293},"# Для Ubuntu/Debian\n",[102,3415,3416,3418,3420,3423,3425,3427,3429,3431],{"class":104,"line":297},[102,3417,221],{"class":108},[102,3419,490],{"class":224},[102,3421,3422],{"class":224}," update",[102,3424,536],{"class":535},[102,3426,221],{"class":108},[102,3428,490],{"class":224},[102,3430,2481],{"class":224},[102,3432,3433],{"class":224}," ncdu\n",[102,3435,3436],{"class":104,"line":312},[102,3437,316],{"emptyLinePlaceholder":315},[102,3439,3440],{"class":104,"line":319},[102,3441,3442],{"class":293},"# Для CentOS/RHEL (EPEL репозиторий)\n",[102,3444,3445,3447,3450,3452,3455,3457,3459,3461,3463],{"class":104,"line":325},[102,3446,221],{"class":108},[102,3448,3449],{"class":224}," yum",[102,3451,2481],{"class":224},[102,3453,3454],{"class":224}," epel-release",[102,3456,536],{"class":535},[102,3458,221],{"class":108},[102,3460,3449],{"class":224},[102,3462,2481],{"class":224},[102,3464,3433],{"class":224},[102,3466,3467],{"class":104,"line":1409},[102,3468,316],{"emptyLinePlaceholder":315},[102,3470,3471],{"class":104,"line":1414},[102,3472,3473],{"class":293},"# Для Arch\n",[102,3475,3476,3478,3481,3484],{"class":104,"line":1420},[102,3477,221],{"class":108},[102,3479,3480],{"class":224}," pacman",[102,3482,3483],{"class":112}," -S",[102,3485,3433],{"class":224},[25,3487,3488],{},"Запустите анализ нужного раздела:",[33,3490,3492],{"className":96,"code":3491,"language":98,"meta":42,"style":42},"sudo ncdu /\n",[40,3493,3494],{"__ignoreMap":42},[102,3495,3496,3498,3501],{"class":104,"line":105},[102,3497,221],{"class":108},[102,3499,3500],{"class":224}," ncdu",[102,3502,3503],{"class":224}," /\n",[25,3505,3506,3507,3510,3511,3513],{},"Вы получите ",[28,3508,3509],{},"интерактивный интерфейс"," (в текстовом режиме), где можно перемещаться по папкам, видеть их размер и удалять файлы прямо из программы (клавиша ",[40,3512,2425],{},"). Это значительно ускоряет процесс.",[236,3515],{},[20,3517,3519],{"id":3518},"️-шаг-3-очистка-что-можно-безопасно-удалить","🗑️ Шаг 3: Очистка — что можно безопасно удалить?",[25,3521,3522],{},"После анализа вы увидите «виновников». Вот основные категории для очистки.",[83,3524,3526],{"id":3525},"_1-кэш-пакетного-менеджера-и-старые-версии-по","1. Кэш пакетного менеджера и старые версии ПО",[25,3528,3529],{},[28,3530,3531],{},"Для Debian/Ubuntu:",[33,3533,3535],{"className":96,"code":3534,"language":98,"meta":42,"style":42},"# Удалить локальные кэшированные файлы пакетов (.deb)\nsudo apt-get clean\n\n# Удалить старые, ненужные зависимости\nsudo apt-get autoremove --purge\n\n# Показать старые ядра (не удаляйте текущее!))\ndpkg -l 'linux-image*' | grep '^ii'\n# Удаление конкретного старого ядра (пример)\nsudo apt-get purge linux-image-5.4.0-42-generic\n",[40,3536,3537,3542,3551,3555,3560,3572,3576,3581,3598,3603],{"__ignoreMap":42},[102,3538,3539],{"class":104,"line":105},[102,3540,3541],{"class":293},"# Удалить локальные кэшированные файлы пакетов (.deb)\n",[102,3543,3544,3546,3549],{"class":104,"line":297},[102,3545,221],{"class":108},[102,3547,3548],{"class":224}," apt-get",[102,3550,493],{"class":224},[102,3552,3553],{"class":104,"line":312},[102,3554,316],{"emptyLinePlaceholder":315},[102,3556,3557],{"class":104,"line":319},[102,3558,3559],{"class":293},"# Удалить старые, ненужные зависимости\n",[102,3561,3562,3564,3566,3569],{"class":104,"line":325},[102,3563,221],{"class":108},[102,3565,3548],{"class":224},[102,3567,3568],{"class":224}," autoremove",[102,3570,3571],{"class":112}," --purge\n",[102,3573,3574],{"class":104,"line":1409},[102,3575,316],{"emptyLinePlaceholder":315},[102,3577,3578],{"class":104,"line":1414},[102,3579,3580],{"class":293},"# Показать старые ядра (не удаляйте текущее!))\n",[102,3582,3583,3586,3588,3591,3593,3595],{"class":104,"line":1420},[102,3584,3585],{"class":108},"dpkg",[102,3587,1701],{"class":112},[102,3589,3590],{"class":224}," 'linux-image*'",[102,3592,334],{"class":333},[102,3594,337],{"class":108},[102,3596,3597],{"class":224}," '^ii'\n",[102,3599,3600],{"class":104,"line":1434},[102,3601,3602],{"class":293},"# Удаление конкретного старого ядра (пример)\n",[102,3604,3606,3608,3610,3613],{"class":104,"line":3605},10,[102,3607,221],{"class":108},[102,3609,3548],{"class":224},[102,3611,3612],{"class":224}," purge",[102,3614,3615],{"class":224}," linux-image-5.4.0-42-generic\n",[25,3617,3618],{},[28,3619,3620],{},"Для RHEL/CentOS/Fedora:",[33,3622,3624],{"className":96,"code":3623,"language":98,"meta":42,"style":42},"# Очистка кэша yum/dnf\nsudo yum clean all   # или sudo dnf clean all\n\n# Удаление старых ядер (осторожно!)\npackage-cleanup --oldkernels --count=2\n# Или вручную: rpm -qa kernel | sort -V | head -n -2 | xargs sudo yum remove -y\n",[40,3625,3626,3631,3646,3650,3655,3666],{"__ignoreMap":42},[102,3627,3628],{"class":104,"line":105},[102,3629,3630],{"class":293},"# Очистка кэша yum/dnf\n",[102,3632,3633,3635,3637,3640,3643],{"class":104,"line":297},[102,3634,221],{"class":108},[102,3636,3449],{"class":224},[102,3638,3639],{"class":224}," clean",[102,3641,3642],{"class":224}," all",[102,3644,3645],{"class":293},"   # или sudo dnf clean all\n",[102,3647,3648],{"class":104,"line":312},[102,3649,316],{"emptyLinePlaceholder":315},[102,3651,3652],{"class":104,"line":319},[102,3653,3654],{"class":293},"# Удаление старых ядер (осторожно!)\n",[102,3656,3657,3660,3663],{"class":104,"line":325},[102,3658,3659],{"class":108},"package-cleanup",[102,3661,3662],{"class":112}," --oldkernels",[102,3664,3665],{"class":112}," --count=2\n",[102,3667,3668],{"class":104,"line":1409},[102,3669,3670],{"class":293},"# Или вручную: rpm -qa kernel | sort -V | head -n -2 | xargs sudo yum remove -y\n",[25,3672,3673],{},[28,3674,3675],{},"Для Arch Linux:",[33,3677,3679],{"className":96,"code":3678,"language":98,"meta":42,"style":42},"sudo pacman -Sc      # Очистка кэша установленных пакетов (старые версии)\nsudo pacman -Scc     # Очистить ВЕСЬ кэш (включая текущие) — не рекомендуется для производительности\n",[40,3680,3681,3693],{"__ignoreMap":42},[102,3682,3683,3685,3687,3690],{"class":104,"line":105},[102,3684,221],{"class":108},[102,3686,3480],{"class":224},[102,3688,3689],{"class":112}," -Sc",[102,3691,3692],{"class":293},"      # Очистка кэша установленных пакетов (старые версии)\n",[102,3694,3695,3697,3699,3702],{"class":104,"line":297},[102,3696,221],{"class":108},[102,3698,3480],{"class":224},[102,3700,3701],{"class":112}," -Scc",[102,3703,3704],{"class":293},"     # Очистить ВЕСЬ кэш (включая текущие) — не рекомендуется для производительности\n",[83,3706,3708],{"id":3707},"_2-логи-приложений-и-системы","2. Логи приложений и системы",[25,3710,3711,3712,3715],{},"Логи в ",[40,3713,3714],{},"/var/log"," могут бесконечно расти, особенно если есть ошибки в сервисах.",[33,3717,3719],{"className":96,"code":3718,"language":98,"meta":42,"style":42},"# Просмотр размера логов\nsudo du -sh /var/log/*\n\n# Безопасное удаление старых сжатых логов (например, .gz файлов старше 30 дней)\nsudo find /var/log -name \"*.gz\" -type f -mtime +30 -delete\n# Удаление старых неархивированных логов (осторожно!)\nsudo find /var/log -type f -name \"*.log\" -mtime +7 -exec truncate -s 0 {} \\;\n",[40,3720,3721,3726,3738,3742,3747,3778,3783],{"__ignoreMap":42},[102,3722,3723],{"class":104,"line":105},[102,3724,3725],{"class":293},"# Просмотр размера логов\n",[102,3727,3728,3730,3732,3734,3736],{"class":104,"line":297},[102,3729,221],{"class":108},[102,3731,3330],{"class":224},[102,3733,303],{"class":112},[102,3735,306],{"class":224},[102,3737,309],{"class":112},[102,3739,3740],{"class":104,"line":312},[102,3741,316],{"emptyLinePlaceholder":315},[102,3743,3744],{"class":104,"line":319},[102,3745,3746],{"class":293},"# Безопасное удаление старых сжатых логов (например, .gz файлов старше 30 дней)\n",[102,3748,3749,3751,3754,3757,3760,3763,3766,3769,3772,3775],{"class":104,"line":325},[102,3750,221],{"class":108},[102,3752,3753],{"class":224}," find",[102,3755,3756],{"class":224}," /var/log",[102,3758,3759],{"class":112}," -name",[102,3761,3762],{"class":224}," \"*.gz\"",[102,3764,3765],{"class":112}," -type",[102,3767,3768],{"class":224}," f",[102,3770,3771],{"class":112}," -mtime",[102,3773,3774],{"class":224}," +30",[102,3776,3777],{"class":112}," -delete\n",[102,3779,3780],{"class":104,"line":1409},[102,3781,3782],{"class":293},"# Удаление старых неархивированных логов (осторожно!)\n",[102,3784,3785,3787,3789,3791,3793,3795,3797,3800,3802,3805,3808,3811,3813,3816,3819],{"class":104,"line":1414},[102,3786,221],{"class":108},[102,3788,3753],{"class":224},[102,3790,3756],{"class":224},[102,3792,3765],{"class":112},[102,3794,3768],{"class":224},[102,3796,3759],{"class":112},[102,3798,3799],{"class":224}," \"*.log\"",[102,3801,3771],{"class":112},[102,3803,3804],{"class":224}," +7",[102,3806,3807],{"class":112}," -exec",[102,3809,3810],{"class":224}," truncate",[102,3812,2275],{"class":112},[102,3814,3815],{"class":112}," 0",[102,3817,3818],{"class":224}," {}",[102,3820,3821],{"class":112}," \\;\n",[1468,3823,3824],{},[25,3825,3826,3827,3830,3831,3834,3835,3838,3839,3842,3843,719,3846,920],{},"💡 ",[28,3828,3829],{},"Совет:"," Лучше не удалять, а ",[28,3832,3833],{},"архивировать"," старые логи (",[40,3836,3837],{},"gzip",") или настроить ",[28,3840,3841],{},"logrotate"," (обычно уже настроен). Проверьте конфиг в ",[40,3844,3845],{},"/etc/logrotate.conf",[40,3847,3848],{},"/etc/logrotate.d/",[83,3850,3852],{"id":3851},"_3-временные-файлы-и-кэш-пользователей","3. Временные файлы и кэш пользователей",[33,3854,3856],{"className":96,"code":3855,"language":98,"meta":42,"style":42},"# Очистка /tmp (часто безопасно, но могут быть временно используемые файлы)\nsudo rm -rf /tmp/* /tmp/.* 2>/dev/null\n\n# Кэш текущего пользователя (браузеры, приложения)\nrm -rf ~/.cache/*\n",[40,3857,3858,3863,3888,3892,3897],{"__ignoreMap":42},[102,3859,3860],{"class":104,"line":105},[102,3861,3862],{"class":293},"# Очистка /tmp (часто безопасно, но могут быть временно используемые файлы)\n",[102,3864,3865,3867,3870,3873,3876,3878,3881,3883,3885],{"class":104,"line":297},[102,3866,221],{"class":108},[102,3868,3869],{"class":224}," rm",[102,3871,3872],{"class":112}," -rf",[102,3874,3875],{"class":224}," /tmp/",[102,3877,2179],{"class":112},[102,3879,3880],{"class":224}," /tmp/.",[102,3882,2179],{"class":112},[102,3884,3338],{"class":333},[102,3886,3887],{"class":224},"/dev/null\n",[102,3889,3890],{"class":104,"line":312},[102,3891,316],{"emptyLinePlaceholder":315},[102,3893,3894],{"class":104,"line":319},[102,3895,3896],{"class":293},"# Кэш текущего пользователя (браузеры, приложения)\n",[102,3898,3899,3902,3904,3907],{"class":104,"line":325},[102,3900,3901],{"class":108},"rm",[102,3903,3872],{"class":112},[102,3905,3906],{"class":224}," ~/.cache/",[102,3908,309],{"class":112},[1468,3910,3911],{},[25,3912,3292,3913,3915,3916,719,3919,3922,3923,920],{},[28,3914,3295],{}," Не удаляйте файлы в ",[40,3917,3918],{},"/tmp",[40,3920,3921],{},"~/.cache",", если не уверены, что они не используются текущими процессами. Лучше перезагрузить систему для очистки ",[40,3924,3918],{},[83,3926,3928,3929,600,3931],{"id":3927},"_4-большие-файлы-найденные-через-ncdu-или-find","4. Большие файлы, найденные через ",[40,3930,3402],{},[40,3932,3933],{},"find",[25,3935,3936],{},"Найдите файлы больше 100 МБ:",[33,3938,3940],{"className":96,"code":3939,"language":98,"meta":42,"style":42},"sudo find / -type f -size +100M -exec ls -lh {} \\; 2>/dev/null | awk '{ print $5, $9 }' | sort -rh\n",[40,3941,3942],{"__ignoreMap":42},[102,3943,3944,3946,3948,3950,3952,3954,3957,3960,3962,3965,3968,3970,3973,3975,3977,3979,3981,3984,3986,3988],{"class":104,"line":105},[102,3945,221],{"class":108},[102,3947,3753],{"class":224},[102,3949,3335],{"class":224},[102,3951,3765],{"class":112},[102,3953,3768],{"class":224},[102,3955,3956],{"class":112}," -size",[102,3958,3959],{"class":224}," +100M",[102,3961,3807],{"class":112},[102,3963,3964],{"class":224}," ls",[102,3966,3967],{"class":112}," -lh",[102,3969,3818],{"class":224},[102,3971,3972],{"class":112}," \\;",[102,3974,3338],{"class":333},[102,3976,3341],{"class":224},[102,3978,334],{"class":333},[102,3980,460],{"class":108},[102,3982,3983],{"class":224}," '{ print $5, $9 }'",[102,3985,334],{"class":333},[102,3987,2184],{"class":108},[102,3989,3990],{"class":112}," -rh\n",[25,3992,3993],{},"Проверьте, можно ли их удалить или архивировать. Частые кандидаты:",[51,3995,3996,4005,4014,4023],{},[54,3997,3998,3999,715,4002,2594],{},"Дампы баз данных (",[40,4000,4001],{},"*.sql",[40,4003,4004],{},"*.sqlite",[54,4006,4007,4008,715,4011,2594],{},"Изображения Docker (",[40,4009,4010],{},"/var/lib/docker/overlay2",[40,4012,4013],{},"/var/lib/docker/containers",[54,4015,4016,4017,715,4020,2594],{},"Файлы резервных копий (",[40,4018,4019],{},"*.bak",[40,4021,4022],{},"*.backup",[54,4024,4025,4026,715,4029,2594],{},"Изолированные диски виртуальных машин (",[40,4027,4028],{},"*.qcow2",[40,4030,4031],{},"*.vmdk",[20,4033,4035],{"id":4034},"️-шаг-4-специфичные-случаи","🛠️ Шаг 4: Специфичные случаи",[83,4037,4039],{"id":4038},"docker-podman","Docker / Podman",[25,4041,4042],{},"Контейнеры и образы могут занимать гигантские объемы.",[33,4044,4046],{"className":96,"code":4045,"language":98,"meta":42,"style":42},"# Просмотр占用-го места\ndocker system df\n# Очистка неиспользуемых данных (образы, контейнеры, сети, тома)\ndocker system prune -a --volumes\n# Более безопасно: только остановленные контейнеры и dangling образы\ndocker container prune\ndocker image prune\n",[40,4047,4048,4053,4064,4069,4083,4088,4098],{"__ignoreMap":42},[102,4049,4050],{"class":104,"line":105},[102,4051,4052],{"class":293},"# Просмотр占用-го места\n",[102,4054,4055,4058,4061],{"class":104,"line":297},[102,4056,4057],{"class":108},"docker",[102,4059,4060],{"class":224}," system",[102,4062,4063],{"class":224}," df\n",[102,4065,4066],{"class":104,"line":312},[102,4067,4068],{"class":293},"# Очистка неиспользуемых данных (образы, контейнеры, сети, тома)\n",[102,4070,4071,4073,4075,4078,4080],{"class":104,"line":319},[102,4072,4057],{"class":108},[102,4074,4060],{"class":224},[102,4076,4077],{"class":224}," prune",[102,4079,532],{"class":112},[102,4081,4082],{"class":112}," --volumes\n",[102,4084,4085],{"class":104,"line":325},[102,4086,4087],{"class":293},"# Более безопасно: только остановленные контейнеры и dangling образы\n",[102,4089,4090,4092,4095],{"class":104,"line":1409},[102,4091,4057],{"class":108},[102,4093,4094],{"class":224}," container",[102,4096,4097],{"class":224}," prune\n",[102,4099,4100,4102,4105],{"class":104,"line":1414},[102,4101,4057],{"class":108},[102,4103,4104],{"class":224}," image",[102,4106,4097],{"class":224},[83,4108,4110],{"id":4109},"базы-данных-mysqlpostgresql","Базы данных (MySQL/PostgreSQL)",[25,4112,4113],{},"Удаление старых логов бинарных журналов (binlogs) или дампов.",[51,4115,4116,4126],{},[54,4117,4118,4121,4122,4125],{},[28,4119,4120],{},"MySQL:"," ",[40,4123,4124],{},"PURGE BINARY LOGS BEFORE '2026-01-01 00:00:00';"," (выполнить в клиенте mysql).",[54,4127,4128,4131,4132,4135,4136,2037,4139,920],{},[28,4129,4130],{},"PostgreSQL:"," Настройка ",[40,4133,4134],{},"archive_cleanup_command"," или удаление старых файлов в ",[40,4137,4138],{},"pg_wal",[40,4140,4141],{},"pg_xlog",[83,4143,4145],{"id":4144},"старые-ядра-linux","Старые ядра Linux",[25,4147,4148,4149,4152],{},"Оставьте ",[28,4150,4151],{},"только текущее загруженное ядро"," и, возможно, одно предыдущее для резерва.",[33,4154,4156],{"className":96,"code":4155,"language":98,"meta":42,"style":42},"# Для Ubuntu/Debian (узнайте текущее ядро)\nuname -r\n# Удалите ВСЕ остальные через apt (смотрите список из п.3.1)\n",[40,4157,4158,4163,4171],{"__ignoreMap":42},[102,4159,4160],{"class":104,"line":105},[102,4161,4162],{"class":293},"# Для Ubuntu/Debian (узнайте текущее ядро)\n",[102,4164,4165,4168],{"class":104,"line":297},[102,4166,4167],{"class":108},"uname",[102,4169,4170],{"class":112}," -r\n",[102,4172,4173],{"class":104,"line":312},[102,4174,4175],{"class":293},"# Удалите ВСЕ остальные через apt (смотрите список из п.3.1)\n",[20,4177,4179],{"id":4178},"шаг-5-что-делать-если-место-не-освобождается","🚨 Шаг 5: Что делать, если место не освобождается?",[25,4181,4182,4183,4185],{},"Иногда ",[40,4184,2131],{}," показывает свободное место, а система всё равно пишет «No space left». Это может быть из-за:",[431,4187,4188,4199,4216],{},[54,4189,4190,4121,4193,4195,4196,2594],{},[28,4191,4192],{},"Заполнения inodes:",[40,4194,3302],{},". Решение — удалить миллионы мелких файлов (например, старые сессии в ",[40,4197,4198],{},"/var/lib/php/sessions",[54,4200,4201,4204,4205,4207,4208,4211,4212,4215],{},[28,4202,4203],{},"Резервирование места root:"," В ext4 по умолчанию 5% резервируется для root-пользователя. Для диска 1 ТБ это 50 ГБ, которые обычный пользователь не может занять, но ",[40,4206,2131],{}," покажет их как использованные. Проверьте ",[40,4209,4210],{},"tune2fs -l /dev/sda1 | grep 'Reserved block count'",". Уменьшить можно: ",[40,4213,4214],{},"sudo tune2fs -m 1 /dev/sda1"," (оставить 1%).",[54,4217,4218,4221,4222,4225],{},[28,4219,4220],{},"Занятые удалённые (deleted) файлы:"," Файл удалён, но процесс ещё держит его дескриптор. Найти: ",[40,4223,4224],{},"lsof | grep '(deleted)'",". Решение — перезапустить процесс или завершить его.",[20,4227,4229],{"id":4228},"шаг-6-профилактика-и-мониторинг","📈 Шаг 6: Профилактика и мониторинг",[25,4231,4232],{},"Чтобы проблема не повторялась:",[431,4234,4235,4430,4443,4449,4462],{},[54,4236,4237,4240,4241,972,4243,4246,4247],{},[28,4238,4239],{},"Настройте мониторинг:"," Добавьте в ",[40,4242,2737],{},[40,4244,4245],{},"/etc/cron.weekly/disk-check",") скрипт:\n",[33,4248,4250],{"className":96,"code":4249,"language":98,"meta":42,"style":42},"#!/bin/bash\nTHRESHOLD=90\ndf -H | grep -vE '^Filesystem|tmpfs|cdrom' | awk '{ print $5 \" \" $6 }' | while read output;\ndo\n  usep=$(echo $output | awk '{ print $1 }' | cut -d'%' -f1)\n  partition=$(echo $output | awk '{ print $2 }')\n  if [ $usep -ge $THRESHOLD ]; then\n    echo \"Внимание: раздел $partition заполнен на $usep% на $(hostname)!\" | mail -s \"Диск почти полный\" admin@example.com\n  fi\ndone\n",[40,4251,4252,4256,4265,4303,4308,4345,4367,4383,4420,4425],{"__ignoreMap":42},[102,4253,4254],{"class":104,"line":105},[102,4255,2828],{"class":293},[102,4257,4258,4260,4262],{"class":104,"line":297},[102,4259,2856],{"class":535},[102,4261,2836],{"class":333},[102,4263,4264],{"class":224},"90\n",[102,4266,4267,4269,4272,4274,4276,4279,4282,4284,4286,4289,4291,4294,4297,4300],{"class":104,"line":312},[102,4268,2131],{"class":108},[102,4270,4271],{"class":112}," -H",[102,4273,334],{"class":333},[102,4275,337],{"class":108},[102,4277,4278],{"class":112}," -vE",[102,4280,4281],{"class":224}," '^Filesystem|tmpfs|cdrom'",[102,4283,334],{"class":333},[102,4285,460],{"class":108},[102,4287,4288],{"class":224}," '{ print $5 \" \" $6 }'",[102,4290,334],{"class":333},[102,4292,4293],{"class":333}," while",[102,4295,4296],{"class":112}," read",[102,4298,4299],{"class":224}," output",[102,4301,4302],{"class":535},";\n",[102,4304,4305],{"class":104,"line":319},[102,4306,4307],{"class":333},"do\n",[102,4309,4310,4313,4315,4317,4319,4322,4325,4327,4330,4332,4335,4337,4340,4343],{"class":104,"line":325},[102,4311,4312],{"class":535},"  usep",[102,4314,2836],{"class":333},[102,4316,2839],{"class":535},[102,4318,636],{"class":112},[102,4320,4321],{"class":535}," $output ",[102,4323,4324],{"class":333},"|",[102,4326,460],{"class":108},[102,4328,4329],{"class":224}," '{ print $1 }'",[102,4331,334],{"class":333},[102,4333,4334],{"class":108}," cut",[102,4336,577],{"class":112},[102,4338,4339],{"class":224},"'%'",[102,4341,4342],{"class":112}," -f1",[102,4344,2851],{"class":535},[102,4346,4347,4350,4352,4354,4356,4358,4360,4362,4365],{"class":104,"line":1409},[102,4348,4349],{"class":535},"  partition",[102,4351,2836],{"class":333},[102,4353,2839],{"class":535},[102,4355,636],{"class":112},[102,4357,4321],{"class":535},[102,4359,4324],{"class":333},[102,4361,460],{"class":108},[102,4363,4364],{"class":224}," '{ print $2 }'",[102,4366,2851],{"class":535},[102,4368,4369,4372,4375,4378,4381],{"class":104,"line":1414},[102,4370,4371],{"class":333},"  if",[102,4373,4374],{"class":535}," [ $usep ",[102,4376,4377],{"class":333},"-ge",[102,4379,4380],{"class":535}," $THRESHOLD ]; ",[102,4382,2905],{"class":333},[102,4384,4385,4388,4391,4394,4397,4400,4403,4406,4409,4411,4413,4415,4418],{"class":104,"line":1420},[102,4386,4387],{"class":112},"    echo",[102,4389,4390],{"class":224}," \"Внимание: раздел ",[102,4392,4393],{"class":535},"$partition",[102,4395,4396],{"class":224}," заполнен на ",[102,4398,4399],{"class":535},"$usep",[102,4401,4402],{"class":224},"% на $(",[102,4404,4405],{"class":108},"hostname",[102,4407,4408],{"class":224},")!\"",[102,4410,334],{"class":333},[102,4412,2922],{"class":108},[102,4414,2275],{"class":112},[102,4416,4417],{"class":224}," \"Диск почти полный\"",[102,4419,2930],{"class":224},[102,4421,4422],{"class":104,"line":1434},[102,4423,4424],{"class":333},"  fi\n",[102,4426,4427],{"class":104,"line":3605},[102,4428,4429],{"class":333},"done\n",[54,4431,4432,4435,4436,4439,4440,2594],{},[28,4433,4434],{},"Настройте logrotate:"," Убедитесь, что он активен и сжимает логи (",[40,4437,4438],{},"compress","), удаляет старые (",[40,4441,4442],{},"rotate 4",[54,4444,4445,4448],{},[28,4446,4447],{},"Ограничьте размер логов приложений:"," Для nginx, apache, mysql настройте ротацию в их конфигах.",[54,4450,4451,4454,4455,600,4458,4461],{},[28,4452,4453],{},"Регулярно чистите кэш:"," Добавьте ",[40,4456,4457],{},"apt-get clean",[40,4459,4460],{},"yum clean all"," в еженедельный cron.",[54,4463,4464,4468,4469,715,4471,715,4473,920],{},[28,4465,2586,4466],{},[40,4467,3402],{}," для периодической ручной проверки «горячих» точек: ",[40,4470,2200],{},[40,4472,3225],{},[40,4474,4475],{},"/usr",[20,4477,4479],{"id":4478},"часто-задаваемые-вопросы","❓ Часто задаваемые вопросы",[25,4481,4482],{},[28,4483,4484],{},"Q: Можно ли просто удалить всё в /tmp?",[1468,4486,4487],{},[25,4488,4489,4490,4493],{},"A: В большинстве случаев да, особенно после перезагрузки. Но если система работает давно без перезагрузки, некоторые приложения могут хранить там временные файлы. Лучше удалять только старые (",[40,4491,4492],{},"find /tmp -type f -mtime +7 -delete",") или перезагрузиться.",[25,4495,4496],{},[28,4497,4498,4499,4501],{},"Q: После очистки ",[40,4500,2131],{}," показывает свободное место, но приложения всё равно падают с ошибкой «no space».",[1468,4503,4504],{},[25,4505,4506,4507,4509,4510,4513,4514,2390,4517,2594],{},"A: Проверьте inodes (",[40,4508,3302],{},"). Также проверьте, не занято ли место под ",[28,4511,4512],{},"резерв root"," (см. Шаг 5). Или есть ли ",[28,4515,4516],{},"занятые удалённые файлы",[40,4518,4519],{},"lsof | grep deleted",[25,4521,4522],{},[28,4523,4524],{},"Q: Безопасно ли удалять файлы в /var/lib/docker?",[1468,4526,4527],{},[25,4528,4529,4530,4533,4534,4537,4538,4540],{},"A: ",[28,4531,4532],{},"Нет, напрямую — никогда!"," Используйте только команды Docker: ",[40,4535,4536],{},"docker system prune -a",". Прямое удаление файлов в ",[40,4539,3392],{}," приведёт к неработоспособности контейнеров и повреждению данных.",[25,4542,4543],{},[28,4544,4545],{},"Q: Как автоматически удалять старые файлы в какой-то папке?",[1468,4547,4548],{},[25,4549,4550,4551,4553,4554,4556,4557,4560,4561,4564,4565,4568,4569,920],{},"A: Используйте ",[40,4552,3933],{}," с ",[40,4555,2737],{},". Пример: удалить файлы в ",[40,4558,4559],{},"/backup"," старше 30 дней: ",[40,4562,4563],{},"find /backup -type f -mtime +30 -delete",". Добавьте в crontab (",[40,4566,4567],{},"crontab -e","): ",[40,4570,4571],{},"0 2 * * * /usr/bin/find /backup -type f -mtime +30 -delete",[25,4573,4574],{},[28,4575,4576,4577,4579,4580,4582],{},"Q: Почему ",[40,4578,300],{}," показывает меньше места, чем ",[40,4581,2131],{},"?",[1468,4584,4585,4591],{},[25,4586,4587,4588,4590],{},"A: Потому что ",[40,4589,300],{}," не учитывает:",[51,4592,4593,4596,4599],{},[54,4594,4595],{},"Файлы, удалённые, но ещё открытые процессами.",[54,4597,4598],{},"Резервирование места для root (в ext4).",[54,4600,4601,4602,4604],{},"Скрытые системные файлы (если не запущен с ",[40,4603,221],{}," и есть доступные только root каталоги).",[4606,4607],"hr",{},[25,4609,4610,4613,4614,719,4617,920],{},[28,4611,4612],{},"Выполнив этот гайд, вы не только оперативно решите проблему «диск полный», но и получите инструменты для её предотвращения в будущем."," Ключевой принцип: ",[28,4615,4616],{},"регулярный мониторинг",[28,4618,4619],{},"понимание, что занимает место на вашем сервере",[724,4621,4622],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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":42,"searchDepth":297,"depth":297,"links":4624},[4625,4626,4630,4637,4642,4643,4644],{"id":3213,"depth":297,"text":3214},{"id":3305,"depth":297,"text":3306,"children":4627},[4628,4629],{"id":3312,"depth":312,"text":3313},{"id":3396,"depth":312,"text":3397},{"id":3518,"depth":297,"text":3519,"children":4631},[4632,4633,4634,4635],{"id":3525,"depth":312,"text":3526},{"id":3707,"depth":312,"text":3708},{"id":3851,"depth":312,"text":3852},{"id":3927,"depth":312,"text":4636},"4. Большие файлы, найденные через ncdu или find",{"id":4034,"depth":297,"text":4035,"children":4638},[4639,4640,4641],{"id":4038,"depth":312,"text":4039},{"id":4109,"depth":312,"text":4110},{"id":4144,"depth":312,"text":4145},{"id":4178,"depth":297,"text":4179},{"id":4228,"depth":297,"text":4229},{"id":4478,"depth":297,"text":4479},"2026-02-14 12:10:01","Диск переполнен в Linux? Наша пошаговая инструкция поможет найти и удалить большие файлы, очистить кэш и освободить место за 10-15 минут. Проверенные команды для Ubuntu, CentOS и других дистрибутивов.","easy","10-15 мин",[4650,4653,4656,4659],{"question":4651,"answer":4652},"Почему в Linux диск может внезапно заполниться?","Чаще всего из-за роста логов приложений, кэша пакетного менеджера (apt/yum), старых версий ядра, временных файлов или утечек данных в приложениях. Некорректно работающий процесс может бесконечно писать в один файл.",{"question":4654,"answer":4655},"Какая команда показывает, какие папки занимают больше всего места?","Используйте `du -sh /* 2>/dev/null | sort -rh | head -20` для анализа корневых каталогов. Для интерактивного просмотра установите `ncdu` — это самый удобный инструмент.",{"question":4657,"answer":4658},"Безопасно ли удалять файлы в /var/cache/apt/archives?","Да, это безопасно. Эти файлы — уже установленные .deb пакеты. Очистка освободит место, но новые установки потребуют загрузки пакетов заново. Команда: `sudo apt-get clean`.",{"question":4660,"answer":4661},"Как предотвратить повторное заполнение диска?","Настройте ротацию логов (logrotate), регулярно очищайте кэш пакетов, мониторьте рост каталогов через cron и alert-скрипты. Установите `ncdu` для периодической ручной проверки.",[4663,4666,4669,4672,4675],{"name":4664,"text":4665},"Определите, какой раздел заполнен","Выполните `df -h`. Убедитесь, что проблема именно в корневом разделе (/), а не в отдельном монтировании (например, /home). Обратите внимание на процент использования в колонке Use%.",{"name":4667,"text":4668},"Найдите крупнейшие каталоги и файлы","Используйте `sudo du -x / 2>/dev/null | sort -n | tail -20` для поиска 20 самых больших папок в корне. Для интерактивного анализа установите `ncdu /` и исследуйте визуально.",{"name":4670,"text":4671},"Очистите кэш пакетного менеджера и старые данные","Для Debian/Ubuntu: `sudo apt-get autoremove --purge && sudo apt-get clean`. Для RHEL/CentOS: `sudo yum autoremove && sudo yum clean all`. Удалите старые ядра (кроме текущего) через `dpkg -l 'linux-image*'` или `rpm -qa kernel`.",{"name":4673,"text":4674},"Удалите или архивируйте большие файлы","После анализа через ncdu переместите старые логи,备份ы или временные файлы в архив (`tar -czf`) или удалите (`rm -f`). Особое внимание — /var/log, /tmp, ~/.cache, /home/*/Downloads.",{"name":4676,"text":4677},"Настройте мониторинг и профилактику","Добавьте в cron еженедельную проверку: `df -h | grep -E '(/$|/home)'` и отправку отчета. Настройте logrotate для сжатия старых логов. Рассмотрите использование `systemd-tmpfiles` для очистки /tmp.","PT15M",[4680,4681,4682,4683,4684,4685,4686,4687,4688],"диск полный linux","освободить место на диске linux","df du команды","очистка кэша linux","no space left on device linux","удалить старые ядра linux","очистка apt кэша","большие файлы на сервере","мониторинг дискового пространства",{},[4691,4692,4693],"/guides/linux/disk-usage-monitoring","/errors/linux/read-only-file-system","/guides/linux/log-rotation",{"title":3186,"description":4646},"errors/linux/linux-disk-full","Полное руководство по диагностике и решению проблемы заполненного диска в Linux. Вы научитесь использовать команды df, du, ncdu для анализа, безопасно удалять кэш, старые пакеты и большие файлы, а также настроить мониторинг.",[4698,4699,98,3181,4700,4701],"ошибки linux","disk space","ubuntu","centos","96ABboZ0IwlW2zp3xCX6AZaywzXmD_TMrLXeksR6lc0"]