Retrieve SMBIOS information.
The smbios
command returns the value of a field in an SMBIOS
structure. The following options determine which structure to select.
- Specifying --type will select structures with a matching
type. The type can be any integer from 0 to 255.
- Specifying --handle will select structures with a matching
handle. The handle can be any integer from 0 to 65535.
- Specifying --match will select structure number match in the
filtered list of structures; e.g.
smbios --type 4 --match 2
will select
the second Process Information (Type 4) structure. The list is always ordered
the same as the hardware’s SMBIOS table. The match number must be a positive
integer. If unspecified, the first matching structure will be selected.
The remaining options determine which field in the selected SMBIOS structure to
return. Only one of these options may be specified at a time.
- When given --get-byte, return the value of the byte
at offset bytes into the selected SMBIOS structure.
It will be formatted as an unsigned decimal integer.
- When given --get-word, return the value of the word (two bytes)
at offset bytes into the selected SMBIOS structure.
It will be formatted as an unsigned decimal integer.
- When given --get-dword, return the value of the dword (four bytes)
at offset bytes into the selected SMBIOS structure.
It will be formatted as an unsigned decimal integer.
- When given --get-qword, return the value of the qword (eight bytes)
at offset bytes into the selected SMBIOS structure.
It will be formatted as an unsigned decimal integer.
- When given --get-string, return the string with its index found
at offset bytes into the selected SMBIOS structure.
- When given --get-uuid, return the value of the UUID (sixteen bytes)
at offset bytes into the selected SMBIOS structure.
It will be formatted as lower-case hyphenated hexadecimal digits, with the
first three fields as little-endian, and the rest printed byte-by-byte.
The default action is to print the value of the requested field to the console,
but a variable name can be specified with --set to store the value
instead of printing it.
For example, this will store and then display the system manufacturer’s name.
smbios --type 1 --get-string 4 --set system_manufacturer
echo $system_manufacturer