RedJini Blog

뒤로 검색

uname

2008/12/01 15:03

이름
    uname - 현재 커널에 관한 이름과 정보를 얻어온다.

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

설명
    uname은 buf가가리키는 구조체에 시스템 정보를 리턴한다.  utsname 구조체는 다음과 같다. 
    <sys/utsname.h>:
    struct utsname {
                char sysname[SYS_NMLN];
                char nodename[SYS_NMLN];
                char release[SYS_NMLN];
                char version[SYS_NMLN];
                char machine[SYS_NMLN];
          #ifdef _GNU_SOURCE
                char domainname[SYS_NMLN];
          #endif
    };

반환값
    성공시, 0이 리턴된다. 에러시, -1이 리턴되며 errno가적절한 값으로 설정된다.

에러
    EFAULT buf가유효하지 않다.

호환
    SVr4, SVID, POSIX, X/OPEN
    domainname 변수는 GNU 확장이다.

관련 항목
    uname(1), getdomainname(2), gethostname(2)

셈플 소스

  struct utsname buf;
  uname(&buf);

  printf("sysname    %s\n", buf.sysname   );
  printf("nodename   %s\n", buf.nodename  );
  printf("release    %s\n", buf.release   );
  printf("version    %s\n", buf.version   );
  printf("machine    %s\n", buf.machine   );
  printf("domainname %s\n", buf.domainname);

출력 결과

    sysname    Linux
    nodename   redjini.com
    release    2.6.18-8.el5
    version    #1 SMP Thu Mar 15 19:57:35 EDT 2007
    machine    i686
    domainname (none)

Tags

Linux, uname
이 페이지는 Textcube 1.9.3 : poco a poco 로 구동됩니다 데스크탑 화면