Информация об использовании памяти linux

Как проверить использование памяти в Linux

При устранении неполадок, связанных с замедлением работы или неправильным поведением системы или приложений, в первую очередь необходимо проверить использование системной памяти.

В этой статье объясняется, как проверить использование ОЗУ в Linux с помощью нескольких разных команд.

free команда

free — это наиболее часто используемая команда для проверки использования памяти в системе Linux. Он отображает информацию об общей, используемой и свободной памяти.

Как правило, free вызывается с параметром -h что означает печать вывода в удобочитаемом формате:

 total used free shared buff/cache available Mem: 3936 1087 252 130 2596 2427 Swap: 0 0 0 

Вот что означает каждый столбец:

  • total — общий объем памяти, который может использоваться приложениями.
  • used — Используемая память. Он рассчитывается как: used = total — free — buffers — cache
  • бесплатно — Свободная / неиспользуемая память.
  • общий — этот столбец можно игнорировать; он показан только для обратной совместимости.
  • buff / cache — объединенная память, используемая буферами ядра, а также страничным кешем и блоками. Эта память может быть освобождена в любое время, если это необходимо приложениям.
  • available — оценка объема памяти, доступного для запуска новых приложений без подкачки.

Команда free печатает информацию о физической памяти и системном свопе .

top команда

top — это утилита командной строки, отображающая информацию о запущенных процессах в реальном времени. Он также показывает сводку системы, включая использование памяти.

Чтобы вызвать команду, просто введите top :

Результат будет выглядеть примерно так:

Заголовок вывода включает информацию об общей, свободной и используемой физической памяти и памяти подкачки в системе.

Столбец %MEM предоставляет информацию об используемой доле доступной физической памяти для каждого запущенного процесса.

/proc/meminfo

Самый простой способ проверить использование оперативной памяти — отобразить содержимое виртуального файла /proc/meminfo . Этот файл используется командами free , top , ps и другими командами системной информации.

Используйте less или cat для просмотра содержимого файла /proc/meminfo :

Файл включает в себя большой объем информации об использовании системной памяти и подкачки:

MemTotal: 4030592 kB MemFree: 401804 kB MemAvailable: 2507504 kB . 

Информация из файла /proc/meminfo может быть проанализирована и использована в сценариях оболочки.

Читайте также:  Linux create shared folder

ps_mem Скрипт

ps_mem — это скрипт Python, который сообщает об использовании памяти RAM для каждой программы. Он работает как с Python 2, так и с 3 и может быть установлен с помощью pip :

Для ps_mem требуются права администратора:

Вывод будет включать использование памяти каждой запущенной программой в порядке возрастания:

 Private + Shared = RAM used Program . 11.9 MiB + 20.2 MiB = 32.1 MiB nginx (4) 8.2 MiB + 42.4 MiB = 50.6 MiB systemd-journald 55.8 MiB + 307.2 MiB = 363.0 MiB php-fpm7.4 (6) 233.9 MiB + 234.0 MiB = 467.9 MiB redis-server 578.2 MiB + 578.6 MiB = 1.1 GiB mysqld --------------------------------- 2.2 GiB ================================= 

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

Выводы

Мы показали вам несколько команд, которые вы можете использовать для проверки использования системной памяти.

Если у вас есть вопросы или замечания, пожалуйста, оставьте комментарий ниже.

Источник

5 команд для проверки использования памяти на Linux

Favorite

Добавить в избранное

Главное меню » Операционная система Linux » 5 команд для проверки использования памяти на Linux

Использование памяти

В Linux почти все команды без графического интерфейса. При работе на серверах доступа только оболочка. Итак, сегодня мы покажем команды, которые могут быть использованы для проверки использования памяти в системе Linux. Память включает в себя оперативную память и подкачку.

Часто важно проверить использование общей памяти и памяти, используемой в процессе на серверах, а так же неиспользуемые ресурсы. Если вы работаете на веб-сервере, то сервер должен иметь достаточно памяти, чтобы обслуживать посетителей сайта. Если такого не будет, то сайт станет очень медленным или даже стать недоступным, когда будет всплеск трафика, просто потому, что памяти будет не хватать. Тоже самое, как и то, что происходит на настольном компьютере.

1. Команда free

Команда free является самой простой и легкой в использовании командой, чтобы проверить использование памяти на Linux. Вот краткий пример

$ free -m total used free shared buffers cached Mem: 7976 6459 1517 0 865 2248 -/+ buffers/cache: 3344 4631 Swap: 1951 0 1951

Опция -m отображает все данные в мегабайтах. Общий общий объем оперативной памяти ОС Linux 7976 МБ, установленной в системе, то есть 8 Гб. Колонка used показывает объем оперативной памяти, которая может быть использована на Linux, в нашем случае составит около 6,4 Гб. Загвоздкой здесь является колонки cached и buffers. Вторая строка говорит, что 4,6 Гб свободно. Это свободная память в первой строке с добавлением буферов и объема памяти кэша.

Читайте также:  Не работает ютуб на linux

Linux имеет привычку кэшировать для повышения производительности, так что память может быть освобождена и использована при необходимости.
Последняя строка, это подкачка памяти (swap), который в этом случае полностью свободна.

2. /proc/meminfo

