A Linux server that shows almost no free memory is often perfectly healthy. The old way of reading free output makes that harder to recognize. Here’s how to interpret the current free command and use its options to monitor RAM and swap.
Most Linux administrators run free within the first minute of logging in to a slow server because it provides a quick snapshot of memory usage.
The problem is that many older guides, describe an output format that modern systems no longer use. The familiar -/+ buffers/cache line is gone, and options such as -o may no longer be supported.
The free command is part of the procps-ng package and reads memory statistics from /proc/meminfo, a virtual file maintained by the Linux kernel. Its output has evolved over the years, most notably with the addition of the available column and changes to how used memory is calculated and this guide explains how to interpret modern free output and use its current options to monitor memory and swap.