Scroll to navigation

uname(2) System Calls Manual uname(2)

NUME

uname - obține numele și informații despre nucleul curent

BIBLIOTECA

Biblioteca C standard (libc, -lc)

REZUMAT

#include <sys/utsname.h>
int uname(struct utsname *buf);

DESCRIERE

uname() returnează informații de sistem în structura indicată de buf. Structura utsname este definită în <sys/utsname.h>:


struct utsname {

char sysname[]; /* Numele sistemului de operare (de exemplu, „Linux”) */
char nodename[]; /* Nume în cadrul rețelei de comunicații la care este
atașat nodul, dacă există */
char release[]; /* Versiunea sistemului de operare
(de exemplu, „2.6.28”) */
char version[]; /* Versiunea sistemului de operare */
char machine[]; /* Identificatorul tipului de hardware */ #ifdef _GNU_SOURCE
char domainname[]; /* Numele de domeniu NIS sau YP */ #endif };

Lungimea matricelor dintr-o struct utsname este nespecificată (a se vedea NOTE); câmpurile sunt terminate cu un octet nul („\0”).

VALOAREA RETURNATĂ

În caz de succes, se returnează zero. În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI-IEȘIRE

buf nu este valid.

STANDARDE

POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD.

Membrul domainname (numele de domeniu NIS sau YP) este o extensie GNU.

NOTE

Nucleul are încorporate numele, data versiunii, versiunea și tipul de mașină acceptat. În schimb, câmpul nodename este configurat de către administrator pentru a se potrivi cu rețeaua (acesta este ceea ce BSD numește istoric „hostname” și este stabilit prin sethostname(2)). În mod similar, câmpul domainname este configurat prin setdomainname(2).

Lungimea câmpurilor din structură variază. Unele sisteme de operare sau biblioteci folosesc un cod fix de 9, 33, 65 sau 257. Alte sisteme utilizează SYS_NMLN sau _SYS_NMLN sau UTSLEN sau _UTSNAME_LENGTH. În mod clar, este o idee proastă să folosiți oricare dintre aceste constante; folosiți doar sizeof(...). SVr4 folosește 257, „pentru a da suport numelor de gazdă din Internet” aceasta este cea mai mare valoare care poate fi întâlnită în practică.

O parte din informațiile despre utsname sunt, de asemenea, accesibile prin /proc/sys/kernel/{ostype, hostname, osrelease, version, domainname}}.

Diferențe între biblioteca C și nucleu

De-a lungul timpului, creșterea dimensiunii structurii utsname a dus la trei versiuni succesive ale uname(): sys_olduname() (slotul __NR_olduname), sys_uname() (slotul __NR_olduname) și sys_newuname() (slotul __NR_uname). Primul a folosit lungimea 9 pentru toate câmpurile; al doilea a folosit 65; al treilea folosește, de asemenea, 65, dar adaugă câmpul domainname. Funcția de învăluire glibc uname() ascunde aceste detalii pentru aplicații, invocând cea mai recentă versiune a apelului de sistem furnizat de nucleu.

CONSULTAȚI ȘI

uname(1), getdomainname(2), gethostname(2), uts_namespaces(7)

TRADUCERE

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

5 februarie 2023 Pagini de manual de Linux 6.03