Sempre achei difícil encontrar informações sobre o próprio sistema no Unix, seja
Qual sistema operacional estou usando (número da versão e todos, para compará-lo com as últimas compilações disponíveis)?
Qual ambiente de área de trabalho estou usando? Se estou usando o KDE, a maioria dos programas começa com K e posso dizer que estou usando o KDE, mas deve haver alguma maneira de consultar isso, digamos a partir de um script.
Qual versão do kernel estou usando? (Por exemplo, estou usando o Fedora e quero saber qual versão do kernel do Linux estou usando)
Basicamente, o que sinto falta é um único ponto/utilitário que pode obter todas essas informações para mim. Na maioria das vezes, as soluções acima seriam específicas do sistema operacional. Então, você está preso.
Além de uname -a
, que fornece a versão do kernel, você pode tentar:
lsb_release -idrc # distro, version, codename, long release name
A maioria dos ambientes de área de trabalho, como GNOME ou KDE, tem uma opção de menu "sobre" ou "informações" que lhe dirá o que você usa atualmente, portanto, não é realmente necessário linha de comando.
Como @milk apontou, você pode usar uname -a
e isso vai te dar informações sobre todos os UNIXes aos quais eu tenho acesso. Por exemplo, no 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
No 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
No OpenSolaris:
SunOS localhost 5.11 snv_134 i86pc i386 i86pc
No que diz respeito à questão do ambiente de desktop, você deve ser capaz de echo $DESKTOP_SESSION
no KDE ou GNOME e receba a resposta certa.
Se você quiser descobrir qual distro está executando, o atalho do trapaceiro é cat /etc/*-version /etc/*-release
.
Talvez você possa usar
uname -a
para obter informações sobre a versão do kernel e qual sistema operacional você está usando.
Para coletar informações sobre um sistema em Unix (GNU/Linux), você precisa conhecer vários comandos úteis.
Informações sobre um sistema operacional
$ lsb_release -idrc
Distributor ID: Debian
Description: Debian GNU/Linux 8.6 (jessie)
Release: 8.6
Codename: jessie
Informações sobre uma arquitetura de CPU, como número de CPUs, núcleos, modelo de família de CPU, caches de CPU, threads, processador
$ 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
Informações sobre um kernel, um nome de hardware de máquina e um sistema operacional
$ uname -a
Linux localhost 3.16.0-4-AMD64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux
Nome do host
$ hostname
localhost
Endereço IP privado (versão ipv4) (escondi os últimos dígitos do próprio IP como XX)
$ hostname -I
192.168.1.XX
Endereço IP público (versão ipv4) (precisa estar conectado à Internet)
$ Dig +short myip.opendns.com @resolver1.opendns.com
91.202.144.118
Informações sobre um sistema (hardware) (reduzido)
$ 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
Informações sobre um processador (reduzido)
$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
Ambiente de trabalho
Um nome de ambiente de área de trabalho mantido na variável de ambiente "DESKTOP_SESSION". Mas se a variável de ambiente "DESKTOP_SESSION" for "default" (como no meu caso), tente obter um valor da variável de ambiente "XDG_CURRENT_DESKTOP".
$ echo $DESKTOP_SESSION
default
$ echo $XDG_CURRENT_DESKTOP
GNOME
Para detectar uma versão do ambiente de desktop, você precisa de mais esforços, pois não possui utilitários embutidos. Este comando testou apenas meu computador com o Gnome Shell, mas deve funcionar com outro ambiente de área de trabalho gráfico popular: 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
Informações sobre uma tela
$ 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)
Se você precisa de uma boa ferramenta para tarefas semelhantes e mais recursos, recomendo o "HardInfo" - https://github.com/ lpereira/hardinfo . É fácil de instalar em sistemas baseados em Debian.
Perfilador de sistema e ferramenta de benchmark para sistemas Linux
Baseado em
Corre gnome-system-monitor
(pacote tem o mesmo nome no Debian, Ubuntu e Fedora) e clique na guia Sistema:
A questão da área de trabalho é um pouco difícil porque você pode ter vários instalados e pode executar um pacote pertencente a uma área de trabalho em uma área de trabalho diferente. Além disso, executando printenv DESKTOP_SESSION
no meu sistema Debian apenas produz default
(mas funciona bem no Ubuntu e Fedora).
Não totalmente infalível, mas meio caminho andado:
xwininfo -root -children|grep kwin
xwininfo -root -children|grep gnome-panel
(Não posso evitar se você quiser usar o gnome-panel no kwin ;-) Além disso, acho isso muito útil no Linux:
cat /etc/issue
Com base na postagem de todos acima, talvez execute um script simples
#!/bin/bash
lsb_release -idrc ; printenv DESKTOP_SESSION ; uname -a
correr que me dá
Distributor ID: LinuxMint
Description: Linux Mint 9 Isadora
Release: 9 Codename: isadora
gnome
Linux judas327 2.6.32-24-generic-pae #39-Ubuntu SMP Wed Jul 28 07:39:26 UTC 2010 i686 GNU/Linux