uname

Autres langues

Langue: ru

Autres versions - même langue

Version: 2001-12-15 (openSuse - 09/10/07)

Autres sections - même nom

Section: 2 (Appels système)

éíñ

uname - ÐÏÌÕÞÉÔØ ÉÍÑ É ÉÎÆÏÒÍÁÃÉÀ Ï ÔÅËÕÝÅÍ ÑÄÒÅ

ïâúïò

#include <sys/utsname.h>

int uname(struct utsname *buf);

ïðéóáîéå

uname ×ÏÚ×ÒÁÝÁÅÔ ÓÉÓÔÅÍÎÕÀ ÉÎÆÏÒÍÁÃÉÀ × ÓÔÒÕËÔÕÒÅ, ÎÁ ËÏÔÏÒÕÀ ÕËÁÚÙ×ÁÅÔ buf. óÔÒÕËÔÕÒÁ utsname ÏÐÒÅÄÅÌÑÅÔÓÑ × <sys/utsname.h>:

struct utsname {

char sysname[];

char nodename[];

char release[];

char version[];

char machine[];

#ifdef _GNU_SOURCE

char domainname[];

#endif

};

äÌÉÎÁ ÍÁÓÓÉ×Á × struct utsname ÎÅ ÚÁÄÁ£ÔÓÑ; ÐÏÌÑ ÚÁ×ÅÒÛÁÀÔÓÑ ÎÕÌÅ×ÙÍ ÓÉÍ×ÏÌÏÍ.

÷ïú÷òáýáåíïå úîáþåîéå

÷ ÓÌÕÞÁÅ ÕÓÐÅÈÁ ×ÏÚ×ÒÁÝÁÅÔÓÑ ÎÏÌØ. ÷ ÓÌÕÞÁÅ ÏÛÉÂËÉ ×ÏÚ×ÒÁÝÁÅÔÓÑ -1 É ÚÎÁÞÅÎÉÅ errno ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÍ ÏÂÒÁÚÏÍ.

ïûéâëé

EFAULT
îÅÐÒÁ×ÉÌØÎÏÅ ÚÎÁÞÅÎÉÅ buf .

óïïô÷åôóô÷éå óôáîäáòôáí

SVr4, SVID, POSIX, X/OPEN. ÷ BSD 4.3 ×ÙÚÏ×Á uname ÎÅ ÓÕÝÅÓÔ×ÕÅÔ.

éÍÑ ÄÏÍÅÎÁ domainname ÄÌÑ ÞÌÅÎÁ ÄÏÍÅÎÁ (ÄÏÍÅÎÁ NIS ÉÌÉ YP) Ñ×ÌÑÅÔÓÑ ÒÁÓÛÉÒÅÎÉÅÍ GNU.

úáíåþáîéñ

üÔÏ ÓÉÓÔÅÍÎÙÊ ×ÙÚÏ× É ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ×ÉÄÉÍÏ ÚÎÁÅÔ Ó×Ï£ ÉÍÑ, ÐÏÄ×ÅÒÓÉÀ É ×ÅÒÓÉÀ. ïÎÁ ÔÁËÖÅ ÚÎÁÅÔ ÎÁ ËÁËÏÊ ÐÌÁÔÆÏÒÍÅ ÏÎÁ ÚÁÐÕÝÅÎÁ. ôÁËÉÍ ÏÂÒÁÚÏÍ ÞÅÔÙÒÅ ÐÏÌÑ, ÏÐÉÓÁÎÎÏÊ ×ÙÛÅ ÓÔÒÕËÔÕÒÙ Ñ×ÌÑÀÔÓÑ ×ÁÖÎÙÍÉ. ó ÄÒÕÇÏÊ ÓÔÏÒÏÎÙ, ÐÏÌÅ nodename Ñ×ÌÑÅÔÓÑ ÍÅÎÅÅ ×ÁÖÎÙÍ: ÏÎÏ ÓÏÄÅÒÖÉÔ ÉÍÑ ÔÅËÕÝÅÊ ÍÁÛÉÎÙ × ËÁËÏÊ-ÌÉÂÏ ÎÅÏÐÒÅÄÅÌ£ÎÎÏÊ ÓÅÔÉ, ÎÏ ÏÂÙÞÎÏ ÍÁÛÉÎÙ ×ÈÏÄÑÔ ÂÏÌÅÅ ÞÅÍ × ÏÄÎÕ ÓÅÔØ É ÉÍÅÀÔ ÎÅÓËÏÌØËÏ ÉÍ£Î. õ ÑÄÒÁ ÎÅÔ ÓÐÏÓÏÂÁ ÕÚÎÁÔØ Ï ÜÔÉÈ ×ÅÝÁÈ, ÔÁË ÞÔÏ ÅÍÕ ÎÅÏÂÈÏÄÉÍÏ ÓËÁÚÁÔØ, ÞÔÏ ÚÄÅÓØ ÏÔ×ÅÞÁÔØ. ôÏÖÅ ËÁÓÁÅÔÓÑ É ÄÒÕÇÏÇÏ ÄÏÐÏÌÎÉÔÅÌØÎÏ ÐÏÌÑ domainname.

