UNAME(2)

BEZEICHNUNG
uname - Name und Informationen über den laufenden Kernel abfragen

BIBLIOTHEK
Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT
#include <sys/utsname.h>

int uname(struct utsname *Puffer);

BESCHREIBUNG
uname gibt Systeminformationen in der Struktur zurück, auf die Puffer Puffer zeigt. Die Struktur utsname wird in <sys/utsname.h> definiert:

    struct utsname {
        char sysname[];    /* Operating system name (e.g., "Linux") */
        char nodename[];   /* Name within communications network
                              to which the node is attached, if any */
        char release[];    /* Operating system release
                              (e.g., "2.6.28") */
        char version[];    /* Operating system version */
        char machine[];    /* Hardware type identifier */
    #ifdef _GNU_SOURCE
        char domainname[]; /* NIS or YP domain name */
    #endif
    };

Die Länge der Felder in einem struct utsname wird nicht angegeben (lesen Sie die ANMERKUNGEN); die Felder werden durch ein NULL-Byte beendet ('\0').

RÜCKGABEWERT
Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird -1 zurückgegeben und errno gesetzt, um den Fehler anzuzeigen.

FEHLER

EFAULT
    Puffer ist nicht gültig.

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

Das domainname-Mitglied (der NIS- oder YP-Domain-Name) ist eine GNU-Erweiterung.

ANMERKUNGEN
The kernel has the name, release, version, and supported machine type built in. Conversely, the nodename field is configured by the administrator to match the network (this is what the BSD historically calls the "hostname", and is set via sethostname(2)). Similarly, the domainname field is set via setdomainname(2).

The length of the fields in the struct varies. Some operating systems or libraries use a hardcoded 9 or 33 or 65 or 257. Other systems use SYS_NMLN or _SYS_NMLN or UTSLEN or _UTSNAME_LENGTH. Clearly, it is a bad idea to use any of these constants; just use sizeof(...). SVr4 uses 257, "to support Internet hostnames" — this is the largest value likely to be encountered in the wild.

Auf einen Teil der Information in »utsname« kann auch über /proc/sys/kernel/{ostype, hostname, osrelease, version, domainname} zugegriffen werden.

  Unterschiede C-Bibliothek/Kernel
Im Laufe der Zeit hat das Vergößern der Struktur utsname zu drei aufeinanderfolgenden Versionen von uname() geführt: sys_olduname() (Slot __NR_oldolduname), sys_uname() (Slot __NR_olduname) und sys_newuname() (Slot __NR_uname). Der erste benutzte die Länge 9 für alle Felder, der zweite benutzte 65, der dritte benutzt auch 65, fügt aber das Feld domainname hinzu. Die Glibc-Wrapper-Funktion uname() versteckt diese Einzelheiten vor Anwendungen durch Aufrufen der aktuellsten Version des vom Kernel bereitgestellten Systemaufrufs.

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

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze <joey@infodrom.org>, Patrick Rother <krd@gulu.net>, Chris Leick <c.leick@vollbio.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer (debian-l10n-german@lists.debian.org).