How to find out what motherboard you have.

dos2unix

Well-Known Member
Joined
May 3, 2019
Messages
3,237
Reaction score
2,988
Credits
28,493
This will be a very short and sweet tutorial.
How do you know what kind of motherboard is in your computer?
Note: some motherboard vendors don't support these commands.

Using inxi
Code:
inxi -M

Using lshw
Code:
lshw -c system
 


A quick commentary about inxi and lshw.

I use both, I like both. But I have noticed over the years that Debian based systems tend to have inxi installed on
most distro's. Fedora based systems tend to have lshw installed? Why... I'm not sure but I have a theory.

I have many computers in my house. Most of them have a server distro with no GUI installed.
I only have 3 computers with Xwindows installed. The rest are all command line only.

If I install lshw on an rpm based distro. It installs only 1 package.
If I install inxi on an rpm based distro, it installs 54 packages. Mostly perl.

Code:
Installing:
 inxi                                   noarch     3.3.37-1.fc41                           updates               2.2 MiB
Installing dependencies:
 freeipmi                               x86_64     1.6.14-3.fc41                           fedora                8.5 MiB
 hddtemp                                x86_64     0.3-0.57.beta15.fc41                    fedora              139.2 KiB
 ipmitool                               x86_64     1.8.19-8.fc41                           fedora                5.5 MiB
 libX11-xcb                             x86_64     1.8.10-2.fc41                           fedora               15.0 KiB
 libXcomposite                          x86_64     0.4.6-4.fc41                            fedora               44.5 KiB
 libXi                                  x86_64     1.8.2-1.fc41                            fedora               76.7 KiB
 libXinerama                            x86_64     1.1.5-7.fc41                            fedora               19.0 KiB
 libXmu                                 x86_64     1.2.1-2.fc41                            fedora              191.5 KiB
 libXrandr                              x86_64     1.5.4-4.fc41                            fedora               51.9 KiB
 libXtst                                x86_64     1.2.5-1.fc41                            fedora               33.6 KiB
 libXxf86dga                            x86_64     1.1.6-4.fc41                            fedora               33.8 KiB
 libXxf86vm                             x86_64     1.1.6-1.fc41                            updates              28.2 KiB
 perl-Clone                             x86_64     0.47-1.fc41                             fedora               36.5 KiB
 perl-Compress-Raw-Bzip2                x86_64     2.212-512.fc41                          fedora               69.5 KiB
 perl-Compress-Raw-Zlib                 x86_64     2.212-512.fc41                          fedora              162.4 KiB
 perl-Cpanel-JSON-XS                    x86_64     4.38-4.fc41                             fedora              392.2 KiB
 perl-Data-Dump                         noarch     1.25-11.fc41                            fedora               50.2 KiB
 perl-Digest-HMAC                       noarch     1.04-11.fc41                            fedora               28.1 KiB
 perl-Digest-SHA                        x86_64     1:6.04-512.fc41                         fedora              116.6 KiB
 perl-Encode-Locale                     noarch     1.05-30.fc41                            fedora               19.0 KiB
 perl-File-Copy                         noarch     2.41-512.fc41                           updates              19.6 KiB
 perl-File-Listing                      noarch     6.16-4.fc41                             fedora               41.2 KiB
 perl-File-Slurper                      noarch     0.014-6.fc41                            fedora               28.7 KiB
 perl-HTML-Parser                       x86_64     3.83-1.fc41                             fedora              281.8 KiB
 perl-HTML-Tagset                       noarch     3.24-2.fc41                             fedora               18.7 KiB
 perl-HTTP-Cookies                      noarch     6.11-4.fc41                             fedora               73.4 KiB
 perl-HTTP-Date                         noarch     6.06-5.fc41                             fedora               41.2 KiB
 perl-HTTP-Message                      noarch     6.46-2.fc41                             fedora              215.3 KiB
 perl-HTTP-Negotiate                    noarch     6.01-39.fc41                            fedora               27.6 KiB
 perl-I18N-Langinfo                     x86_64     0.24-512.fc41                           updates              38.8 KiB
 perl-IO-Compress                       noarch     2.212-513.fc41                          updates               1.0 MiB
 perl-IO-HTML                           noarch     1.004-13.fc41                           fedora               45.2 KiB
 perl-LWP-MediaTypes                    noarch     6.04-19.fc41                            fedora               79.0 KiB
 perl-Math-Complex                      noarch     1.62-512.fc41                           updates              85.0 KiB
 perl-Module-Load                       noarch     1:0.36-511.fc41                         fedora               14.9 KiB
 perl-NTLM                              noarch     1.09-39.fc41                            fedora               31.2 KiB
 perl-Net-HTTP                          noarch     6.23-5.fc41                             fedora               74.7 KiB
 perl-Time-HiRes                        x86_64     4:1.9777-511.fc41                       fedora              119.9 KiB
 perl-TimeDate                          noarch     1:2.33-15.fc41                          fedora               95.2 KiB
 perl-Try-Tiny                          noarch     0.32-1.fc41                             fedora               67.3 KiB
 perl-WWW-RobotRules                    noarch     6.02-40.fc41                            fedora               24.3 KiB
 perl-XML-Parser                        x86_64     2.47-5.fc41                             fedora              653.3 KiB
 perl-libwww-perl                       noarch     6.77-2.fc41                             fedora              521.0 KiB
 perl-subs                              noarch     1.04-512.fc41                           updates               2.1 KiB
 wmctrl                                 x86_64     1.07-38.fc41                            fedora               66.4 KiB
 xdpyinfo                               x86_64     1.3.3-6.fc41                            fedora               39.9 KiB
 xprop                                  x86_64     1.2.7-2.fc41                            fedora               58.8 KiB
 xrandr                                 x86_64     1.5.2-6.fc41                            fedora               75.7 KiB
