نحوه بررسی میزان استفاده از RAM در Linux

نحوه بررسی میزان استفاده از RAM در Linux

سعیده مهاجری

هنگام عیب یابی سیستم یا عملکرد نامناسب ، یکی از اولین مواردی است که باید میزان استفاده حافظه  بررسی شود . در این مقاله نحوه بررسی میزان استفاده از RAM در Linux با استفاده از چندین دستور مختلف توضیح خواهیم داد .

دستور free :

free رایج ترین دستور برای بررسی میزان استفاده از حافظه لینوکس است. اطلاعات مربوط به حافظه total ، استفاده شده و آزاد را نمایش می دهد.

به طور کلی ، با گزینه -h فراخوانی می شود که به معنای چاپ خروجی در قالب قابل خواندن توسط شخص است:

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

هر ستون به این معنا است:

  • total – مقدار کل حافظه قابل استفاده توسط برنامه ها.
  • used – حافظه استفاده شده. به این شکل محاسبه می شود: استفاده شده = total – free – buffers – cache
  • free –  استفاده نشده.
  • shared – این ستون را می توان نادیده گرفت فقط برای سازگاری به عقب نشان داده شده است.
  • buff / cache – حافظه ترکیبی مورد استفاده توسط kernel buffers و page cache و slabs است . در صورت نیاز برنامه ها ، این حافظه در هر زمان قابل بازیابی است.
  • available – تخمینی از حافظه موجود برای شروع برنامه های جدید ، بدون تعویض.

دستور free ، اطلاعات مربوط به حافظه فیزیکی و سیستم را چاپ می کند.

دستور top :

top یک command-line است که اطلاعات مربوط به مراحل واقعی را در زمان واقعی نمایش می دهد. همچنین خلاصه سیستم شامل استفاده از حافظه را نشان می دهد.

برای فراخوانی دستور top  کافیست دستور زیر را اجرا کنید:

free -h

خروجی مانند تصویر زیر خواهد بود:

 

نحوه بررسی میزان استفاده از RAM در Linux

صفحه خروجی شامل اطلاعاتی درباره total, free ، حافظه فیزیکی و استفاده شده سیستم است.

ستون ٪ MEM اطلاعاتی راجع به مقدار استفاده شده از حافظه فیزیکی موجود برای هر فرآیند در حال اجرا فراهم می کند.

/proc/meminfo :

ساده ترین راه برای بررسی میزان استفاده از حافظه RAM ، نمایش محتویات فایل مجازی / proc / meminfo است. این فایل توسط دستورات free, top, ps و سایر اطلاعات سیستم استفاده می شود.

برای مشاهده محتویات فایل / proc / meminfo کمتر از cat استفاده کنید:

cat /proc/meminfo

این فایل شامل مقدار زیادی اطلاعات در مورد حافظه سیستم و swap است:

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

اطلاعات موجود در فایل / proc / meminfo قابل تجزیه در اسکریپت های shell است.

اسکریپت ps_mem :

ps_mem یک اسکریپت Python است که میزان استفاده از حافظه RAM در هر برنامه را گزارش می کند. با هر دو  Python  کار می کند و می تواند با pip نصب شود:

sudo pip3 install ps_mem

اجرای ps_mem به administrator privileges نیاز دارد:

sudo ps_mem

خروجی شامل استفاده از حافظه هر برنامه در حال اجرا به ترتیب صعودی است:

 Private  +   Shared  =  RAM used	Program
...
 ۱۱٫۹ MiB +  20.2 MiB =  32.1 MiB	nginx (4)
  ۸٫۲ MiB +  42.4 MiB =  50.6 MiB	systemd-journald
 ۵۵٫۸ MiB + 307.2 MiB = 363.0 MiB	php-fpm7.4 (6)
۲۳۳٫۹ MiB + 234.0 MiB = 467.9 MiB	redis-server
۵۷۸٫۲ MiB + 578.6 MiB =   1.1 GiB	mysqld
---------------------------------
                          ۲٫۲ GiB

این اسکریپت زمانی مفید است که می خواهید بفهمید کدام برنامه در حال اجرا ، حافظه بیشتری از سیستم شما را می گیرد.

جمع بندی :

ما چندین دستور را به شما نشان دادیم که می توانید با استفاده از آنها حافظه سیستم را بررسی کنید.

امیدواریم مطالب مورد پسند بوده باشد.

ما را در شتابان هاست همراهی کنید.

برچسب ها: دستورات لینوکس

  • حمید گفت:

    ممنون از شما بابت مطالب مفید و وبلاگ قشنگتون👌👌