This is an user contributed article.
When it is time to upgrade the memory on a Linux host, it is important to understand the existing memory information of the system, which will help to plan the memory upgrade appropriately without opening server chassis (especially, when you have Linux rack mount server).
What is the current total RAM used in the system?
This can be obtained using free command or from the /proc/meminfo file as shown below. In this example, the current RAM is 1GB.
total used free shared buffers cached Mem: 2074016 2002592 71424 0 480908 937296 -/+ buffers/cache: 584388 1489628 Swap: 1951888 79116 1872772
You can also display memory ram, info using /proc file, enteR:
# grep MemTotal /proc/meminfo
MemTotal: 1034624 kB
What is the maximum RAM supported by the system?
You can use dmidecode command to query all memory related information from the system DMI table. In this example, the maximum RAM supported by the system is 8 GB as shown below.
# dmidecode -t 16
# dmidecode 2.9 SMBIOS 2.3 present. Handle 0x1000, DMI type 16, 15 bytes Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: Multi-bit ECC Maximum Capacity: 8 GB Error Information Handle: Not Provided Number Of Devices: 4
How many memory slots are available for expansion?We know the current memory of the system is 1G. Is this 1 x 1G (or) 2 x 512MB (or) 4 x 256MB? This can be figured out as shown below. In the example below, the system has 4 memory slots and it has 2 x 512MB. If you have to expand upto 8GB of maximum RAM, you need to remove the 512MB from slot 1 and 2, and use 2GB RAM on all the 4 memory slots. This information will give sufficient ideas to plan for RAM expansion accordingly.
# dmidecode -t 17 | grep Size
Size: 512 MB Size: 512 MB Size: No Module Installed Size: No Module Installed
dmidecode can also be used to identify details about several other hardware related information. dmidecode command reads the systems DMI table for the hardware and BIOS information. DMI stands for Desktop Management interface and SMBIOS stands for System Management BIOS.
Distributed Management Task Force maintains the DMI and SMBIOS specification:
🐧 Get the latest tutorials on Linux, Open Source & DevOps via:
|Category||List of Unix and Linux commands|
|Firewall||Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04|
|Network Utilities||dig • host • ip • nmap|
|OpenVPN||CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04|
|Package Manager||apk • apt|
|Processes Management||bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time|
|Searching||grep • whereis • which|
|User Information||groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w|
|WireGuard VPN||Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04|