uname(2) System Calls Manual uname(2)

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

Biblioteca C standard (libc, -lc)

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

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”).

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

buf nu este valid.

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

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ă.

POSIX.1-2008.

POSIX.1-2001, SVr4, 4.4BSD.

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.

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).

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

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

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.

2 mai 2024 Pagini de manual de Linux 6.8