在我说话之前我想告诉你:我的编程技能是 0 我的 Linux 知识非常基础
我正在尝试找到一种方法来远程获取硬件信息并将它们存储在我的Linux服务器中,该服务器只是一个带有Linux发行版的桌面。让我解释一下主要思想。我们有一台装有 Linux 发行版的桌面。这将是 Linux 服务器。可以是任何发行版。此 Linux 服务器连接到 48 端口交换机。然后从交换机我有 48 根以太网电缆,我将同时连接 48 个桌面。我将桌面配置为以 pxe 启动。当我在每个桌面(客户端)中插入以太网电缆后,会弹出一个带有多个选项的 GUI。 GUI 将与服务器交互。它可以用 2-3 个基本选项进行 php 编码。没什么特别的。
第 1 步,第一个选项 - BIOS 更新 在 Linux 服务器中,每个型号的桌面都会有一个目录,其中包含子目录。例如 HP 6200、HP 8200、HP 8300 等 每个子目录将包含来自制造商站点的 BIOS 文件。客户端机器以 pxe 启动并弹出 GUI 后,技术人员选择进行 BIOS 更新。有一个下拉菜单可以选择型号。这里发生了什么:客户端请求 Linux 服务器执行远程 BIOS 更新。服务器通过 ftp 发送所选的 BIOS 文件(技术人员在下拉菜单中选择),并通过网络开始 BIOS 更新安装过程。我的机器现在有最新的 BIOS 版本。
步骤 No2,第二个选项 - 获取硬件信息 有一个选项“获取硬件信息”,技术人员选择它并按确定后,这里会发生什么: 来自 Linux 服务器的客户端请求远程执行以下操作: 1. LSHW 命令(我配置lshw/参数的组合将运行) 2. HDSentinel 便携式应用程序(用于硬盘质量测试、运行状况等) HDSentinel 是一款硬盘测试软件。 3. Smartmonitortools 便携式应用程序(用于 HDD/SSD 测试) 这是另一个用于 HDD 测试的 Linux 脚本。 4. LSPCI 命令(我配置将运行 lshw/参数的组合) 5. Dmidecode 命令(我配置将运行 lshw/参数的组合) 服务器从客户端获取请求。服务器在客户端计算机上远程执行上述所有操作,并获取请求的信息。服务器以 -xml 格式将该信息存储在我选择的目录中。
几个我无法理解的概念:
我如何向远程客户端执行 lshw、lspci、dmidecode 命令。也许我必须编写一个脚本,通过 ssh 或 telnet 连接到客户端并执行所有这些命令?什么编程语言最适合为这项工作编写脚本。 Python? C?或者是什么?也许编程语言对此不是必需的?我有什么想法如何找到信息来编写此类脚本吗?
预先感谢您的任何答复