我想在客户端只使用ssh来清点我的Linux系统的硬件

他们是红帽和CentOS 5.x的组合,我想在一个主机上可以检查像CPU / MEM /硬盘,型号,硬件RAID控制器等基本知识的东西会很好。

我有基于密钥的SSH身份validation设置,但我不想在这些主机上安装任何东西。 最坏的情况下,我可以scp的东西/ tmp,但没有安装请。

就在我所看到的,无论是我需要安装的东西,还是我真正想要在机器上运行的东西,然后手动聚合。

我坚持写一些Perl来运行和处理dmidecode,lspci等的输出?

如果我这样做,我会把它放在一个地方,并链接到它。

相关问题没有答案:
获取Ubuntu服务器的服务器硬件细节
如何在Linux机器上find关于硬件的细节? 这一个有一个很好的shell脚本,但它的错误。

也许尝试http://www.cfg2html.com/它只是一个输出到HTML的bash脚本,您可以上传/下载到中央目录。 但是它只是命令的输出,所以很难把它放在像sql / xml这样的结构化格式中。

如果不在远程系统上安装任何新软件,您可以使用以下命令获取远程计算机状态的原始快照:

lspci > /tmp/`hostname`-lspci tar -czvf `hostname`-proc-snapshot.tar.gz /proc /tmp/`hostname`-lspci --exclude=/proc/kcore 

然后从远程服务器scp tar档案。 这将得到你:cpuinfo,meminfo,分区等添加更多的命令和临时文件,您可能需要的任何额外信息(逻辑卷,RAID状态等)

作为一个小小的奖励,在那个瞬间你可以得到远程计算机上正在运行的进程的清单。

你可以在Windows vm中安装Spiceworks。 它只使用ssh来盘点Linux主机。

根据你的系统是否安装了Python2,你也可以使用Ansible 。

 ansible -m setup ${hostname} 

这将输出一个很好的JSON,包括CPU / RAM / HDD /networking和软件configuration。 阅读文档以获取更多信息。

lshw命令为您提供了大量的硬件信息,并可以以HTML或XML格式输出。

如果在机器上安装了lshw,那么可以使用它,但是它不会预装在Redhat上,而是它的衍生产品。 这里有RPM,你可能能够从RPM中提取所需的文件,SCP将它们送到机器上,创build一些符号链接(很可能是从/ usr / sbin / lshw到tmp位置的链接)该文件,从/ usr / share / lshw到该文件夹​​的tmp位置),然后运行lshw,然后删除符号链接。 这是假设你有根/ sudo访问…