Installing weak dependencies:
 perl-IO-Compress-Brotli                x86_64     0.004001-14.fc41                        fedora               36.1 KiB
 perl-Math-BigInt                       noarch     1:2.0030.03-3.fc41                      fedora              957.7 KiB
 perl-PerlIO-utf8_strict                x86_64     0.010-8.fc41                            fedora               42.0 KiB
 perl-Sys-Hostname                      x86_64     1.25-512.fc41                           updates              19.9 KiB
 perl-XML-Dumper                        noarch     0.81-50.fc41                            fedora               39.9 KiB

I notice 9 of these are libX requirements.

Code:
 libX11-xcb              x86_64 1.8.10-2.fc41        fedora      15.0 KiB
 libXcomposite           x86_64 0.4.6-4.fc41         fedora      44.5 KiB
 libXi                   x86_64 1.8.2-1.fc41         fedora      76.7 KiB
 libXinerama             x86_64 1.1.5-7.fc41         fedora      19.0 KiB
 libXmu                  x86_64 1.2.1-2.fc41         fedora     191.5 KiB
 libXrandr               x86_64 1.5.4-4.fc41         fedora      51.9 KiB
 libXtst                 x86_64 1.2.5-1.fc41         fedora      33.6 KiB
 libXxf86dga             x86_64 1.1.6-4.fc41         fedora      33.8 KiB
 libXxf86vm              x86_64 1.1.6-1.fc41         updates     28.2 KiB

This is fine, if I'm running a computer with a Xwindows GUI installed. They are usually already installed anyway.
But for a command line server, this has caused me some problems. Usually this causes my computer not to reboot
correctly, and I have to go into emergency mode to fix it.

Note: this is only a problem for command line systems.
 
This will be a very short and sweet tutorial.
How do you know what kind of motherboard is in your computer?
Note: some motherboard vendors don't support these commands.

Using inxi
Code:
inxi -M

Using lshw
Code:
lshw -c system
Fortunately linux provides motherboard info via various routes.

If, by chance, neither inxi nor lshw are installed, one can navigate through the /sys filesystem and extract the info. For example:

Code:
$ cat /sys/devices/virtual/dmi/id/{board_vendor,board_name,board_version}
ASRock
B760M PG Lightning WiFi

Or use the dmesg command which may require root privileges, though it doesn't require that on this machine:
Code:
$ dmesg | grep DMI
[    0.000000] DMI: ASRock B760M PG Lightning WiFi/B760M PG Lightning WiFi, BIOS 2.06 09/14/2023
<snip>
 
specifying multiple file names in {...}, is there a name for this syntax?

Everyone I know calls this brace expansion. It's built into bash. Be sure to use the curly braces.

It's is not limited to file names. You can use it to create sequences of numbers, letters, or even combinations of strings. For example:

{1..5} expands to 1 2 3 4 5
{a..c} expands to a b c
{file1..file3} expands to file1 file2 file3

It's pretty handy for simplifying commands and reducing the need for repetitive typing.

 
Last edited:
{file1,file3} expands to file1 file2 file3

It's pretty handy for simplifying commands and reducing the need for repetitive typing.
For the brace expansion of all similarly named files from "file1" to "file3" one could command the following to show their contents:
Code:
cat file{1..3}
To list the files one could run:
Code:
$ ls file{1..3}
file1  file2  file3

To list the available files with that commonality in name:
Code:
$ ls file{1..7}
ls: cannot access 'file6': No such file or directory
ls: cannot access 'file7': No such file or directory
file1  file2  file3  file4  file5
:)
 
Last edited:
Everyone I know calls this brace expansion.

That's the correct name for it. Those brackets are known as 'braces' in the field of mathematics. They're also commonly called 'curly brackets' which I'd say is informal and 'correct-enough'.
 

Members online


Top