oracle@prodserver1:[proddb01]# free -m total used free shared buffers cached Mem: 16056 9027 7029 0 233 1093 -/+ buffers/cache: 7700 8356 Swap: 8191 2674 5517
Add totals with the -t flag:
free -t -m total used free shared buffers cached Mem: 16056 9029 7027 0 233 1093 -/+ buffers/cache: 7701 8354 Swap: 8191 2674 5517 Total: 24248 11703 12545
So in this case I am using 7701 MB of memory, while 8354 MB is free for use.
To get a quick glance, you can have a look at the file /proc/meminfo, grep for the highlights, like this:
egrep 'Mem|Cache|Swap' /proc/meminfo MemTotal: 16442312 kB MemFree: 7255224 kB Cached: 1120380 kB SwapCached: 45632 kB SwapTotal: 8388600 kB SwapFree: 5650100 kBA good option for finding out if a server is swapping, is by using vmstat:
oracle@myserver# vmstat -w 10 4 procs -----------------------memory---------------------- ---swap-- -----io---- -system-- --------cpu-------- r b swpd free buff cache si so bi bo in cs us sy id wa st 3 0 2772764 659396 20340 10764836 4 4 19 9 3 4 13 6 81 0 0 6 0 2771740 735076 20364 10766444 82 0 82 7 68360 52089 57 30 13 0 0 10 0 2771484 767816 20376 10766628 8 0 12 4 67349 52155 55 31 15 0 0 7 0 2771228 747480 22832 10768888 34 0 495 12 67799 52119 57 30 13 0 0where * The flag -w indicates wide output * Sample every 10 second * 4 iterations Columns: * si: Amount of memory swapped in from disk (/s) * so: Amount of memory swapped to disk (/s) When a lot of negative swapping occurs the value of "so" (swap out) is increasing.