þÔÏÂÙ ÐÏÄÓËÁÚÁÔØ ÑÄÒÕ, × Linux ÉÓÐÏÌØÚÕÀÔÓÑ ÓÉÓÔÅÍÎÙÅ ×ÙÚÏ×Ù sethostname(2) É setdomainname(2). úÁÍÅÔÉÍ, ÞÔÏ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ ÓÔÁÎÄÁÒÔÁ, ÞÔÏÂÙ ÓËÁÚÁÔØ ÉÍÑ ÕÚÌÁ ËÁËÏÊ ÄÌÉÎÙ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ ×ÙÚÏ×ÏÍ sethostname(2), ÎÏ ÉÍÅÎÎÏ ÜÔÏ ÉÍÑ ÂÕÄÅÔ × ÐÏÌÅ nodename ÓÔÒÕËÔÕÒÙ, ×ÏÚ×ÒÁÝÁÅÍÏÊ ×ÙÚÏ×ÏÍ uname (× ÓÁÍÏÍ ÄÅÌÅ, ÎÅËÏÔÏÒÙÅ ÓÉÓÔÅÍÙ ÒÁÚÒÅÛÁÀÔ 256-ÂÁÊÔÏ×ÙÅ ÉÍÅÎÁ ÕÚÌÏ× É ÔÏÌØËÏ 8-ÂÁÊÔÏ×ÙÅ nodename), ÎÏ ÜÔÏ ÔÁË × Linux. üÔÏ ÖÅ ËÁÓÁÅÔÓÑ É ×ÙÚÏ×Á setdomainname(2) É ÐÏÌÑ domainname.

äÌÉÎÁ ÕËÁÚÁÎÎÙÈ ×ÙÛÅ ÐÏÌÅÊ × ÓÔÒÕËÔÕÒÅ ÍÏÖÅÔ ÂÙÔØ ÒÁÚÎÏÊ. îÅËÏÔÏÒÙÅ ÏÐÅÒÁÃÉÏÎÎÙÅ ÓÉÓÔÅÍÙ ÉÌÉ ÂÉÂÌÉÏÔÅËÉ ÉÓÐÏÌØÚÕÀÔ Ö£ÓÔËÉÅ ÏÇÒÁÎÉÞÅÎÉÑ 9 ÉÌÉ 33, ÉÌÉ 65, ÉÌÉ 257. äÒÕÇÉÅ ÓÉÓÔÅÍÙ ÉÓÐÏÌØÚÕÀÔ SYS_NMLN ÉÌÉ _SYS_NMLN, ÉÌÉ UTSLEN, ÉÌÉ _UTSNAME_LENGTH. éÓÐÏÌØÚÏ×ÁÎÉÅ ÔÁËÉÈ ËÏÎÓÔÁÎÔ -- ÜÔÏ ÐÌÏÈÁÑ ÉÄÅÑ -- ÐÒÏÓÔÏ ÉÓÐÏÌØÚÕÊÔÅ sizeif(...). þÁÓÔÏ 257 ×ÙÂÉÒÁÅÔÓÑ, ÞÔÏÂÙ ÓÏÏÔ×ÅÔÓÔ×Ï×ÁÔØ ÉÍÅÎÉ ÕÚÌÁ × ÓÅÔÉ éÎÔÅÒÎÅÔ.

÷ Linux ÂÙÌÏ ÔÒÉ ÓÉÓÔÅÍÎÙÈ ×ÙÚÏ×Á uname(). ðÅÒ×ÙÊ ÉÓÐÏÌØÚÏ×ÁÌ ÄÌÉÎÕ 9, ×ÔÏÒÏÊ ÉÓÐÏÌØÚÏ×ÁÌ 85, Á ÔÒÅÔÉÊ ÔÁËÖÅ ÉÓÐÏÌØÚÕÅÔ 65, ÎÏ ÄÏÂÁ×ÌÑÅÔ ÐÏÌÅ domainname field.

þÁÓÔØ ÉÎÆÏÒÍÁÃÉÉ, ×ÏÚ×ÒÁÝÁÅÍÏÊ ÄÁÎÎÙÍ ÓÉÓÔÅÍÎÙÍ ×ÙÚÏ×ÏÍ ÔÁËÖÅ ÄÏÓÔÕÐÎÁ ÞÅÒÅÚ sysctl É ÞÅÒÅÚ ÆÁÊÌÙ /proc/sys/kernel/{ostype, hostname, osrelease, version, domainname}.

óíïôòé ôáëöå

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

ðåòå÷ïä

ðÅÒÅ×£Ì Ó ÁÎÇÌÉÊÓËÏÇÏ ÷ÉËÔÏÒ ÷ÉÓÌÏÂÏËÏ× <corochoone@perm.ru> 2004