Linuxでハードウェアモデルを見つけるにはどうすればよいですか?


89

システム情報ユーティリティを使用して、システムのモデル番号とマザーボードのモデル番号を取得しました。

DMI System Manufacturer     LENOVO
DMI System Product          2306CTO
DMI System Version          ThinkPad X230
DMI Motherboard Product     2306CTO  

この場合2306CTO、Linux でモデル番号を取得する方法はありますか?



2
明確にするために、特にマザーボードではなく、ハードウェア製品に興味があるようです。たとえば、「ThinkPad X230」は、マザーボードではなくコンピューターの一種です。
ブラチリー

1
dmesgコマンドを実行するか/ var / log / dmesg *をチェックすることにより、追加のパッケージなしで情報を取得することもできます。
ブレイクルッソ

回答:


114

dmidecode | grep -A3 '^System Information'コマンドを使用します。BIOSおよびハードウェアからのすべての情報があります。これらは3つの異なるマシンでの例です(これは完全な出力の抜粋です)。

System Information
    Manufacturer: Dell Inc.
    Product Name: Precision M4700

System Information
    Manufacturer: MICRO-STAR INTERANTIONAL CO.,LTD
    Product Name: MS-7368

System Information
    Manufacturer: HP
    Product Name: ProLiant ML330 G6

25
FWIW、おそらくを使用するよりも、特定のDMIタイプのフィルタリングの習慣を身に付けた方が良いでしょうgrep。全体的なハードウェアモデルのためになることdmidecode -t1。そうすれば、dmidecodeからデータを簡単に引き出すことができ、一般的なDMIタイプを覚えるだけで済みます。RAMインストール(dmidecode -t17)を調べるとき、間違ったデータをキーオフするとgrepが非常にい出力をする場合に、習慣が非常に役立ちます。さらに、の出力-tはより完全です
-Bratchley

@JoelDavis、私は以前にこれらのオプションを知りませんでした。それらを使用します。ありがとう。
エップスイグ

