የ Linux Command - wtmp ይማሩ

ስም

ጁምፕ, wtmp - የመዝገብ መረጃዎች

ማጠቃለያ

#include

መግለጫ

Utmpmp ፋይል አንድ ስለ ስርዓቱ እየተጠቀመበት ያለውን መረጃ እንዲያገኝ ይፈቅድለታል. በአሁኑ ጊዜ ስርዓቱን የሚጠቀሙ ተጨማሪ ተጠቃሚዎች ሊኖሩ ይችላሉ, ምክንያቱም ሁሉም ፕሮግራሞች መጠቀሚያ አይጠቀሙም.

ማስጠንቀቂያ- ብዙዎቹ የስርዓት ፕሮግራሞች (ሞኝነት) በንጹህ አቋም ላይ ስለሚመሰረቱ ፐፕ አምፕ መፃፍ የማይችሉ መሆን አለባቸው. ወደ ማንኛውም ተጠቃሚ የሚጠቀሙ ዪፕስን ለቀው ሲለቁ የውሸት የስርዓት መዛግብቶች እና የስርዓት ፋይሎች ለውጥ ሊያደርጉ ይችላሉ.

ፋይሉ በማካተት ፋይል ውስጥ የተጠቃለለ የሚከተለው ቅደም ተከተል ነው (ይህ ከበርካታ ትርጓሜዎች አንዱ ነው, ዝርዝሮች በ libc ስሪት ላይ ይወሰናል):

#definition 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 # definet USER_PROCESS 7 #define DEAD_PROCESS 8 #definitely ACCOUNTING 9 #define DELETE_PROCESS 8 #definitely ACCOUNTING 9 #define UDLINESIZE 12 #define UT_NAMESIZE 32 # definet UT_HOSTSIZE 256 አወቃቀር exit_status {አጭር ቅደም ተከተል; / * የሂደቱ ማቋረጫ ሁኔታ. * / short int e_exit; / * የሂደት መውጫ ሁኔታ. * /}; አወቃቀር ኡፕልፕ (አጭር_ትዩም; / * የመግቢያ አይነት * / pid_t ut_pid; / * የ login ሂደት * / char ut_line [UBLINESIZE]; / * የመሣሪያ ስም tty - "/ dev /" * / char ut_id [4]; / * የመጀመሪያ መታወቂያ ወይም አህጽሮተ. ttyname * / char ut_user [UT_NAMESIZE]; / * የተጠቃሚ ስም * / char ut_host [UT_HOSTSIZE]; / * የአስተናጋጅ ስም ለጥራ መግባት * / struct exit_status ut_exit; / * እንደ DEAD_PROCESS ምልክት የተደረገበት ሂደት መውጫ ሁኔታ. * / long ut_session; / * የክፍለ-ጊዜ መታወቂያ, ለመስኮት * / struct የጊዜ ሂደቱን ut_tv መጠቀም; / * የጊዜ ተመዝግቦ ነበር. * / int32_t ut_addr_v6 [4]; / * የሩቅ አስተናጋጅ IP አድራሻ. * / char pad [20]; / ለወደፊት ጥቅም ላይ ተጠይቋል. * /}; / * የኋላ ተኳሃኝነት. * / #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]

ይህ መዋቅር ከተጠቃሚው ተርሚናል, ከተጠቃሚዎች የመግቢያ ስም, እና ከመግቢያ ጊዜ በጊዜ መልክ (2) ​​ጋር የተያያዘውን ልዩ ፋይል ስም ይሰጣል. የማጣቀሻ መስኮች ከሜክካሉ መጠን አጭር ከሆኑ በ '\ 0' ይቋረጣሉ.

የመጀመሪያዎቹ ግቤቶች የተፈጠሩት ከ init (8) inITab (5) ሂደቱ ነው. ነገር ግን ኢንዴክስ (8) ን ከመጥቀሱ በፊት ፐሮጀክትን ( DE_USD) ለ DEAD_PROCESS በ < DEAD_PROCESS> ን, በ < ut_id> , < ut_host> ን እና ut_time ን ባይቶች " በመጠቀም < utamp > ን በመጠቀም < DEMP_PROCESS> ወይም RUN_LVL አይደለም. አስፈላጊ ከሆነ ut_id ጋር ምንም ባዶ መዝገብ ከሌለ init የሚለው አዲስ ነገር ይፈጥራል. Ut_idinitalab , ut_pid እና ut_time ወደ ወቅታዊ ዋጋዎች, እና ለ INIT_PROCESS ደግሞ ut_type ያስቀምጣል .