Следующий способ проверить использование памяти, прочитать файл /proc/meminfo. Знайте, что файловая система /proc не содержит реальных файлов. Они являются виртуальными файлами, которые содержат динамическую информацию о ядре и системы.

$ cat /proc/meminfo MemTotal: 8167848 kB MemFree: 1409696 kB Buffers: 961452 kB Cached: 2347236 kB SwapCached: 0 kB Active: 3124752 kB Inactive: 2781308 kB Active(anon): 2603376 kB Inactive(anon): 309056 kB Active(file): 521376 kB Inactive(file): 2472252 kB Unevictable: 5864 kB Mlocked: 5880 kB SwapTotal: 1998844 kB SwapFree: 1998844 kB Dirty: 7180 kB Writeback: 0 kB AnonPages: 2603272 kB Mapped: 788380 kB Shmem: 311596 kB Slab: 200468 kB SReclaimable: 151760 kB SUnreclaim: 48708 kB KernelStack: 6488 kB PageTables: 78592 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 6082768 kB Committed_AS: 9397536 kB VmallocTotal: 34359738367 kB VmallocUsed: 420204 kB VmallocChunk: 34359311104 kB HardwareCorrupted: 0 kB AnonHugePages: 0 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 62464 kB DirectMap2M: 8316928 kB

Проверьте значения MemTotal, MemFree, Buffers, Cached, SwapTotal и SwapFree. Они указывают на одни и те же значения, использования памяти в команде free.

3. vmstat

Команда vmstat с опцией -s, показывает статистику использования памяти почти как команда Proc. Вот пример

$ vmstat -s 8167848 K total memory 7449376 K used memory 3423872 K active memory 3140312 K inactive memory 718472 K free memory 1154464 K buffer memory 2422876 K swap cache 1998844 K total swap 0 K used swap 1998844 K free swap 392650 non-nice user cpu ticks 8073 nice user cpu ticks 83959 system cpu ticks 10448341 idle cpu ticks 91904 IO-wait cpu ticks 0 IRQ cpu ticks 2189 softirq cpu ticks 0 stolen cpu ticks 2042603 pages paged in 2614057 pages paged out 0 pages swapped in 0 pages swapped out 42301605 interrupts 94581566 CPU context switches 1382755972 boot time 8567 forks

Верхние несколько строк указывают общий объем памяти, объем свободной памяти и т.д., и так далее.

4. команда top

Команда top обычно используется для проверки памяти и процессора для каждого процесса. Тем не менее она также сообщает общее использование памяти и может быть использована для контроля общего использования памяти. Вывод результата имеет необходимую информацию. Вот пример вывода

top - 15:20:30 up 6:57, 5 users, load average: 0.64, 0.44, 0.33 Tasks: 265 total, 1 running, 263 sleeping, 0 stopped, 1 zombie %Cpu(s): 7.8 us, 2.4 sy, 0.0 ni, 88.9 id, 0.9 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 8167848 total, 6642360 used, 1525488 free, 1026876 buffers KiB Swap: 1998844 total, 0 used, 1998844 free, 2138148 cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2986 enlighte 20 0 584m 42m 26m S 14.3 0.5 0:44.27 yakuake 1305 root 20 0 448m 68m 39m S 5.0 0.9 3:33.98 Xorg 7701 enlighte 20 0 424m 17m 10m S 4.0 0.2 0:00.12 kio_thumbnail

Проверьте KiB Mem и KiB Swap в заголовке. Они указывают на общую, используемую и свободную объем памяти. Информация буфера и кэша присутствует здесь тоже, как и команды free.

Читайте также:  Create virtual interface linux

5. Команда htop

Подобно команды free, команда htop также показывает использование памяти наряду с другими деталями.

HTOP использование памяти RAM

Заголовок в верхней части показывает использование центрального процессора вместе с оперативной памятью и использование своп с соответствующими цифрами.

Информация памяти (RAM)

Чтобы узнать аппаратную информацию об установленной оперативной памяти, используйте команду dmidecode. Команда выводит детальную информацию об установленной оперативной памяти.

$ sudo dmidecode -t 17 # dmidecode 2.11 SMBIOS 2.4 present. Handle 0x0015, DMI type 17, 27 bytes Memory Device Array Handle: 0x0014 Error Information Handle: Not Provided Total Width: 64 bits Data Width: 64 bits Size: 2048 MB Form Factor: DIMM Set: None Locator: J1MY Bank Locator: CHAN A DIMM 0 Type: DDR2 Type Detail: Synchronous Speed: 667 MHz Manufacturer: 0xFF00000000000000 Serial Number: 0xFFFFFFFF Asset Tag: Unknown Part Number: 0x524D32474235383443412D36344643FFFFFF

Информация включает в себя размер (2048MB), тип (DDR2), скорость (667 МГц) и т.д.

Резюме

Все вышеперечисленные команды работают с терминала и не имеют графического интерфейса. При работе на рабочем столе с графическим интерфейсом, гораздо проще в использовании графический инструмент с графическим выводом. Наиболее распространенные инструменты gnome-system-monitor в gnome и
KSysguard в KDE. Оба предоставляют информацию об использовании ресурсов о CPU, RAM, обмена и пропускной способности сети в графическом режиме и легко понятном визуальном выводы.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Оцените статью
Adblock
detector