Provided by: manpages-fr-dev_3.65d1p1-1_all bug

NOM

       uname - Obtenir des informations à propos du noyau

SYNOPSIS

       #include <sys/utsname.h>

       int uname(struct utsname *buf);

DESCRIPTION

       uname() renvoie les informations dans le tampon buf. La structure utsname est définie dans
       <sys/utsname.h> comme suit :

           struct utsname {
               char sysname[];    /* Nom du système d'exploitation
                                     (par exemple, "Linux") */
               char nodename[];   /* Nom dans "des réseaux définis
                                     par l'implémentation" */
               char release[];    /* release du système d'exploitation
                                     (par exemple "2.6.28") */
               char version[];    /* version du système d'exploitation */
               char machine[];    /* Identifiant du matériel */
           #ifdef _GNU_SOURCE
               char domainname[]; /* nom de domaine NIS ou YP */
           #endif
           };

       La longueur des chaînes de la struct utsname n'est pas  spécifiée  (consultez  la  section
       NOTES), les champs se terminent par un caractère nul ('\0').

VALEUR RENVOYÉE

       S'il  réussit, cet appel système renvoie 0. S'il échoue, il renvoie -1 et remplit errno en
       conséquence.

ERREURS

       EFAULT buf pointe en dehors de l'espace d'adressage accessible

CONFORMITÉ

       SVr4, POSIX.1-2001. Il n'y a pas d'appel uname() dans BSD 4.3.

       Le champ domainname (nom de domaine NIS ou YP) est une extension Gnu.

NOTES

       Ceci est un appel système, et le système d'exploitation est supposé connaître son nom,  et
       ses  numéros  de version et de mise à jour. Il connaît également le matériel sur lequel il
       tourne, ainsi les quatre premiers champs de la structure sont significatifs. En  revanche,
       le  champ  nodename  n'est pas significatif : il donne le nom de la machine dans un réseau
       non précisé, mais généralement les machines sont connectées à  plusieurs  réseaux  et  ont
       plusieurs  noms.  De  plus, le noyau n'a pas de moyen de connaître ces informations, et on
       doit les lui fournir. Ceci est vrai aussi pour le champ supplémentaire domainname.

       À cette fin, Linux utilise les appels système sethostname(2)  et  setdomainname(2).  Notez
       qu'aucun  standard  ne  dit que le nom d'hôte défini par sethostname(2) représente la même
       chaîne que le champ nodename de la structure  renvoyée  par  uname()  (de  fait,  certains
       systèmes  autorisent  un  nom  d'hôte  de 256 octets et un nom de nœud sur 8 octets), mais
       c'est le cas sous Linux. La même  chose  est  vraie  pour  setdomainname(2)  et  le  champ
       domainname.

       La  longueur  des  champs  de  la  structure  varie.  Certains  systèmes d'exploitation ou
       bibliothèques utilisent des valeurs en dur  de  9,  33,  65,  ou  257.  D'autres  systèmes
       utilisent  SYS_NMLN,  _SYS_NMLN,  UTSLEN  ou  _UTSNAME_LENGTH.  Clairement, il faut éviter
       d'utiliser ces constantes, employez plutôt sizeof(...). On choisit souvent la  valeur  257
       qui permet de stocker un nom d'hôte Internet entier.

       Une  partie  des  informations  utsname est aussi accessible par /proc/sys/kernel/{ostype,
       hostname, osrelease, version, domainname}.

   Interface noyau sous-jacente
       Avec le temps, l'augmentation de la taille de la structure utsname a conduit à 3  versions
       successives  de  uname() :  sys_olduname()  (entrée __NR_oldolduname), sys_uname() (entrée
       __NR_olduname) et sys_newuname() (entrée __NR_uname). La première utilisait  une  longueur
       de  9  pour tous les champs ; la seconde utilisait 65 ; et la troisième une longueur de 65
       également mais avec un champ domainname supplémentaire. La fonction uname()  de  la  glibc
       cache  ces  détails aux applications, en appelant la version la plus récente de ces appels
       système fournie par le noyau.

VOIR AUSSI

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

COLOPHON

       Cette page fait partie de la publication 3.65 du projet man-pages Linux.  Une  description
       du  projet  et  des  instructions  pour  signaler  des  anomalies  peuvent être trouvées à
       l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis   2010,   cette   traduction   est   maintenue   à   l'aide   de    l'outil    po4a
       <http://po4a.alioth.debian.org/>  par l'équipe de traduction francophone au sein du projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Christophe   Blaess   <http://www.blaess.fr/christophe/>   (1996-2003),    Alain    Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Julien  Cristau  et  l'équipe  francophone  de
       traduction de Debian (2006-2009).

       Veuillez     signaler     toute     erreur     de     traduction     en     écrivant     à
       <debian-l10n-french@lists.debian.org>   ou   par   un  rapport  de  bogue  sur  le  paquet
       manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de  ce  document  en  utilisant  la
       commande « man -L C <section> <page_de_man> ».