如何在 Unix 中查找有关系统/机器的信息?

如何在 Unix 中查找有关系统/机器的信息?

我一直觉得在 Unix 中很难找到有关系统本身的信息,无论是

  • 我正在使用哪个操作系统(版本号等,以便与最新的可用版本进行比较)?

  • 我使用的是哪种桌面环境?如果我使用 KDE,大多数程序都以 K 开头,我可以说我正在使用 KDE,但应该有某种方法来查询它,比如从脚本中。

  • 我使用的是哪个内核版本? (例如,我正在使用Fedora,我想知道我使用的Linux内核版本是什么)

基本上,我错过的是一个可以为我获取所有这些信息的单点/实用程序。大多数时候,上述问题的解决方案本身就是特定于操作系统的。然后,你就被困住了。

答案1

除了为uname -a您提供内核版本之外,您还可以尝试:

lsb_release -idrc  # distro, version, codename, long release name

大多数桌面环境(例如 GNOME 或 KDE)都有一个“关于”或“信息”菜单选项,可以告诉您当前使用的内容,因此实际上不需要命令行。

答案2

正如 @milk 指出的,您可以使用uname -a,这将告诉您有关我有权访问的所有 UNIX 的信息。例如,在 Linux 上:

Linux localhost 2.6.33.6-147.2.4.fc13.x86_64 #1 SMP Fri Jul 23 17:14:44 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux

在 FreeBSD 上:

FreeBSD localhost 6.3-RELEASE-p3-jc1 FreeBSD 6.3-RELEASE-p3-jc1 #2: Thu Aug  7 14:36:29 PDT 2008 [email protected]:/usr/obj/usr/src/sys/jail7  i386

在 OpenSolaris 上:

SunOS localhost 5.11 snv_134 i86pc i386 i86pc

就桌面环境问题而言,您应该能够echo $DESKTOP_SESSION在 KDE 或 GNOME 中得到正确的答案。

