Команда Free (свободная оперативная память) в Linux

Free Command in Linux

25 Апреля 2020 | Терминал

Сколько свободной оперативной памяти мне доступно в моей системе Linux? Достаточно ли свободной памяти для установки и запуска новых приложений?

Команда Free (свободная оперативная память) в Linux

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

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


Как использовать Free команду

Синтаксис free команды следующий:

free [OPTIONS] 

При использовании без какой-либо опции, free команда отобразит информацию о памяти и поменяет местами в кибибайтах. 1 кибибайт (КиБ) составляет 1024 байта.

free 

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

              total        used        free      shared  buff/cache   available
Mem:        8075208     3204964     1310540      551232     3559704     4198340
Swap:       2097148           0     2097148
 
В старых версиях Linux выходные данные могут немного отличаться.

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

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


Отображение использования памяти в удобочитаемом формате 

Как мы видели в приведенном выше примере, по умолчанию free команда отображает информацию о памяти в кибибайтах. Чтобы просмотреть информацию в удобочитаемом формате (обычно мегабайты и гигабайты), используйте -h параметр:

free -h 
              total        used        free      shared  buff/cache   available
Mem:           487M        219M         54M        4.5M        214M        228M
Swap:          1.5G          0B        1.5G
 

Отображение использования памяти в других метриках 

Команда free также позволяет указать единицу измерения памяти. Допустимые варианты:

  • -b , --bytes - Вывести вывод в байтах.
  • --kilo - Отображение вывода в килобайтах (1 КБ = 1000 байт).
  • --mega - Показать вывод в мегабайтах.
  • --giga - Отображение вывода в гигабайтах.
  • --tera - Отображение вывода в терабайтах.
  • -k , --kibi - Вывести вывод в кибибайтах. (1 КБ = 1024 байт). Это единица по умолчанию.
  • -m , --mebi - выход дисплея в Mebibytes.
  • -g , --gibi - выход дисплея в gibytes.
  • --tebi - Отображать вывод в тебибайтах.
  • --peti - Выводить вывод в пебибайтах.
  • --si - Вместо 1024 используйте полномочия 1000. Например --mebi --si , равно --mega .

Например, чтобы показать вывод в мегабайтах, вы должны набрать:

free --mega 
              total        used        free      shared  buff/cache   available
Mem:           8075        4022         233         614        3819        3336
Swap:          2097           0        2097
 

Отображение итогов в столбце 

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

free -h -t 
              total        used        free      shared  buff/cache   available
Mem:           7.7G        3.9G        483M        526M        3.4G        3.2G
Swap:          2.0G          0B        2.0G
Total:         9.7G        3.9G        2.5G 


Постоянно печатать вывод 

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

Например, чтобы печатать информацию о памяти каждые пять секунд, вы должны выполнить:

free -s 5 

Команда free будет продолжать отображать результат, пока вы не нажмете CTRL+C . Это похоже на поведение watch команды .


Для отображения результата для определенного числа раз использовать -c , --count вариант. В приведенном ниже примере команда напечатает результат десять раз:

free -s 5 -c 10 

Вывод 

К настоящему времени вы должны хорошо понимать, как использовать и интерпретировать free команду. Для просмотра всех доступных параметров free командной строки введите man free в своем терминале.


    Комментарии

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

Загрузка комментариев...