This site uses advanced css techniques
The Evolution™ payroll service-bureau software system is built around the Firebird SQL database system, with a Windows server as the middle tier and Linux for the backend database server.
The database servers run a version of Linux (usually Red Hat or Fedora Core), and it's not uncommon to wonder just what's in these machines. This Tech Tip discusses how to discover some of the basic technical information about what's inside without having to open the boxes.
All of these require that you be logged into the Linux machine, but it's not necessary to be the root user; any user has the rights to discover this information.
Firebird is very demanding of RAM, and all DB servers should be maxed out with 4 gigabytes. Memory prices are constantly dropping, and the performance gains of additional memory are substantial (especially under heavy processing load).
Historically, older versions of Linux have required some special tuning to use more than 4 gigabytes of RAM, so 4G was a practical limit for many years. But modern systems go right past this to 8 or 16G easily: if your hardware and OS support more RAM, use it.
All Linux systems support the /proc filesystem, which exports a remarkable amount of information about the underlying system. We'll be querying this to find out the RAM.
At the command prompt, run the command more /proc/meminfo; the first line shows the number of kilobytes of physical memory in the system:
$ more /proc/meminfo MemTotal: 4147128 kB «— total system memory MemFree: 489512 kB Buffers: 130512 kB Cached: 3209448 kB SwapCached: 0 kB Active: 2198076 kB Inactive: 1396932 kB HighTotal: 786432 kB HighFree: 1024 kB LowTotal: 3360696 kB LowFree: 488488 kB SwapTotal: 4096564 kB SwapFree: 4096420 kB ... lots more deleted
Divide this number by 1024 to get the number of megabytes: in this case it's 4049. Note that the system itself usually reserves a bit of memory for its own use (BIOS shadowing, video RAM), so it may not be exactly 4096 megabytes, but it's obvious a 4GB machine.
We'll use a similar method to discover information about all the processors installed: /proc/cpuinfo. This file shows a great deal of data about each one: most of this information is not that useful. In addition, it can be somewhat ambiguous when considering HyperThreading and dual-core processors.
It's easy to run more /proc/cpuinfo to see the whole file, but we're going to search out just the model inforamtion:
$ grep "model name" /proc/cpuinfo model name : Intel(R) Xeon(TM) CPU 2.80GHz model name : Intel(R) Xeon(TM) CPU 2.80GHz model name : Intel(R) Xeon(TM) CPU 2.80GHz model name : Intel(R) Xeon(TM) CPU 2.80GHz
Linux believes that there are four processors, and in this case, we happen to know that this server has two physical processors, each with two full CPU cores: this is a hallmark of the Xeon product line.
These are real processors, so we should really consider this machine to have four CPUs.
HyperThreading, on the other hand, presents a few of a second processor, but it's really only providing a second set of registers sharing a single CPU core. HT provides a minor peformance benefit, but it's positively not the same as a real second processor.
Running the same command on a machine known to have two physical CPUs, we see:
$ grep "model name" /proc/cpuinfo model name : Pentium III (Coppermine) model name : Pentium III (Coppermine)
This shows just two processors, and since we know that these CPUs support HyperThreading, it must have been disabled in the BIOS. Running the same command on a different machine with HyperThreading enabled does indeed show four lines of output.
More information about the effect of HyperThreading in an Evolution environment can be found here:
Finally, we visit the disk-drive space: since these servers hold the all-important payroll databases, it's crucial that they not fill up. Running out of space is very bad for a database server, but it's fortunately easy to query.
Running the df ("disk free") command, we can see how much space is available and how much is used on each of the machine's filesystems:
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 3.9G 1.1G 2.7G 28% /
/dev/sda2 99M 11M 83M 12% /boot
/dev/sda6 127G 43G 78G 36% /db «— Evo lives here
none 2.0G 0 2.0G 0% /dev/shm
Typically, Evolution is kept on the /db partition (the rightmost column), and the "Size" column shows the overall size available, this one has 127GByte of space, and only 36% has been used.
With 78 GByte free space (the "Avail" column), this partition has plenty of room to grow.
Each database server can be built differently, even with partitions not mentioned here, so it may be necessary to show the df listing to an expert in order to provide guidance on what matters and what doesn't.
This does not show whether the computer is using a RAID configuration: this must be discovered by other, vendor-specific means.
This information is not produced or endorsed by iSystems, LLC.
First published: 2006/08/30