CH-J Server Managerszerverkezelés SSH felett
Menü
Minden útmutató és cikk →

A RAM, a gyorsítótár és a swap értelmezése Linux szerveren

Mit jelentenek a free oszlopai, miért nem gond gyakran a magas memóriahasználat, és mely jelek utalnak valódi memóriahiányra.

Az available értékét figyelje a free helyett

A Linux az egyébként kihasználatlan memóriát lemezgyorsítótárként használja, ezért egy egészséges szerveren normális az alacsony szabad memória. Az available oszlop a kernel becslése arra, mennyi memóriát kaphatnak új feladatok a swap igénybevétele nélkül. Ezt az értéket érdemes figyelni. A used pontos számítása az eszköz verziójától függ, ezért különböző rendszerek között ne hasonlítsa össze.

free -h
grep -E 'MemAvailable|Shmem:|SReclaimable' /proc/meminfo

Mit lehet és mit nem lehet felszabadítani a gyorsítótárból

A lapgyorsítótár általában felszabadítható, amikor az alkalmazásoknak memóriára van szükségük. A megosztott memória és a tmpfs (Shmem) szintén a gyorsítótárban jelenik meg, de nem dobható el egyszerűen, mert olyan adatokat tárol, amelyeknek nincs lemezen lévő másolata. A nagy gyorsítótár és az alacsony available érték ezért gyakran nagy tmpfs vagy megosztott memóriaszegmens jelenlétére utal.

df -h -t tmpfs
sudo slabtop -o | head -15

A használt swap önmagában nem probléma

Egy szerver akár hetekig is tarthat ritkán használt lapokat a swap területén káros következmények nélkül. A folyamatos adatmozgatás okoz gondot. Figyelje a vmstat si és so oszlopát: a tartósan nulla feletti értékek aktív lapcserét jeleznek, ami valódi memóriahiányra utal.

swapon --show
vmstat 1 5

Derítse ki, mi használja a memóriát

Rendezze a folyamatokat rezidens memória szerint. Az RSS a folyamatok között megosztott lapokat mindegyik folyamatnál beleszámítja, ezért több folyamat értékei nem adhatók egyszerűen össze. A PSS értéket kezelő eszközök, például a smem, pontosabb összeget adnak, ha telepítve vannak.

ps -eo pid,user,rss,comm --sort=-rss | head -15

Ismerje fel a valódi memóriahiányt

Jelei az alacsony elérhető memória, a folyamatos lapcsere és a memóriahiány miatti folyamatleállító által kilőtt folyamatok. Ellenőrizze a kernel naplóját. Ne futtassa a drop_caches parancsot a számok szebbé tételéhez: ez csak újabb lemezolvasásra kényszeríti a szervert, és semmit sem old meg.

sudo journalctl -k --no-pager | grep -iE 'out of memory|oom-kill'

Memória a CH-J Server Manager alkalmazásban

A System Monitor SSH kapcsolaton olvassa ezeket az értékeket. Linuxon a used meghatározása MemTotal − MemFree − Buffers − Cached − SReclaimable, az available pedig a kernel becslése. A megosztott memória a Cached része, és nem szabadítható fel; a sáv kategóriái nem fedik egymást. Mivel a képlet eltér a free egyes verzióitól, a számok nem feltétlenül egyeznek pontosan. A swap használatát és annak előzményeit is megjeleníti. A ZFS ARC külön kezelést nem kap, ezért ZFS gépeken használt memóriának számít.

Részletes dokumentáció

man: free →

man: proc_meminfo →

Biometrikus feloldás és biztonság →