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/meminfoMit 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 -15A 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 5Derí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 -15Ismerje 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.