نحوه بررسی میزان رم استفاده شده در لینوکس

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

فرمان Free

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

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

1
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
  • free – حافظه آزاد / استفاده نشده
  • buff / cache – حافظه ترکیبی که توسط بافر هسته و حافظه کش صفحه و اسلب استفاده می شود. در صورت نیاز توسط برنامه ها ، این حافظه در هر زمان قابل بازیابی است
  • available – تخمینی از حافظه ای که برای شروع برنامه های جدید ، بدون swap در دسترس است

دستور Freeاطلاعات حافظه فیزیکی و Swap سیستم را چاپ میکند

 

فرمان Top

topیک ابزار خط فرمان است که اطلاعات زمان حال را در مورد فرآیندهای در حال اجرا نمایش می دهد. همچنین خلاصه اطلاعات سیستم ، از جمله استفاده از رم را نشان می دهد

برای فراخوانی این فرمان ، به سادگی تایپ کنید top :

1
top

خروجی چیزی شبیه به این خواهد بود :

نحوه بررسی میزان رم استفاده شده در لینوکس

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

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

/proc/meminfo

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

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

1
cat /proc/meminfo

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

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

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

اسکریپت ps_mem

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

1
sudo pip3 install ps_mem

این اسکریپت به دسترسی ادمین نیاز دارد. برای راه اندازی آن ، sudo ps_mem را تایپ کنید :

1
sudo 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
=================================

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

آیا این پاسخ به شما کمک کرد؟ 0 کاربر این را مفید یافتند (0 نظرات)