5 команды для управления оперативной памятью в Linux
предосторожность
Эта статья была опубликована более чем год назад, там, возможно, были события.
Пожалуйста, примите это во внимание.
В Linux есть команды для чего угодно, потому что графический интерфейс не всегда может быть виден. Когда работаете на сервере и существует только доступ к оболочке, он доступен, и все должно быть сделано с помощью этих команд.. Итак, сегодня мы рассмотрим команды, которые можно использовать для управления использованием памяти в системе Linux.. La memoria включает RAM e swap.
Часто важно проверить использование памяти и используемую память, чтобы убедиться, что вы не остались без нее и продолжаете предоставлять пользователям доступ к серверу.. Например сайт. Если у вас есть активный веб-сервер, сам сервер должен иметь достаточно памяти для обслуживания посетителей сайта. В противном случае сайт станет очень медленным, или хуже может “опускаться” в пик трафика, просто потому что памяти становится слишком мало. несколько’ как это происходит с ПК.
А теперь давайте посмотрим на пять альтернативных команд:
1_ Команда “свободно”
команда free
пожалуй, самая простая из команд для управления использованием памяти в Linux.. Вот быстрый пример:
$ free -h total used free shared buff/cache available Mem: 3,8G 2,7G 157M 267M 915M 565M Swap: 2,0G 641M 1,4G
опция -h
показывает данные в формате, легко читаемом человеческим глазом. Всего 3,8G - это общий объем установленной оперативной памяти. (4гигабайт). Колонка used
показывает оперативную память, используемую системой, в данном случае 2.7G. Вывод легко объясняется сам собой.
2_ Путь “/proc/meminfo”
В файле /proc/meminfo
содержит всю информацию о памяти подключенной машины. Чтобы прочитать его, нам нужно будет запустить команду cat
. Эта команда выводит содержимое данного файла на терминал., как в следующем примере.
Собственно системный каталог /proc/
не содержит файлов. Содержимое представляет собой виртуальные файлы, содержащие динамическую информацию об используемой системе и ядре..
$ cat /proc/meminfo MemTotal: 3938504 kB MemFree: 274104 kB MemAvailable: 538012 kB Buffers: 30208 kB Cached: 592216 kB SwapCached: 37948 kB Active: 2583536 kB Inactive: 830584 kB Active(anon): 2364820 kB Inactive(anon): 609264 kB Active(file): 218716 kB Inactive(file): 221320 kB Unevictable: 32 kB Mlocked: 32 kB SwapTotal: 2097148 kB SwapFree: 1186988 kB Dirty: 320 kB Writeback: 0 kB AnonPages: 2777800 kB Mapped: 310684 kB Shmem: 182244 kB Slab: 112400 kB SReclaimable: 56800 kB SUnreclaim: 55600 kB KernelStack: 12032 kB PageTables: 67464 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 4066400 kB Committed_AS: 8606840 kB VmallocTotal: 34359738367 kB VmallocUsed: 0 kB VmallocChunk: 0 kB HardwareCorrupted: 0 kB AnonHugePages: 0 kB ShmemHugePages: 0 kB ShmemPmdMapped: 0 kB CmaTotal: 0 kB CmaFree: 0 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 273724 kB DirectMap2M: 3819520 kB
Значения, связанные с интересны MemTotal
, MemFree
, Buffers
, Cached
, SwapTotal
, SwapFree
. Они указывают те же значения, что и команда free
.
3_ команда “vmstat”
команда vmstat
с опцией -s
показывает статистику использования оперативной памяти, более или менее похоже на предыдущую команду. Вот пример:
$ vmstat -s 3938504 K total memory 3055616 K used memory 2634584 K active memory 824360 K inactive memory 228428 K free memory 35676 K buffer memory 618784 K swap cache 2097148 K total swap 933456 K used swap 1163692 K free swap 323777 non-nice user cpu ticks 1544 nice user cpu ticks 80596 system cpu ticks 506483 idle cpu ticks 24004 IO-wait cpu ticks 0 IRQ cpu ticks 1124 softirq cpu ticks 0 stolen cpu ticks 7303873 pages paged in 5460784 pages paged out 22090 pages swapped in 256081 pages swapped out 14156008 interrupts 32916209 CPU context switches 1589867624 boot time 32561 forks
4_ команда “Топ”
Top обычно используется для проверки загруженности оперативной памяти и процессора.. Однако он также сообщает об общем объеме оперативной памяти.. Первые строки вывода показывают интересующую нас информацию:
top - 10:00:02 up 2:06, 3 users, load average: 0,87, 1,29, 1,35 Tasks: 247 total, 2 running, 202 sleeping, 0 stopped, 0 zombie %Cpu(s): 14,2 us, 5,9 sy, 0,0 ni, 71,5 id, 8,1 wa, 0,0 hi, 0,3 si, 0,0 st KiB Mem : 3938504 total, 496344 free, 2890560 used, 551600 buff/cache KiB Swap: 2097148 total, 1120172 free, 976976 used. 620624 avail Mem
Интересная часть - это значения относительно “KiB Mem
” е “KiB Swap
“. Они указывают общее, свободная и используемая память.
5_ команда “хтоп”
Очень похоже на команду top
(не только в названии), также htop
показывает нам информацию об оперативной памяти, но в более читаемом и динамичном виде.
Информация об оперативной памяти с “dmidecode”
Одной из команд, которые когда-либо отображали больше всего информации об оперативной памяти, определенно является dmidecode
.
$ sudo dmidecode -t 17 dmidecode 3.1 Getting SMBIOS data from sysfs. SMBIOS 2.5 present. Handle 0x000D, DMI type 17, 27 bytes Memory Device Array Handle: 0x000C Error Information Handle: No Error Total Width: 64 bits Data Width: 64 bits Size: 2048 MB Form Factor: SODIMM Set: 1 Locator: M1 Bank Locator: Bank 0 Type: Reserved Type Detail: Synchronous Speed: 800 MT/s Manufacturer: Mfg 0 Serial Number: 1234-B0 Asset Tag: Not Specified Part Number: SODIMM000 Handle 0x000E, DMI type 17, 27 bytes Memory Device Array Handle: 0x000C Error Information Handle: No Error Total Width: 64 bits Data Width: 64 bits Size: 2048 MB Form Factor: SODIMM Set: 1 Locator: M2 Bank Locator: Bank 1 Type: Reserved Type Detail: Synchronous Speed: 800 MT/s Manufacturer: Mfg 1 Serial Number: 1234-B1 Asset Tag: Not Specified Part Number: SODIMM001
Выводы
Все упомянутые решения имеют жизненно важное значение во всех областях, где графический интерфейс невозможен.. В случае, если мы работали на классическом компьютере с установленным графическим интерфейсом, самое простое программное обеспечение “gnome-system-monitor
” для гнома и “ksysguard
” от KDE.
Оба показывают общую память, использовал, бесплатно, ла подкачки, Загрузка процессора и сети с простым для понимания графическим интерфейсом.
4 Комментарии
январь · 22 Март 2024 в 11:10 AM
Привет, Джо,
я нашел те же ошибки перевода, но я узнал их такими. И я могу отличить ошибки перевода от качества контента.. Это значит: у вас одна из лучших коллекций команд Linux для получения информации об использовании оперативной памяти.. Большое спасибо за это!
КСТАТИ: Вы прекрасно отреагировали на грубый комментарий Пола. – я бы отреагировал менее любезно…;-)
TheJoe · 24 Март 2024 в 1:44 ВЕЧЕРА
Привет Ян, спасибо за комментарий, за то, что ты такой добрый (и спасибо, что поняли, что я вообще не говорю по-немецки… хе-хе).
Пол был со мной груб, это правда… но у вас обоих была одна и та же проблема на сайте. Это подтолкнуло меня к поиску решения и кажется, что я его нашел.. Теперь никакие предварительно отформатированные теги или теги кода больше не будут переводиться..
Павел · 1 февраль 2023 в 7:30 ВЕЧЕРА
Какая куча мусора.
Команда “свободный” вообще не существует, а также “Вершина”. Я это понимаю “свободно” а также “Топ” был мент.
Команда «/proc / meminfo» вообще не существует ни на одном языке. Здесь все неправильно, /proc/meminfo - это путь, не команда. А с пробелами вообще фигня.
Если вы не хотите или не можете проверять свои сообщения ( включая переведенные версии), лучше скромно промолчать, чем вести ищущих помощи по ложному пути.
TheJoe · 1 февраль 2023 в 8:33 ВЕЧЕРА
Привет, Павел! Как ты сегодня? Какой грубый комментарий, Я никогда не получал такого грубого комментария!
В посте ошибка: /proc/meminfo - это путь, не команда… сейчас поправлю. Но если вы позволите мне, лучший способ указать что-то кому-то, кого вы не знаете, это: “Всем привет, Я заметил большую ошибку в вашем сообщении. Пожалуйста, перепроверьте ту часть, где вы пишете о /proc/meminfo.. это путь, не команда. Ваше здоровье.”.
Переходим ко второму пункту… Вы абсолютно правы: Я не перепроверяю свои сообщения на разных языках, просто потому, что я не знаю ни слова по-немецки (или русский). Но ты вроде не полный нуб, не ты? По крайней мере, вы знаете, какие команды “свободно” а также “Топ” делать. Как вы думаете, мы можем сотрудничать в написании одних и тех же статей на наших соответствующих языках?? Или вы можете просто просмотреть мои посты для немецкой аудитории..
Там нет денег, мы сделаем это для сообщества.
Не стесняйтесь обращаться ко мне с комментарием, или через форму.