Rechercher une page de manuel
utmp
Langue: ja
Version: 2004-10-31 (openSuse - 09/10/07)
Section: 5 (Format de fichier)
̾Á°
utmp, wtmp - ¥í¥°¥¤¥óµÏ¿½ñ¼°
#include <utmp.h>ÀâÌÀ
utmp ¥Õ¥¡¥¤¥ë¤ò¸«¤ë¤³¤È¤Ç¡¢¸½ºß郎¥·¥¹¥Æ¥à¤ò»È¤Ã¤Æ¤¤¤ë¤«¤È¤¤¤¦¾ðÊó ¤¬ÆÀ¤é¤ì¤ë¡£¤¿¤À¤¹¤Ù¤Æ¤Î¥×¥í¥°¥é¥à¤¬ utmp ¥Õ¥¡¥¤¥ë¤ò ¹¹¿·¤·¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤Î¤Ç¡¢¼ÂºÝ¤Ë¤Ï¤½¤ì°Ê¾å¤Î¥æ¡¼¥¶¡¼¤¬ ¥·¥¹¥Æ¥à¤ò»È¤Ã¤Æ¤¤¤ë²ÄǽÀ¤¬¤¢¤ë¡£·Ù¹ð: ¿¤¯¤Î¥·¥¹¥Æ¥à¥×¥í¥°¥é¥à¤¬¤½¤ÎÀ°¹çÀ¤Ë (¶ò¤«¤Ë¤â) °Í¸¤·¤Æ¤¤¤ë¤Î¤Ç¡¢ utmp ¥Õ¥¡¥¤¥ë¤Ï½ñ¤¹þ¤ß²Äǽ¤Ë¤·¤Æ¤Ï¤¤¤±¤Ê¤¤¡£ utmp ¥Õ¥¡¥¤¥ë¤ò ÉÔÆÃÄê¤Î¥æ¡¼¥¶¡¼¤«¤é½ñ¤¹þ¤ß²Äǽ¤Ê¤Þ¤Þ¤Ë¤·¤Æ¤ª¤¯¤È¡¢ ¥·¥¹¥Æ¥à¤Î¥í¥°¥Õ¥¡¥¤¥ë¤òµ¶Â¤¤µ¤ì¤¿¤ê¡¢¥·¥¹¥Æ¥à¥Õ¥¡¥¤¥ë¤Î ²þ¤¶¤ó¤ò¼õ¤±¤ë¤È¤¤¤Ã¤¿¥ê¥¹¥¯¤ò¤ª¤«¤¹»ö¤Ë¤Ê¤ë¡£
¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤ÇÀë¸À¤µ¤ì¤Æ¤¤¤ë¼¡¤Î ¤è¤¦¤Ê¹½Â¤ÂΤò»ý¤Ä¥¨¥ó¥È¥ê¤Î·«¤êÊÖ¤·¤«¤é¤Ç¤¤Æ¤¤¤ë¡£ (¤³¤³¤Ëµ½Ò¤·¤Æ¤¢¤ë¤Î¤Ï´ö¤Ä¤«¤ÎÂç¤Þ¤«¤ÊÄêµÁ¤Î¤ß¤Ç¡¢ ¾ÜºÙ¤Ï libc ¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤è¤êÊѤï¤ë»ö¤ËÃí°Õ¤¹¤ëɬÍפ¬¤¢¤ë):
#define UT_UNKNOWN 0 #define RUN_LVL 1 #define BOOT_TIME 2 #define NEW_TIME 3 #define OLD_TIME 4 #define INIT_PROCESS 5 #define LOGIN_PROCESS 6 #define USER_PROCESS 7 #define DEAD_PROCESS 8 #define ACCOUNTING 9 #define UT_LINESIZE 12 #define UT_NAMESIZE 32 #define UT_HOSTSIZE 256 struct exit_status { short int e_termination; /* process termination status */ short int e_exit; /* process exit status */ }; struct utmp { short ut_type; /* type of login */ pid_t ut_pid; /* PID of login process */ char ut_line[UT_LINESIZE]; /* device name of tty - "/dev/" */ char ut_id[4]; /* init id or abbrev. ttyname */ char ut_user[UT_NAMESIZE]; /* user name */ char ut_host[UT_HOSTSIZE]; /* hostname for remote login */ struct exit_status ut_exit; /* The exit status of a process marked as DEAD_PROCESS */ /* ut_session ¤È ut_tv ¥Õ¥£¡¼¥ë¥É¤Ï¡¢32¥Ó¥Ã¥È¤Ç¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¾ì¹ç¤È 64¥Ó¥Ã¥È¤Ç¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¾ì¹ç¤ÇƱ¤¸¥µ¥¤¥º¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£ ¤³¤¦¤¹¤ë¤³¤È¤Ç¡¢32¥Ó¥Ã¥È¤È64¥Ó¥Ã¥È¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¡¢ ¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤È¶¦Í¥á¥â¥ê¤ò¶¦Í¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ë */ #if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32 int32_t ut_session; /* Session ID, used for windowing */ struct { int32_t tv_sec; /* Seconds */ int32_t tv_usec; /* Microseconds */ } ut_tv; /* Time entry was made */ #else long int ut_session; /* Session ID, used for windowing */ struct timeval ut_tv; /* Time entry was made */ #endif int32_t ut_addr_v6[4]; /* IP address of remote host */ char __unused[20]; /* Reserved for future use */ }; /* Backwards compatibility hacks. */ #define ut_name ut_user #ifndef _NO_UT_TIME #define ut_time ut_tv.tv_sec #endif #define ut_xtime ut_tv.tv_sec #define ut_addr ut_addr_v6[0]¤³¤Î¹½Â¤ÂΤ«¤é¥æ¡¼¥¶¡¼¤Î»È¤Ã¤Æ¤¤¤ëüËö¤Î¥¹¥Ú¥·¥ã¥ë¥Õ¥¡¥¤¥ë̾¡¢ ¥æ¡¼¥¶¡¼¤Î¥í¥°¥¤¥ó̾¡¢ (time(2) ·Á¼°¤Ç¤Î)¥í¥°¥¤¥ó»þ¹ï¤¬¤ï¤«¤ë¡£Ê¸»úÎó¥Õ¥£¡¼¥ë¥É¤Ï¡¢ ¥Õ¥£¡¼¥ë¥É¤ÎŤµ¤è¤êʸ»úÎó¤¬Ã»¤¤¾ì¹ç¤Ë¤Ï¡¢'\0' ¤Ë¤è¤Ã¤Æ½ªÃ¼¤µ¤ì¤ë¡£
ºÇ½é¤Î¥¨¥ó¥È¥ê¤Ï init(8) ¥³¥Þ¥ó¥É¤¬ inittab(5) ¤ò½èÍý¤¹¤ë¤³¤È¤Çºî¤é¤ì¤ë¡£ ¤¢¤ë¥¨¥ó¥È¥ê¤ò½èÍý¤¹¤ëÁ°¤Ë¡¢ init(8) ¤Ï ut_type ¤ò DEAD_PROCESS ¤Ë½é´ü²½¤¹¤ë¡£ ¥ì¥³¡¼¥É¤Î ut_type ¤¬ DEAD_PROCESS ¤È RUN_LVL ¤Î¤¤¤º¤ì¤Ç¤â¤Ê¤¯¡¢ ¤«¤Ä PID ¤¬ ut_pid ¤Ç¤¢¤ë¥×¥í¥»¥¹¤¬¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢ut_user, ut_host, ut_time ¤ò¥Ì¥ë¥Ð¥¤¥È¤Ç¥¯¥ê¥¢¤·¤Æ½é´ü²½¤ò¹Ô¤¦¡£ ɬÍ×¤Ê ut_id ¤ò»ý¤Ä¶õ¤Î¥ì¥³¡¼¥É¤ò¸«¤Ä¤±¤é¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ init ¤Ï¿·¤·¤¤¥ì¥³¡¼¥É¤òºî¤ë¡£inittab ¤«¤é ut_id ¤òÀßÄꤷ¡¢ ut_pid ¤ª¤è¤Ó ut_time ¤ò¸½ºßÃͤˡ¢ ut_type ¤ò INIT_PROCESS ¤ËÀßÄꤹ¤ë¡£
getty(8) ¤Ï pid ¤Ç¥¨¥ó¥È¥ê¤òÆÃÄꤷ¡¢ ut_type ¤ò LOGIN_PROCESS ¤ËÊѹ¹¤·¡¢ ut_time ¤ò¹¹¿·¤·¡¢ut_line¤òÀßÄꤷ¤¿¸å¡¢Àܳ¤¬³ÎΩ¤µ¤ì¤ë¤Î¤òÂԤġ£ login(8) ¤Ï¥æ¡¼¥¶¡¼Ç§¾Ú¤¬½ªÎ»¤¹¤ë¤È¡¢ ut_type ¤ò USER_PROCESS ¤ËÊѹ¹¤·¡¢ ut_time ¤ò¹¹¿·¤·¡¢ut_host ¤È ut_addr¤òÀßÄꤹ¤ë¡£ getty(8) ¤È login(8) ¤Ë¤è¤ê°Û¤Ê¤ë¤¬¡¢ ut_pid ¤ÎÂå¤ï¤ê¤Ë ut_line ¤ò»È¤Ã¤Æ¥ì¥³¡¼¥É¤ÎÆÃÄ꤬¹Ô¤ï¤ì¤ë¤³¤È¤â¤¢¤ë (ut_pid ¤ò»È¤¦Êý¤¬Ë¾¤Þ¤·¤¤) ¡£
init(8) ¤Ï¥×¥í¥»¥¹¤Î½ªÎ»¤ò¸¡½Ð¤·¤¿¾ì¹ç¡¢ ut_pid ¤ò¥¡¼¤È¤·¤Æ utmp ¤Î¥¨¥ó¥È¥ê¤òÆÃÄꤷ¡¢ ut_type ¤ò DEAD_PROCESS ¤ËÀßÄꤷ¡¢ ut_user, ut_host, ut_time ¤ò¥Ì¥ë¥Ð¥¤¥È¤Ç¥¯¥ê¥¢¤¹¤ë¡£
xterm(1) ¥³¥Þ¥ó¥É¤ä¾¤ÎüËö¥¨¥ß¥å¥ì¡¼¥¿¤Ï ľÀÜ USER_PROCESS ¤Î¥ì¥³¡¼¥É¤òºî¤ê¡¢ /dev/ttyp%c ¤ÎºÇ¸å¤Î2ʸ»ú¤«¡¢ /dev/pts/%d ¤Î p%d ¤ò»È¤Ã¤Æ ut_id ¤ÎÃͤòÀ¸À®¤¹¤ë¡£ ¤³¤Î id ¤ò»ý¤Ä¥¨¥ó¥È¥ê¤¬ DEAD_PROCESS ¤Ç¤¢¤Ã¤¿¾ì¹ç¤Ë¤ÏºÆÍøÍѤ·¡¢ ¤½¤ì°Ê³°¤Î¾ì¹ç¤Ë¤Ï¿·¤·¤¤¥¨¥ó¥È¥ê¤¬ºî¤é¤ì¤ë¡£ ²Äǽ¤Ê¾ì¹ç¤Ë¤Ï¥×¥í¥»¥¹½ªÎ»»þ¤Ë DEAD_PROCESS ¤ÈÀßÄꤷ¡¢ ¤µ¤é¤Ë ut_line, ut_time, ut_user, ut_host ¤ò¥Ì¥ë¥Ð¥¤¥È¤Ç¥¯¥ê¥¢¤¹¤ë¤³¤È¤¬¾©Î夵¤ì¤Æ¤¤¤ë¡£
telnetd(8) ¤Ï LOGIN_PROCESS ¤òÀßÄꤹ¤ë¤À¤±¤Ç¤è¤¯¡¢ »Ä¤ê¤Î½èÍý¤ÏÄ̾ïÄ̤ê login(8) ¤ËǤ¤»¤ì¤Ð¤è¤¤¡£ telnet ¤Î¥»¥Ã¥·¥ç¥ó¤¬½ªÎ»¤·¤¿¸å¡¢Á°½Ò¤Î¤è¤¦¤Ë telnetd(8) ¤¬ utmp ¤Î¥¨¥ó¥È¥ê¤ò½é´ü²½¤¹¤ë¡£
wtmp ¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¤¹¤Ù¤Æ¤Î¥í¥°¥¤¥ó¤È¥í¥°¥¢¥¦¥È¤¬µÏ¿¤µ¤ì¤ë¡£ ¤½¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ï¡¢¥í¥°¥¢¥¦¥ÈºÑ¤ÎüËö¤Ç¥æ¡¼¥¶¡¼Ì¾¤¬¥Ì¥ë¤È¤Ê¤ë¤³¤È°Ê³°¤Ï utmp ¤È¤Þ¤Ã¤¿¤¯Æ±¤¸¤Ç¤¢¤ë¡£ ¥æ¡¼¥¶¡¼Ì¾¤¬ shutdown ¤â¤·¤¯¤Ï reboot ¤Ç¤¢¤ë üËö̾ ~ ¤Ï¥·¥¹¥Æ¥à¤ÎÄä»ß (shutdown) ¤Þ¤¿¤ÏºÆµ¯Æ° (reboot) ¤ò°ÕÌ£¤¹¤ë¡£¤Þ¤¿¤½¤ÎüËö̾¤¬ | ¤È } ¤ÎÂÐ¤Ï date(1) ¥³¥Þ¥ó¥É¤ÇÊѹ¹¤·¤¿¿·¡¿µì¤Î¥·¥¹¥Æ¥à»þ¹ï¤òµÏ¿¤·¤Æ¤¤¤ë¡£ wtmp ¥Õ¥¡¥¤¥ë¤Ï login(1) ¡¢ init(1) ¤ä¤¤¤¯¤Ä¤«¤Î¥Ð¡¼¥¸¥ç¥ó¤Î getty(8) ¤Ë¤è¤ê´ÉÍý¤µ¤ì¤Æ¤¤¤ë¡£ ¤³¤ì¤é¤Î¥×¥í¥°¥é¥à¤Ï¤¤¤º¤ì¤â¥Õ¥¡¥¤¥ë¤ò¿·¤¿¤ËºîÀ®¤·¤¿¤ê¤·¤Ê¤¤¤Î¤Ç¡¢ ¥Õ¥¡¥¤¥ë¤òºï½ü¤¹¤ë»ö¤Ç¾ðÊó¤ÎµÏ¿ (record-keeping) ¤ò»ß¤á¤ë»ö¤¬¤Ç¤¤ë¡£
Ãí°Õ¤¹¤Ù¤ÅÀ¤È¤·¤Æ¤Ï¡¢ biarch ¤Ê¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¡¢¤Ä¤Þ¤ê 32¥Ó¥Ã¥È¤È 64¥Ó¥Ã¥È¤ÎξÊý¤Î ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò¼Â¹Ô¤Ç¤¤ë¥·¥¹¥Æ¥à (x86-64, ppc64, s390x ¤Ê¤É) ¤Ç¤Ï¡¢ ut_tv ¤Î¥µ¥¤¥º¤Ï 32¥Ó¥Ã¥È¥â¡¼¥É¤È 64¥Ó¥Ã¥È¥â¡¼¥É¤ÇƱ¤¸¤Ç¤¢¤ë¡£ ut_session ¤È ut_time ¤â¡¢Â¸ºß¤¹¤ë¾ì¹ç¤Ë¤ÏƱÍͤËƱ¤¸¥µ¥¤¥º ¤Ç¤¢¤ë¡£¤³¤ì¤Ë¤è¤ê¡¢32¥Ó¥Ã¥È¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È 64¥Ó¥Ã¥È¥¢¥×¥ê¥±¡¼¥·¥ç¥ó ¤Î´Ö¤Ç¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤È¶¦Í¥á¥â¥ê¤ò¶¦Í¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ë¡£ ut_tv ¤Ï struct timeval ¤ÈƱ¤¸¥µ¥¤¥º¤È¤Ï¸Â¤é¤Ê¤¤¤Î¤Ç¡¢
-
gettimeofday((struct timeval *) &ut.ut_tv, NULL);
¤Î¤è¤¦¤Ê¸Æ¤Ó½Ð¤·¤ò¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢ °Ê²¼¤Î¤è¤¦¤Ë³Æ¥Õ¥£¡¼¥ë¥É¤òÀßÄꤹ¤ëÊýË¡¤¬¿ä¾©¤µ¤ì¤ë:
-
struct utmp ut; struct timeval tv; gettimeofday(&tv, NULL); ut.ut_tv.tv_sec = tv.tv_sec; ut.ut_tv.tv_usec = tv.tv_usec;
¥Õ¥¡¥¤¥ë
/var/run/utmp/var/log/wtmp
½àµò
Linux ¤Ç¤Î utmp ¤Î¥¨¥ó¥È¥ê¤Ï v7/BSD ¤ä System V ¤Î¤¤¤º¤ì¤Ë¤â½àµò¤·¤Æ¤¤¤Ê¤¤: ¤½¤ÎξÊý¤¬º®ºß¤·¤¿¤â¤Î¤Ç¤¢¤ë¡£v7/BSD ¤Ç¤Ï¤è¤ê¾¯¤·¤Î¹àÌܤ·¤«¤Ê¤¤; ¤â¤Ã¤È¤â½ÅÍפʤ³¤È¤Ï¡¢ut_type ¤¬Ìµ¤¤¤³¤È¤Ç¤¢¤ë¡£ ¤½¤Î¤¿¤á v7/BSD ·Ï¤Î¥×¥í¥°¥é¥à¤Ç¤Ï (¤¿¤È¤¨¤Ð) »à¤ó¤À¾õÂ֤Υ¨¥ó¥È¥ê¤ä ¥í¥°¥¤¥ó¾õÂ֤Υ¨¥ó¥È¥ê¤Þ¤Çɽ¼¨¤µ¤ì¤Æ¤·¤Þ¤¦¤³¤È¤Ë¤Ê¤Ã¤¿¡£ ¤µ¤é¤Ë¥»¥Ã¥·¥ç¥óÍѤΥ¹¥í¥Ã¥È¤ò³ä¤êÅö¤Æ¤ë¤¿¤á¤ÎÀßÄê¥Õ¥¡¥¤¥ë¤¬¤Ê¤¤¡£ BSD ¤ËÀßÄê¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¤Î¤Ï ut_id ¤¬¤Ê¤¤¤«¤é¤Ç¤¢¤ë¡£ Linux (System V ·Ï)¤Ç¤Ï¡¢ÀßÄê¥Õ¥¡¥¤¥ë¤òɬÍפȤ»¤º ¥»¥Ã¥·¥ç¥óÍѤΥ¹¥í¥Ã¥È¤ò³ä¤êÅö¤Æ¤ë¤Î¤Ç¡¢°ìöÀßÄê ¤µ¤ì¤Æ¤·¤Þ¤¦¤È¥ì¥³¡¼¥É¤Î ut_id ¤Ï·è¤·¤ÆÊѹ¹¤µ¤ì¤Ê¤¤¡£ ut_id ¤ò¥¯¥ê¥¢¤¹¤ë¤È¶¥¹ç¾õÂ֤ˤª¤Á¤¤¤ê¡¢ utmp ¤Î¥¨¥ó¥È¥ê¤ò²õ¤·¤¿¤ê¡¢ÀøºßŪ¤Ê¥»¥¥å¥ê¥Æ¥£¥Û¡¼¥ë¤Ë¤Ê¤ë²ÄǽÀ¤¬¤¢¤ë¡£ System V ¤Ç¤Î¼è¤ê·è¤á¤Ç¤ÏɬÍפȤϤµ¤ì¤Æ¤¤¤Ê¤¤¤¬¡¢¾åµ¹àÌܤò¥Ì¥ë¥Ð¥¤¥È¤Ç ¥¯¥ê¥¢¤·¤Æ¤ª¤¯¤Î¤Ï¡¢BSD ¤Ç¤Î¼è¤ê·è¤á¤òÁ°Äó¤È¤·¤Æ¤¤¤Æ¡¢ ¤«¤Ä utmp ¤ò¹¹¿·¤·¤Ê¤¤Â¿¤¯¤Î¥×¥í¥°¥é¥à¤¬Æ°¤¯¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ç¤¢¤ë¡£ Linux ¤Ç¤Ï¤³¤³¤Þ¤Çµ½Ò¤·¤Æ¤¤¿¤è¤¦¤Ë¡¢¹ÔÆâÍƤÎɽ¼¨¤Ï BSD ¤Î´·Îã¤Ë½¾¤Ã¤Æ¤¤¤ë¡£System V ¤Ç¤Ï ut_type ¤òÌÜ°õ¤Ë¤·¤¿¤ê¡¢¤¿¤È¤¨¤Ð "new time" ¤Î¤è¤¦¤Ê ÄÌÃÎ¥á¥Ã¥»¡¼¥¸¤òµÏ¿¤¹¤ë¤¿¤á¤Î¤ß¤Ë»È¤Ã¤Æ¤¤¤ë¡£ UT_UNKNOWN ¤Ï Linux ¤Çºî¤é¤ì¤¿¤â¤Î¤Î¤è¤¦¤Ç¤¢¤ë¡£ ACCOUNTING ¤È¤¤¤¦¼ïÎà¤Ï Linux ¤Ë¤Ï¸ºß¤·¤Ê¤¤¡£ System V ¤Ë¤Ï ut_host ¤â ut_addr_v6 ¤â¸ºß¤·¤Ê¤¤¡£
¥Õ¥¡¥¤¥ë¤òºï½ü¤¹¤ë¤³¤È¤Ç utmp ¤Ø¤ÎµÏ¿¤ò»ß¤á¤é¤ì¤ë ¾¤ÎÍÍ¡¹¤Ê¥·¥¹¥Æ¥à¤È¤Ï°ã¤¤¡¢Linux ¤Ç¤Ï utmp ¥Õ¥¡¥¤¥ë¤òɬ¤º¤ª¤¤¤Æ ¤ª¤¯É¬Íפ¬¤¢¤ë¡£ who(1) ¥³¥Þ¥ó¥É¤¬µ¡Ç½¤·¤Ê¤¤¤è¤¦¤Ë¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢ utmp ¥Õ¥¡¥¤¥ë¤ÎÁ´¥æ¡¼¥¶¡¼¤ËÂФ¹¤ëÆɤ߼è¤êµö²Ä¤òÀßÄꤷ¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¡£
utmp ¹½Â¤ÂÎ¤Ï libc5 ¤«¤é libc6 ¤ÇÊѹ¹¤µ¤ì¤¿¡£¤½¤Î¤¿¤áÀΤΠlibc5 ¤Î¹½Â¤ÂÎ ¤ò»È¤Ã¤¿¥×¥í¥°¥é¥à¤Ï /var/run/utmp ¤ä /var/log/wtmp ¥Õ¥¡¥¤¥ë¤ò²õ¤·¤Æ¤·¤Þ¤¦¡£
Ãí°Õ
¥Õ¥¡¥¤¥ë¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ï¥Þ¥·¥ó¤Ë°Í¸¤¹¤ë¤Î¤Ç¡¢¥Õ¥¡¥¤¥ë¤¬ºî¤é¤ì¤¿ ¥Þ¥·¥ó¤â¤·¤¯¤ÏƱ°ì¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Î¥Þ¥·¥ó¾å¤Ç¤Î¤ß½èÍý¤¹¤ë»ö¤ò¿ä¾©¤¹¤ë¡£32¥Ó¥Ã¥È¤È64¥Ó¥Ã¥È¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎξÊý¤ò¼Â¹Ô¤Ç¤¤ë¥×¥é¥Ã¥È¥Õ¥©¡¼¥à (x86-64, ppc64, s390x Åù) ¤Ç¤Ï¡¢32¥Ó¥Ã¥È¥â¡¼¥É¤È64¥Ó¥Ã¥È¥â¡¼¥É¤Ç ¹½Â¤ÂÎ utmp ¤Î³Æ¥Õ¥£¡¼¥ë¥É¤Î¥µ¥¤¥º¤òƱ¤¸¤Ë¤·¤Ê¤±¤ì¤Ð¤¤¤±¤Ê¤¤ÅÀ¤Ë α°Õ¤¹¤ë¤³¤È¡£ ¤½¤Î¤¿¤á¤Ë¤Ï¡¢ ut_session ¤ò int32_t ·¿¤Ë¡¢ ut_tv ¤ò 2¤Ä¤Î int32_t ·¿¤Î¥Õ¥£¡¼¥ë¥É tv_sec , tv_usec ¤ò»ý¤Ä¹½Â¤ÂΤËÊѹ¹¤¹¤ì¤Ð¤è¤¤¡£ (¤³¤Î¾ì¹ç¡¢ut_tv ¤Ë¥Ç¡¼¥¿¤òÆþ¤ì¤ë¤Ë¤Ï¡¢ËÜÅö¤Î timeval ¹½Â¤ÂΤ˻þ´Ö¤ò¼èÆÀ¤·¤Æ¤«¤é¡¢ ut_tv ¤Î 2 ¥Õ¥£¡¼¥ë¥É¤Ë¥Ç¡¼¥¿¤ò¥³¥Ô¡¼¤¹¤ëɬÍפ¬¤¢¤ë)
¥Ð¥°
¤³¤Î man ¥Ú¡¼¥¸¤Ï libc5 ¤Ë´ð¤Å¤¤¤Æºî¤é¤ì¤Æ¤¤¤Æ¡¢ ºÇ¿·¤Î¤â¤Î¤Ç¤Ï°ã¤Ã¤Æ¤¤¤ë¤«¤â¤·¤ì¤Ê¤¤¡£´ØÏ¢¹àÌÜ
ac(1), date(1), last(1), login(1), who(1), getutent(3), updwtmp(3), init(8)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre