[P&AM Lab] who (BusyBox)Вопрос о файле /var/run/utmp
Grigoriy A. Sitkarev
sitkarev на komitex.ru
Чт Дек 23 05:12:54 MSK 2010
Да, хранятся И о тех кто работает в системе тоже.
Дело в том что в utmp есть кое-что ещё. Если бы ты внимательно посмотрел
utmp(5) то нашёл бы там описание структуры utmp. По значениям полей
ut_type там дана расшифровка.
#define EMPTY 0 /* пустая запись */
...
#define BOOT_TIME 2 /* время загрузки системы в ut_tv */
...
#define DEAD_PROCESS 8 /* завершённый процесс */
--
Г.А.
Борис Липин пишет:
> При разборе утилиты who возникли вопросы по структуре utmp, на сколько я понял в ней хранятся данные о пользователях в данный момент работающих в системе.Для проверки написал програмку:
>
> int main(int argc, char *argv[])
> {
> struct utmp *ut;
> int i=0;
> setutent();
> while((ut = getutent()) != NULL) {
> printf("%02d UT_ID=%s ut_type=%d ",i++ ,ut->ut_id, ut->ut_type);
> printf("pid=%d User-%s\n",ut->ut_pid, ut->ut_user);
> }
> return 0;
> }
>
> На выводе получилось:
>
> 00 UT_ID=si ut_type=8 pid=653 User-
> 01 UT_ID=~~ ut_type=2 pid=0 User-reboot
> 02 UT_ID=~~ ut_type=1 pid=20018 User-runlevel
> 03 UT_ID=l2 ut_type=8 pid=1651 User-
> 04 UT_ID=1 ut_type=6 pid=2459 User-LOGIN
> 05 UT_ID=2 ut_type=6 pid=2460 User-LOGIN
> 06 UT_ID=ts/0ruyk ut_type=7 pid=6870 User-ruyk
> 07 UT_ID=ts/7ruyk ut_type=8 pid=2736 User-ruyk
>
> Строки 04-07 - это информация о запущенных терминалах. А откуда взялись строки 00-03 и что они значат?
Подробная информация о списке рассылки Lab