如果你想知道你正在运行什么发行版,作弊者的捷径就是cat /etc/*-version /etc/*-release.

答案3

要收集有关 Unix (GNU/Linux) 系统的信息,您需要了解几个有用的命令。


有关操作系统的信息

$ lsb_release -idrc 
Distributor ID: Debian
Description:    Debian GNU/Linux 8.6 (jessie)
Release:    8.6
Codename:   jessie

有关 CPU 架构的信息,例如 CPU 数量、内核、CPU 系列型号、CPU 缓存、线程、处理器

$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                2
On-line CPU(s) list:   0,1
Thread(s) per core:    1
Core(s) per socket:    2
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 42
Model name:            Intel(R) Pentium(R) CPU B960 @ 2.20GHz
Stepping:              7
CPU MHz:               1416.335
CPU max MHz:           2200.0000
CPU min MHz:           800.0000
BogoMIPS:              4390.07
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              2048K
NUMA node0 CPU(s):     0,1

有关内核、机器硬件名称和操作系统的信息

$ uname -a
Linux localhost 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux

主机名

$ hostname
localhost

私有IP地址(ipv4版本)(我把自己的IP最后一位隐藏为XX)

$ hostname -I
192.168.1.XX

公共IP地址(ipv4版本)(需要连接到互联网)

$ dig +short myip.opendns.com @resolver1.opendns.com
91.202.144.118

有关系统(硬件)的信息(精简)

$ sudo dmidecode -t system

System Information
    Manufacturer: Acer
    Product Name: Aspire E1-531G
    Version: V2.11
    Serial Number: NXM7BEU0013010B0EF1601
    UUID: 332A4CE1-CB4B-E211-87F5-20898452C545
    Wake-up Type: Power Switch
    SKU Number: Aspire E1-531G_064A_V2.11
    Family: Type1Family

有关处理器的信息(精简)

$sudo dmidecode -t processor

Processor Information
    Socket Designation: U3E1
    Type: Central Processor
    Family: Pentium
    Manufacturer: Intel(R) Corporation
    ID: A7 06 02 00 FF FB EB BF
    Signature: Type 0, Family 6, Model 42, Stepping 7
    Flags:
        FPU (Floating-point unit on-chip)

        ********

        VME (Virtual mode extension)
    Version: Intel(R) Pentium(R) CPU B960 @ 2.20GHz
    Voltage: 1.1 V
    External Clock: 100 MHz
    Max Speed: 4000 MHz
    Current Speed: 2200 MHz
    Status: Populated, Enabled
    Upgrade: Socket rPGA988B
    L1 Cache Handle: 0x000B
    L2 Cache Handle: 0x000C
    L3 Cache Handle: 0x000D
    Serial Number: To Be Filled By O.E.M.
    Asset Tag: To Be Filled By O.E.M.
    Part Number: To Be Filled By O.E.M.
    Core Count: 2
    Core Enabled: 2
    Thread Count: 2
    Characteristics:
        64-bit capable
        Multi-Core
        Execute Protection
        Power/Performance Control

桌面环境

保存在环境变量“DESKTOP_SESSION”中的桌面环境名称。但是,如果环境变量“DESKTOP_SESSION”是“默认”(如我的情况),请尝试从环境变量“XDG_CURRENT_DESKTOP”获取值。

$ echo $DESKTOP_SESSION
default
$ echo $XDG_CURRENT_DESKTOP
GNOME

要检测桌面环境的版本,您需要付出更多努力,因为没有内置实用程序。该命令仅测试了我的带有 Gnome shell 的计算机,但必须与其他流行的图形桌面环境一起使用:KDE、Mate、Cinnamon、LXDE、Xfce。

$ pgrep -l "gnome|kde|mate|cinnamon|lxde|xfce" | egrep "-shell$" | awk '{print $2}' | xargs apt-cache show
Package: gnome-shell
Version: 3.14.4-1~deb8u1
Installed-Size: 6910
Maintainer: Debian GNOME Maintainers <[email protected]>
Architecture: amd64
Depends: gir1.2-clutter-1.0 (>= 1.17), gir1.2-glib-2.0 (>= 1.39.90-4~), gir1.2-gtk-3.0 (>= 3.8), gir1.2-mutter-3.0 (>= 3.14.4), gir1.2-networkmanager-1.0, gir1.2-soup-5
Recommends: gkbd-capplet, gnome-contacts, gnome-control-center, gnome-user-guide, unzip, gdm3 (>= 3.10.0.1-3~)
Conflicts: gnome-screensaver (<< 3.6)
Breaks: fglrx-driver (<< 1:11-10), gdm3 (<< 3.10.0.1-3~), gnome-control-center (<< 1:3.0), gnome-session (<< 3.0), gnome-tweak-tool (<< 3.5)
Description-en: graphical shell for the GNOME desktop
 The GNOME Shell provides core interface functions like switching
 windows, launching applications or see your notifications. It takes
 advantage of the capabilities of modern graphics hardware and
 introduces innovative user interface concepts to provide a
 delightful and easy to use experience. GNOME Shell is the defining
 technology of the GNOME 3 user experience.
Description-md5: 51a5a94e6b632e350489b7b8d27ab9fc
Homepage: http://live.gnome.org/GnomeShell
Tag: implemented-in::c, implemented-in::ecmascript, interface::x11,
 role::program, uitoolkit::gtk
Section: gnome
Priority: optional
Filename: pool/main/g/gnome-shell/gnome-shell_3.14.4-1~deb8u1_amd64.deb
Size: 637652
MD5sum: 183a6bdcd8b34c6a56c09add66301d4a
SHA1: a11964152940a4a70e3d9ce93a6f21bb0a661379
SHA256: ff2ce3aa442012971ba5526f488568bbde6d53a8dbb71b95a587792e903033e3

有关屏幕的信息

$ xrandr --current 
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
LVDS1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   1366x768      60.00*+
   1360x768      59.80    59.96  
   1024x768      60.00  
   800x600       60.32    56.25  
   640x480       59.94  
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)

如果您需要一个好工具来完成类似的任务和更多功能,我推荐“硬信息”-https://github.com/lpereira/hardinfo。它很容易安装在基于 Debian 的系统中。

适用于 Linux 系统的系统分析器和基准测试工具

在此输入图像描述

基于

  1. http://www.howtoing.com/commands-to-collect-system-and-hardware-information-in-linux/
  2. https://en.wikibooks.org/wiki/Guide_to_Unix/Commands/System_Information
  3. https://www.cyberciti.biz/faq/how-to-find-my-public-ip-address-from-command-line-on-a-linux/
  4. 有没有办法检索桌面环境的名称?
  5. https://askubuntu.com/questions/125062/how-can-i-find-which-desktop-enviroment-i-am-using
  6. https://unix.stackexchange.com/a/2673/202463

答案4

运行gnome-system-monitor(软件包在 Debian、Ubuntu 和 Fedora 中同名),然后单击系统标签:

替代文本

桌面的事情有点困难,因为您可以安装多个桌面,并且可以在不同的桌面上运行属于一个桌面的一个软件包。另外,printenv DESKTOP_SESSION在我的 Debian 系统上运行只是输出default(但它在 Ubuntu 和 Fedora 上运行良好)。

相关内容