AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 5012
Accepted
Adam Gibbins
Adam Gibbins
Asked: 2009-05-06 13:02:01 +0800 CST2009-05-06 13:02:01 +0800 CST 2009-05-06 13:02:01 +0800 CST

查找硬件制造商、型号和序列号?

  • 772

我想通过软件解决方案查找各种 Windows(XP、Vista、2003、2008)和 Linux(Ubuntu、Debian、Fedora)机器的制造商、型号和序列号。

目前我们的硬件库存已经过时,所以我想要一种通过软件解决方案快速获取这些信息的快速方法(所以我不需要接近每台计算机来阅读标签)。

我想编写这样的脚本,理想情况下它不需要任何 3rd 方应用程序,如果理想情况下它会是独立的,因此它很容易移植。

知道如何最好地做到这一点吗?如果理想情况下有一个预先构建的(免费)解决方案,我希望它向原始文本或 MySQL 数据库报告。理想情况下是一个小型独立工具,我不想在每台 PC 上安装东西。如上所述,我非常乐意使用预构建的操作系统工具编写脚本。我知道这是可能的,因为我已经看到其他应用程序报告了此信息(尽管在带有其他我不需要的东西的大量散装包中,例如 Spiceworks)。

windows asset-management
  • 6 6 个回答
  • 27176 Views

6 个回答

  • Voted
  1. Nathan
    2009-05-06T13:08:28+08:002009-05-06T13:08:28+08:00

    对于 Linux,我会说看看 dmidecode,它通常是预先安装的,或者可以从发行版的存储库中轻松安装。

    这将生成系统上所有硬件的纯文本报告,包括序列号。

    • 6
  2. Best Answer
    user2278
    2009-05-15T09:33:27+08:002009-05-15T09:33:27+08:00

    对于 Windows,您可以使用快速的 powershell 脚本来包装 WMI,如下所示:

    function Get-Inventory([string] $computer = '.')
    {
        $data = ""|select name, vendor, model, serial
        $bios = get-wmiobject 'win32_BIOS' -computername $computer
        $comp = get-wmiobject 'win32_computersystem' -computername $computer
        $data.name = $comp.Name
        $data.vendor = $comp.manufacturer
        $data.model = $comp.Model
        $data.serial = $bios.SerialNumber
        return $data
    }
    

    如果您输入一个列出所有计算机的文本文件,如下所示:

    get-content 'mycomputers.txt' | foreach-object{Get-Inventory}
    

    您最终会得到一张漂亮的计算机和硬件详细信息表。如果需要存档数据,请使用 export-csv cmdlet 将输出直接转储到文件中。

    • 5
  3. torial
    2009-05-06T13:08:16+08:002009-05-06T13:08:16+08:00

    有一个出色的(尽管是商业的)解决方案可以做到这一点(我相信原始文本将是 csv 格式),称为 ISI 快照:http ://www.isiisi.com/snapshot.htm

    它将很快获得所有这些信息。

    我提到它是因为您说“如果有预构建解决方案”......

    编辑:还要检查 /proc/cpuinfo 和 lsattr -El sys0

    • 3
  4. Scott Alan Miller
    2009-06-07T10:35:59+08:002009-06-07T10:35:59+08:00

    看看SpiceWorks。SpiceWorks 使用 WMI 和 SSH 从 Windows、Mac 和 Linux 机器收集这些信息。不是脚本,而是一个完整的解决方案,包括您在此处寻找的本地数据库。至少值得一看。

    • 1
  5. Eugenio Miró
    2009-05-06T14:32:32+08:002009-05-06T14:32:32+08:00

    我认为您可以使用WMI获取 Windows 信息,如果您具有管理员权限,则可以远程获取信息。

    • 0
  6. X-Istence
    2009-05-06T16:29:58+08:002009-05-06T16:29:58+08:00

    对于 Linux 上的硬盘驱动器,您应该能够使用smartmontools库中包含的 smartctl 之类的工具来获取所需的信息,例如,这是我的驱动器当前报告的内容:

    === START OF INFORMATION SECTION ===
    Model Family:     Western Digital Caviar SE Serial ATA family
    Device Model:     WDC WD800JD-22LSA0
    Serial Number:    WD-XXXXXXXXXXXX (obscured by me)
    Firmware Version: 06.01D06
    User Capacity:    80,026,361,856 bytes
    

    从这些信息中,您可以很容易地编写脚本以使用 netcat 将其发送回远程服务器,然后将其添加到 MySQL 数据库中。

    • 0

相关问题

  • 您最喜欢的云计算提供商是什么?[关闭]

  • Vanilla Powershell 是否足以成为 Windows 和 DB 服务器管理员的语言?

  • 为什么添加新驱动器后我的磁盘驱动器访问速度如此之慢?

  • 在 Windows Server 2003 下使用 wscipt 从 .asp 文件运行 .exe

  • 最佳混合环境(OS X + Windows)备份?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve