Aoao le Polokalame Linux - wtmp

Igoa

utmp, wtmp - faamaumauga faʻamaumauga

Aotelega

#include

Faʻamatalaga

O le faila file e mafai ai e se tasi ona maua faʻamatalaga e uiga i le o loʻo faʻaaogaina nei le polokalama. Atonu e tele tagata faʻaogaina nei o loʻo faʻaaogaina le polokalama, aua e leʻo polokalama uma e faʻaaogaina le utmp logging.

Lapataiga: o le utmp e le tatau ona lelei, ona o le tele o polokalame polokalama (faʻavalevalea) e faʻalagolago i lona faamaoni. E te ono aʻafia ai siama komipiuta komipiuta ma faʻaleleia atili faila faila pe afai e te alu ese i soʻo se tagata faʻaaoga.

O le faila o se faasologa o faʻamaumauga faʻatasi ai ma le faʻailoga ua faʻamatalaina i le aofia ai faila (faʻamalamalama o lenei mea e tasi o faʻamatalaga faʻamilosaga; o faʻamatalaga e faʻalagolago i le version o le libc):

#define UT_UNKNOWN 0 #define RUN_LVL 1 #define BOOT_TIME 2 #define NEW_TIME 3 #define OLD_TIME 4 #finefine 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 {poto puupuu e e faʻamoemoe; / * tulaga faʻamutaina o galuega. * / puupuu puupuu e_exit; / * tulaga o le alu ese. * /}; structutmp {short ut_type; / * type of login * / pid_t ut_pid; / * pid of process login * / char ut_line [UT_LINESIZE]; / * igoa ole tty - "/ dev /" / char ut_id [4]; / * init id pe vavave. ttyname * / char ut_user [UT_NAMESIZE]; / * igoa o le tagata / * char ut_host [UT_HOSTSIZE]; / * faʻailoga igoa mo le mamao mamao * / structure exit_status ut_exit; / * Le tulaga o le alu ese o se faagasologa ua faailogaina o le DEAD_PROCESS. * taimi umi; / * ID session, faʻaaoga mo le faʻamalama * / struct timeval ut_tv; / * tusia le taimi. * / int32_t ut_addr_v6 [4]; / * Tuatusi IP o le tagata nofo mamao. * char char [20]; / * Faasaoina mo le faʻaaogaina i le lumanai. * /}; / * Faʻatusatusa i tua tua. * / #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]

O lenei fausaga e tuʻuina atu ai le igoa o le faila faapitoa e fesoʻotaʻi ma le mea e faʻaogaina ai le tagata, le igoa ole igoa o le tagata, ma le taimi e teu ai i le taimi (2). Ua faʻamutaina laufanua i le '\ 0' pe afai e laʻititi nai lo le tele o le fanua.

O faʻamaumauga muamua na maua mai i le inittab (5). A o lei faia se tusitusiga, e ui i lea, init (8) faʻamamaina le utmp i le faʻaogaina o le ut_type i le DEAD_PROCESS , faʻamamaina le ut_user , ut_host , ma le time_time ma nets nets mo faamaumauga taitasi ole ut_type e le DEAD_PROCESS poʻo RUN_LVL ma e leai se faagasologa o loʻo i ai PID ut_pid . Afai e leai se faʻamaumauga leai se mea e mafai ona maua, e maua ai se mea fou. E maua mai i le inittab, ut_pid ma ut_time i le taimi nei, ma ut_type i INIT_PROCESS .

(8) maua le ulufale i luga o le tapuni, suia ut_type i le LOGIN_PROCESS , suia ut_time , seti line , ma faatalitali mo le fesoʻotaʻiga ina ia faʻatuina. login (8), a maeʻa ona faʻamaoni le tagata faʻaoga, suia ut_type i le USER_PROCESS , suia ut_time , ma seti ut_host ma ut_addr . E faalagolago i luga o le aitalafu (8) ma le saini (8), e mafai ona tuʻuina faʻamaumauga e le ut_line nai lo le mea sili ona lelei.

A maua e le init (8) se faʻagasologa o le faagasologa, e faʻapipiʻi lona ulufale mai i le ut_pid , faʻapipiʻi ut_type i le DEAD_PROCESS , ma faʻamalo ut_user , ut_host ma ut_time faʻatasi ai ma upega null.

xterm (1) ma isi tagata taʻutaʻu faʻatoʻa fatuina se faamaumauga USER_PROCESS ma faʻailoa le ut_id i le faʻaaogaina o mataitusi mulimuli e lua o / dev / ttyp % c poo le faʻaaogaina o p % d mo / dev / pts / % d . Afai latou te mauaina le DEAD_PROCESS mo lenei id, latou te toe faʻaaogaina, a le o lea latou te faia se pepa fou. Afai latou te mafai, o le a latou faailogaina o le DEAD_PROCESS i le alu atu ma ua fautuaina e latou te le amanaʻia ut_line , ut_time , ut_user , ma ut_host .

xdm (8) e le tatau ona fatuina se upega tafailagi, aua e leai se faʻailoga ua tofia. O le tuʻuina atu o se tasi o le a mafua ai i mea sese, e pei o le 'tamatamaʻilima: e le mafai stat /dev/machine.dom'. E tatau ona fatuina ni tusi, ae pei lava o le ftpd (8).

telenetd (8) faʻatuina se ulufale LOGIN_PROCESS ma tuʻu le malologa e teu ai (8) pei ona masani ai. A maeʻa le telenetnet, telnetd (8) faʻamamā le utmp i le auala ua faʻamatalaina.

O le wtmp faila e faamaumau ai logiga ma logo uma. O lona faatulagaga e tutusa lelei lava sei vagana ai o le igoa o le tagata e leai se igoa e taʻu mai ai se logo i luga o le laina fesootai. E le gata i lea, o le igoa faaiʻu "~" ma le igoa o le tagata "tapunia" poʻo le "toe faʻaleleia" o loʻo taʻu mai ai se faʻaaogaina o le polokalama poʻo le toe faʻaleleia ma le lua o igoa faʻapitoa "|" / "}" faʻapipiʻi le aso tuai / faʻafouina le taimi aʻo faʻapipiʻi (1) le suiga. Wtmp e tausia e ala i le inisiua (1), init (1), ma nisi o lomiga o le (1). E leai se tasi o nei polokalama e fatuina ai le faila , o lea afai e aveese, e tape le faamaumauga.