我一直觉得在 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 系统的系统分析器和基准测试工具
基于
- http://www.howtoing.com/commands-to-collect-system-and-hardware-information-in-linux/
- https://en.wikibooks.org/wiki/Guide_to_Unix/Commands/System_Information
- https://www.cyberciti.biz/faq/how-to-find-my-public-ip-address-from-command-line-on-a-linux/
- 有没有办法检索桌面环境的名称?
- https://askubuntu.com/questions/125062/how-can-i-find-which-desktop-enviroment-i-am-using
- https://unix.stackexchange.com/a/2673/202463
答案4
运行gnome-system-monitor
(软件包在 Debian、Ubuntu 和 Fedora 中同名),然后单击系统标签:
桌面的事情有点困难,因为您可以安装多个桌面,并且可以在不同的桌面上运行属于一个桌面的一个软件包。另外,printenv DESKTOP_SESSION
在我的 Debian 系统上运行只是输出default
(但它在 Ubuntu 和 Fedora 上运行良好)。