getty (8) ቦታውን በፒዲን ያስቀምጣል , ለውጦችን ያበጃል LOGIN_PROCESS , ለውጦች ut_time , መቆጣጠሪያውን ያዘጋጃል, እና ግንኙነት እንዲፈጠር ተስፋ ይጠብቃል. login (8), አንድ ተጠቃሚ ከተረጋገጠ በኋላ, ለውጦች ut_type ወደ USER_PROCESS , ለውጦች ut_time , እና ut_host እና ut_addrን ያዘጋጃል . በጋቲ (8) እና በመለያ (8) ላይ የተመዘገቡ ሪፖርቶች ከተመረጡት ፐፐድ / ፖድት ይልቅ በኦቲንግ መስመር ይቀመጡ ይሆናል .

Init (8) አንድ ሂደቱ ሲወጣ, የ utmp መግቢያውን በ ut_pid , ከ DEAD_PROCESS ጋር ያዋቅራል , እና በ null ባይቶች ut_user , ut_host እና ut_time ን ያጸዳል.

xterm (1) እና ሌሎች የመዳረሻ አስሊፊዎች በቀጥታ የ USER_PROCESS መዝገብ ይፍጠሩ እና የመጨረሻውን ሁለት የ « / dev / ttyp % c» ን በመጠቀም ወይም ለ % e / dev / pts / % d በመጠቀም የ " ut_id " ን ያመንጩ . ለዚህ መታወቂያ DEAD_PROCESS ካገኙ እነሱ እንደገና ጥቅም ላይ ይውላሉ , አለበለዚያ አዲስ መግቢያ ይፈጥራሉ. የሚቻሉ ከሆነ, እንደ DEAD_PROCESS ምልክት አድርገው ምልክት ያደርጉባቸው እና ዑደቱን , ut_time , ut_user እና ut_host ን ይጠቀማሉ.

xdm (8) ምንም የተመጠለ ቦታ ስለሌለ የዩክፕ መዝገብ መፍጠር የለበትም. አንድ ሰውን እንዲፈጥር ማድረግ እንደ ስህተቶች ውጤት ያስከትላል, ለምሳሌ <ጣት: can not stat /dev/machine.dom>. እንደ ftpd (8) እንደ wtmp ምግቦችን መፍጠር ይኖርበታል.

telnetd (8) የ LOGIN_PROCESS መግቢያን ያዘጋጃል እና ቀሪውን ወደ ትግበራ (8) ይተውታል. Telnet ክፍለ ጊዜ ከተጠናቀቀ በኋላ telnetd (8) በተገለፀው መንገድ ይንፀባረቀዋል.

wtmp ፋይሉ ሁሉንም ምዝግቦች እና ምዝግብ ማስታወሻዎችን ያቀርባል. የእሱ ቅርጸት ልክ እንደ ተጠቀሰው ተጎዳኝ የማይታጠቀው የተጠቃሚ ስም በመጠኑ ላይ እንደተገለፀ ብቻ ነው. በተጨማሪም " የተጠቃሚ ስም " "ማቋረጫ" ወይም "ዳግም ማስነሳት" የተሰጠው የመጨረሻው ስም " ሲስተም " ሲስተም እንዲዘጋ ወይም ዳግም እንዲነሳ እና "" | / "}" ቀን / ቀን (1) ሲያስተካክለው የድሮውን / አዲስ ስርዓቱን ይመዘግባል. wtmp በመግቢያ (1), በ init (1) እና አንዳንድ የጂቲ አይነቶች (1) ይጠበቃሉ. ከነዚህ ፕሮግራሞች አንዳቸውም ፋይሉን ይፈጥራል, እናም ከተወገደ መዝገብ-መዝጋት ይጠፋል.