GNU/Linux >> Znalost Linux >  >> Linux

Příklady příkazů Linux uname (Získat verzi jádra, vydání, název hostitele atd.)

Někdy je nutné rychle zjistit podrobnosti, jako je název jádra, verze, název hostitele atd. v linuxovém boxu, který používáte.

I když všechny tyto podrobnosti můžete najít v příslušných souborech přítomných v souborovém systému proc, je jednodušší použít nástroj uname pro rychlé získání těchto informací.

Základní syntaxe příkazu uname je :

uname [OPTION]...

Nyní se podívejme na několik příkladů, které demonstrují použití příkazu ‚uname‘.

uname bez možnosti

Když je příkaz „uname“ spuštěn bez jakékoli možnosti, vytiskne pouze název jádra. Takže výstup níže ukazuje, že se jedná o ‚linuxové‘ jádro, které tento systém používá.

$ uname
Linux

Můžete také použít uname -s, které také zobrazí název jádra.

$ uname -s
Linux

Získejte název hostitele síťového uzlu pomocí volby -n

Použijte volbu uname -n k načtení názvu hostitele síťového uzlu vašeho linuxového boxu.

$ uname -n
dev-server

Výše uvedený výstup bude stejný jako výstup příkazu hostname.

Získejte vydání jádra pomocí volby -r

Příkaz uname lze také použít k načtení informací o vydání jádra. K tomuto účelu lze použít volbu -r.

$ uname -r
2.6.32-100.28.5.el6.x86_64

Získejte verzi jádra pomocí volby -v

Příkaz uname lze také použít k načtení informací o verzi jádra. K tomuto účelu lze použít volbu -v.

$ uname -v
#1 SMP Wed Feb 2 18:40:23 EST 2011

Získejte název hardwaru počítače pomocí volby -m

Příkaz uname lze také použít k načtení názvu hardwaru počítače. K tomuto účelu lze použít volbu -m. To znamená, že se jedná o 64bitový systém.

$ uname -m
x86_64

Získejte typ procesoru pomocí volby -p

Příkaz uname lze také použít k načtení informací o typu procesoru. K tomuto účelu lze použít volbu -p. Pokud příkaz uname není schopen načíst informace o typu procesoru, pak na výstupu vytvoří „neznámý“.

$ uname -p
x86_64

Někdy můžete vidět „neznámý“ jako výstup tohoto příkazu, pokud uname nebyl schopen načíst informace o typu procesoru.

Získejte hardwarovou platformu pomocí volby -i

Příkaz uname lze také použít k načtení informací o hardwarové platformě. K tomuto účelu lze použít volbu -i. Pokud příkaz uname není schopen načíst informace o hardwarové platformě, pak na výstupu vytvoří „neznámý“.

$ uname -i
x86_64

Někdy můžete vidět „neznámý“ jako výstup tohoto příkazu, pokud uname nebyl schopen načíst informace o platformě.

Získejte název operačního systému pomocí volby -o

Příkaz uname lze také použít k načtení názvu operačního systému. K tomuto účelu lze použít volbu -o.

Například:

$ uname -o
GNU/Linux

Získejte všechny informace pomocí volby uname -a

Všechny informace, ke kterým jsme se dosud naučili přistupovat pomocí různých příznaků, lze získat najednou. K tomuto účelu lze použít volbu -a.

$ uname -a
Linux dev-server 2.6.32-100.28.5.el6.x86_64 #1 SMP Wed Feb 2 18:40:23 EST 2011 x86_64 x86_64 x86_64 GNU/Linux

Neznámá hodnota ve výstupu uname

Při psaní tohoto článku jsem byl trochu zvědavý, proč nástroj uname vrací „neznámý“ pro typ procesoru (-p) a hardwarovou platformu (-i) na mém notebooku, na kterém běží Ubuntu. Trochu jsem tento problém zkoumal.

Jedno vysvětlení, které jsem našel, bylo, že příkaz uname používá funkci uname() (man 2 uname), která čte všechny informace z následující struktury jádra:

struct utsname {
               char sysname[];    /* Operating system name (e.g., "Linux") */
               char nodename[];   /* Name within "some implementation-defined
                                     network" */
               char release[];    /* OS release (e.g., "2.6.28") */
               char version[];    /* OS version */
               char machine[];    /* Hardware identifier */
           #ifdef _GNU_SOURCE
               char domainname[]; /* NIS or YP domain name */
           #endif
           };

Vzhledem k tomu, že informace o typu procesoru a hardwarové platformě nejsou v této struktuře přítomny, příkaz uname pro ně vrací „neznámé“.

Další vysvětlení, které jsem našel, bylo, že uvnitř uname.c je zpracování volby -p jako :

...
...
...
char const *element = unknown;
#if HAVE_SYSINFO && defined SI_ARCHITECTURE
{
  static char processor[257];
  if (0 <= sysinfo (SI_ARCHITECTURE, processor, sizeof processor))
    element = processor;
}
#endif
...
...
...

Makra HAVE_SYSINFO a SI_ARCHITECTURE nejsou nikde v jádře definována, a proto je vráceno neznámé. Totéž by mohlo platit pro volbu -i.

Nejsem si jistý přesným problémem, ale můžeme s jistotou předpokládat, že volby -p a -i nejsou standardní a pouze rozšíření, a proto je třeba se jim vyhnout při používání příkazu uname ve skriptu.


Linux
  1. Linux hostname Command Tutorial pro začátečníky (5 příkladů)

  2. Linux uname Command Tutorial pro začátečníky (8 příkladů)

  3. 7 Příklady příkazů Linux df

  1. 8 Příklady příkazů Linux TR

  2. Příklady příkazů „uname“ ke kontrole verze UNIX/Linux

  3. sa Příklady příkazů v Linuxu

  1. Příklady příkazů ac v Linuxu

  2. Příklady příkazů df v Linuxu

  3. du příklady příkazů v Linuxu