13
注:ルートが必要です。あなたはすべての情報が欲しい場合は、使用を現在のユーザーの下での権限を持っている:cat /sys/devices/virtual/dmi/id/*(と、それはあなたが通常のユーザーを使用してモデル名と並べ替えを取得することができない)
qwertzguy

grepへの引数なしでdmidecodeの出力をパイピングすることは興味深いですが、情報を取得する最も効率的な手段ではありません。dmidecodeは、 'system-product-name'キーワード文字列を指定することにより、OPが要求しているものを正確に出力できます。sudodmidecode -s system-product-name
cjac

古いシステムにはで利用可能なフラグがなくdmidecode、manページさえもないことに注意する価値があると思います。上記の答えは、ここで最もLinuxに移植可能な答えだと思います。-tそして-sフラグは確かに新しいシステムに便利です。
ジョシュアデトワイラー

32

試してみてくださいsudo dmidecode -t baseboardDMIの上の完全な情報については、トン、人間が読める形式で、あなたのベースボードに関連することができた内容。System Product Nameのみに対して、次のいずれかを使用できます(s tringsキーワードのdmidecode -sリストを取得するためのタイプ):

sudo dmidecode -s system-product-name
sudo dmidecode -s baseboard-product-name

マザーボード情報の他の関連オプションは次のとおりです。

sudo dmidecode -s system-version
sudo dmidecode -s baseboard-version
sudo dmidecode -s system-manufacturer
sudo dmidecode -s baseboard-manufacturer

sudo dmidecode -s利用可能なシステムDMI文字列の完全なリストを試してください。


24

記録については、この情報の多くは、最新のLinucesの/ sys / devices / virtual / dmi / idで入手できます(つまり、少なくとも2011年以降)。 。元のポスターの質問に答えるのproduct_nameは、システムのモデル名を含むファイルです。

bios_date
bios_vendor
bios_version
board_asset_tag
board_name
board_serial
board_vendor
board_version
chassis_asset_tag
chassis_serial
chassis_type
chassis_vendor
chassis_version
modalias
power
product_name
product_serial
product_uuid
product_version
smbios_version
subsystem
sys_vendor
uevent

そして、ここに、便利さを示すために、どのユーザーでも実行できる便利なスクリプトがあります。

#!/bin/bash

cd /sys/devices/virtual/dmi/id/
for f in *; do
        printf "$f "
        cat $f 2>/dev/null || echo "***_Unavailable_***"
done

ファイル名にスペースが含まれていないため、この情報はawkなどのユーティリティによって、ユーザー自身の不正な目的のために簡単に操作されます。


グレート、それはあなたが(OS、ハードウェア情報)を必要とするものがどこかであるツールが見つからない場合のLinuxベースのほとんどは素晴らしいことだ /sysかを/proc。ありがとう
エドゥアルド・フロリネスク14

2
驚くばかり!非ルートで機能するソリューション!
qwertzguy

1
このdmi情報は、IntelベースのPCにのみ適用できることに注意してください。LinuxベースのARMコンピューターによって駆動されるネットワークデバイスがあり、dmicodeも/ sysのパスも使用できません。
マイクS

12

最新のLinuxシステムでは、次のようなことを任意のユーザーとして簡単に行うことができます。

cat /sys/devices/virtual/dmi/id/sys_vendor

cat /sys/devices/virtual/dmi/id/product_name

これはCoreOSでもうまく機能しますが、CoreOSには同梱されていませんdmidecode

:これは他の回答/コメントで言及されていますが、を使用するよりもはるかに簡単な方法であるため、ここでもっと見やすくなることを願っていますdmidecode



4

ここでは誰もが素晴らしいdmidecodeコマンドと-tパラメーターについて話していますがsudo lshw -short、製品名とモデルも簡単に入手できます。

$ sudo lshw -short
H/W path       Device     Class          Description
====================================================
                          system         UX303UB (ASUS-NotebookSKU)
/0                        bus            UX303UB

ハードウェア情報を取得するためのその他の優れたコマンド:

  • lscpu #/ proc / cpuinfoよりも良い
  • lsusb [-v]
  • lsblk[-a]#df -hよりも優れています。ブロックデバイス情報。
  • sudo hdparm /dev/sda1

lshwを除き、これらのコマンドはいずれもOPが尋ねる質問に答えません。これらは非常に便利なユーティリティです。ただし、質問の範囲内ではありません
...-Shadur

@shadurなぜあなたが私に投票するのですか?私は他の答えがするような方法で質問に答えてから、追加の有用な情報を提供するだけです。
パブロA

2

システム情報ツールinxiは、dmidecode / / sysのすべてのチェックを手動で行うことなく、情報をきれいに表示します。完全な機能リストについては、manページを参照してください

/ sysデータがある場合とない場合のシステムをサポートしますが、/ sysデータがある場合は、dmidecodeを使用して完全なハードウェア出力を取得するためにrootになる必要はありません。

$inxi -M
Machine:   Device: desktop Mobo: ASRock model: A770DE+
           BIOS: American Megatrends v: P1.70 date: 09/07/2010

ルートとして、dmidecodeからデータを取得することもできます。

#inxi -! 33 -Mxxx ## inxi 2.3.56 and older
#inxi --dmidecode -Mxxx ## inxi 2.9 and newer
Machine:   Device: desktop Mobo: ASRock model: A770DE+
           BIOS: American Megatrends v: P1.70 rv 8.14 date: 09/07/2010 rom size: 1024 kB

inxiは、ほとんどのGNU / Linuxディストリビューションのリポジトリで入手できます。または、スクリプトを入手してインストールするだけで直接インストールできます。

基本出力モードのサンプル(-b)

$inxi -bxx
System:    Host: my-box Kernel: 4.6-6.1-liquorix-686-pae i686 (32 bit gcc: 5.4.1)
           Desktop: Xfce 4.12.3 (Gtk 2.24.30) dm: lightdm
           Distro: Debian GNU/Linux 7.0
Machine:   Device: desktop Mobo: ASRock model: A770DE+
           BIOS: American Megatrends v: P1.70 date: 09/07/2010
CPU:       Dual core AMD Athlon 64 X2 5000+ (-MCP-) speed/max: 1000/2600 MHz
Graphics:  Card: NVIDIA GT218 [GeForce 210] bus-ID: 02:00.0 chip-ID: 10de:0a65
           Display Server: X.Org 1.19.0 driver: nvidia
           Resolution: 1280x1024@60.02hz, 1280x1024@60.02hz
           GLX Renderer: GeForce 210/PCIe/SSE2/3DNOW!
           GLX Version: 3.3.0 NVIDIA 340.101 Direct Rendering: Yes
Network:   Card: Intel 82574L Gigabit Network Connection
           driver: e1000e v: 3.2.6-k port: c800
           bus-ID: 01:00.0 chip-ID: 8086:10d3
Drives:    HDD Total Size: 1080.2GB (36.8% used)
Info:      Processes: 313 Uptime: 26 days Memory: 4457.2/8094.0MB
           Init: systemd v: 232 runlevel: 5 default: 3
           Gcc sys: 6.3.0 alt: 4.0/4.2/4.4/4.5/4.6/4.7/4.8/4.9/5
           Client: Shell (bash 4.4.51 running in xfce4-terminal) inxi: 2.3.8

inxi 3.xの新しい出力形式

inxi -bxxxzy80
System:
  Host: yawn Kernel: 4.17.0-10.1-liquorix-amd64 x86_64 bits: 64 compiler: gcc 
  v: 7.3.0 Desktop: Xfce 4.12.4 tk: Gtk 2.24.31 info: xfce4-panel wm: xfwm4 
  dm: lightdm 1.18.3 Distro: Debian GNU/Linux buster/sid 
Machine:
  Type: Desktop System: Gigabyte product: X470 AORUS ULTRA GAMING v: N/A 
  serial: <filter> 
  Mobo: Gigabyte model: X470 AORUS ULTRA GAMING-CF v: x.x serial: <filter> 
  UEFI [Legacy]: American Megatrends v: F2 date: 03/14/2018 
CPU:
  6-Core: AMD Ryzen 5 2600 type: MT MCP arch: Zen speed: 2300 MHz 
  min/max: 1550/3400 MHz 
Graphics:
  Card-1: NVIDIA GT218 [GeForce 210] vendor: Gigabyte driver: nvidia 
  v: 340.107 bus ID: 09:00.0 chip ID: 10de:0a65 
  Display: x11 server: X.Org 1.20.0 driver: nvidia 
  resolution: 1280x1024~60Hz, 1280x1024~60Hz 
  OpenGL: renderer: GeForce 210/PCIe/SSE2 v: 3.3.0 NVIDIA 340.107 
  direct render: Yes 
Network:
  Card-1: Intel I211 Gigabit Network driver: igb v: 5.4.0-k port: f000 
  bus ID: 06:00 chip ID: 8086:1539 
  Card-2: Apple Ethernet Adapter [A1277] type: USB driver: asix bus ID: 1:13 
  chip ID: 05ac:1402 
Drives:
  Local Storage: total: 1.08 TiB used: 496.05 GiB (45.0%) 
Info:
  Processes: 339 Uptime: 3d 6h 22m Memory: 31.43 GiB used: 4.04 GiB (12.8%) 
  Init: systemd v: 239 runlevel: 5 Compilers: gcc: 8.1.0 alt: 5/6/7/8 
  Shell: bash v: 4.4.23 running in: xfce4-terminal inxi: 3.0.20

いい感じ。このツールがシステムまたはボードのシリアル番号を返す方法があるかどうか疑問に思っていますか?そうすれば、このようなシステムのイントロスペクションのためだけにrootは必要ありません。(答えは「ノー」だと思います)。
マイクS

/ sysファイルシステムを作成するLinuxカーネルを変更する前に、rootにならずにこれらのもののシリアル番号を取得できましたが、変更後はinxiの制御外であるため、rootになる必要があります。それを回避する方法はありません。明らかにそれはばかげた決定であり、誰かが持っていたいくつかの悪い考えに基づいた回帰でしたが、その問題を解決するためにinxiができることは何もありません。sudo inxi -Mxxxは常にシリアルを返します。一部のシステムでは、sudoは不要です。カーネルのバージョンに依存します。
リザード

inxi 3.0以降では使用しないことに注意してください-!33、もう--dmidecodeを使用しています
Lizardx

1

次を使用できます。

dmidecode -t 1

次のようなものが出力されます:

System Information
    Manufacturer: Dell Inc.
    Product Name: PowerEdge R210 II
    Version: Not Specified
    Serial Number: 1234ABC
    UUID: ABABABAB-0101-2323-5A5A-ABCDEF123456
    Wake-up Type: Power Switch
    SKU Number: Not Specified
    Family: Not Specified

1
# dmidecode -t baseboard

製造元がサポートしている場合は、情報を提供します。

dmidecodeは、コンピューターのDMI(SMBIOSなどとも呼ばれる)テーブルの内容を人間が読める形式でダンプするためのツールです。この表には、システムのハードウェアコンポーネントの説明と、シリアル番号やBIOSリビジョンなどのその他の有用な情報が含まれています。この表のおかげで、実際のハードウェアを調べることなく、この情報を取得できます。これは、レポートの速度と安全性の点では優れていますが、提示された情報の信頼性が低下する可能性もあります。


grep引用符が必要です。
ジョシュアデトワイラー

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.