Check Free Memory Slots Linux

Posted By admin On 16/07/22

The most important and single way of determining the total available space of the physical memory and swap memory is by using “ free ” command. The Linux “ free ” command gives information about total used and available space of physical memory and swap memory with buffers used by kernel in Linux/Unix like operating systems.

Check Free Memory Slots Linux
  1. Checking free memory slots left hi, I was just wondering is there any way one can check how many memory slots are unused in a HP server running HP UX 11i (rp5xxx,7xxx,8xxx and SD) without going all throught those calculations 'I have that much memory, my system can support up to that much memory - it means that I can add that much more memory'.
  2. First check the actual memory Info from the either “top” or “free -m” command. Check the “dmidecode” output for the DIMM slot and each RAM size; FREE COMMAND OUTPUT. So the below command shows that we have around 2GB of memory installed in the system. root@bravo# free -m total used free shared buffers cached Mem: 2026 1585 440 0.
  3. The number of memory devices in the results of sudo dmidecode -type 17 is equal to the number of memory slots, so the command to print the number of RAM slots is: sudo dmidecode -type 17 grep 'Memory Device' -count The results of this command will be one integer number equal to the number of RAM slots.
  4. This article will outline how to check memory on linux and unix based machines. I’ll demonstrate a couple of useful commands that check memory on the hard drive on your machine. Df -h, which stands for disk free, checks for the space left on the drive in a human friendly format. It’s very useful to see the overall disk space left on.

Some time back I was using a command called meminfo in Solaris to find the memory information in Solaris. It is indeed a nice script written by schmidt http://www.4schmidts.com/memconf.html .

Later, I moved my role from supporting Solaris systems to Linux systems and I was struggling to get the same piece of info in Linux about the memory bank/slot and how memory is present in each memory bank. Today I got an audit work to validate the system data that someone has filled about Linux servers. So, this time I couldn’t escape and I had to find a way out. I always knew that there should be info in dmidecode command, but as usual my laziness was stopping me from looking in to the output.

Check

So finally I had to push my lazy attitude and dive in to the Info which dmidecode was giving. I was really surprised to see that there is enough info that we can grab from the dmidecode output. So here is my analysis.

  • First check the actual memory Info from the either “top” or “free -m” command.
  • Check the “dmidecode” output for the DIMM slot and each RAM size

FREE COMMAND OUTPUT

So the below command shows that we have around 2GB of memory installed in the system.

[root@bravo]# free -m
total used free shared buffers cached
Mem: 2026 1585 440 0 222 551
-/+ buffers/cache: 811 1215
Swap: 4094 0 4094

TOP COMMAND OUTPUT

Let’s verify our understanding of memory available using the TOP command which also shows that we have approx 2GB memory approx.

Free

[root@bravo]# top

Memory

top – 13:18:56 up 216 days, 4:12, 3 users, load average: 0.14, 0.11, 0.09
Tasks: 199 total, 1 running, 198 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.8% us, 1.4% sy, 0.0% ni, 97.4% id, 0.3% wa, 0.0% hi, 0.0% si
Mem: 2074900k total, 1623648k used, 451252k free, 227816k buffers
Swap: 4192924k total, 296k used, 4192628k free, 565160k cached

DMIDECODE COMMAND

Run the DMIDECODE command and look for the data where the word “Physical Memory Array” starts and go through each line to get detailed information. In some new systems you can also use the command dmidecode –s memory and dmidecode –t 17 , where “s” means string and “t” means type. Let’s just use dmidecode here for now.

Check free memory slots linux software

Summary of the memory data

——————————————————————————————-

Maximum memory that the ON BOARD memoryslots can accept is= 8GB

Type of memory = DDR

Error Correction Type: Single-bit ECC

Size of each DIMM = 1024 MB (1GB)

DIMM Speed = 333 MHz (3.0 ns)

Number of DIMM slots = Total4 DIMM slots and only 2 DIMM slots are filled with 1GB memory each

Note: where ever the Memory module is not installed the “Size” would show as “Size: No Module Installed”

Check Free Memory Slots Linux Software

——————————————————————————————-

[root@bravo]# dmidecode more

So here is the summary of the Info that we are looking from the Important Information we have from the dmidecode data

Handle 0x1000
DMI type 16, 15 bytes.
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Single-bit ECC
Maximum Capacity: 8 GB
Error Information Handle: Not Provided
Number Of Devices: 4

Handle 0x1100
DMI type 17, 23 bytes.
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 1024 MB
Form Factor: DIMM

Set: 1
Locator: DIMM 01
Bank Locator: Not Specified
Type: DDR
Type Detail: Synchronous
Speed: 333 MHz (3.0 ns)
Handle 0x1101
DMI type 17, 23 bytes.
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 1024 MB
Form Factor: DIMM
Set: 1
Locator: DIMM 02
Bank Locator: Not Specified
Type: DDR
Type Detail: Synchronous
Speed: 333 MHz (3.0 ns)

Check Free Memory Slots Linux

Handle 0x1102
DMI type 17, 23 bytes.
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 2
Locator: DIMM 03
Bank Locator: Not Specified
Type: DDR
Type Detail: Synchronous
Speed: 333 MHz (3.0 ns)

Handle 0x1103
DMI type 17, 23 bytes.
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: No Module Installed
Form Factor: DIMM
Set: 2
Locator: DIMM 04
Bank Locator: Not Specified
Type: DDR
Type Detail: Synchronous
Speed: 333 MHz (3.0 ns)

So here is my learning for the day. So I am signing of for the day looking forward to learn something new tomorrow. Infact there are couple of things that I have learnt today and I would try to either share it today or tomorrow in my new post.

Also, one thing that I started believing these days is that there is no job which is small or waste of time. We just have to look at the learning that we can grab from it. I am sure every job teaches us something might not be technical always but I am sure we would have some thing to learn from it directly or in directly.

Adios ! Amigos !

The desire to write grows with writing.Desiderius Erasmus