From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Injected-Via-Gmane: http://gmane.org/ To: sisyphus@lists.altlinux.org From: Anton Farygin Date: Tue, 16 May 2006 21:19:45 +0400 Organization: ALT Linux Ltd. Message-ID: References: <44610C3E.3020405@yandex.ru> <200605160027.31574.mak@cea.ru> <4468F4AE.3050102@yandex.ru> <200605160624.52690.mak@cea.ru> <44697968.50607@yandex.ru> <446989C4.4070304@altlinux.com> <20060516133942.GC32576@basalt.office.altlinux.org> <20060516142825.GB6226@basalt.office.altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: clusterfw.gprsrus.net User-Agent: Thunderbird 1.5.0.2 (X11/20060502) In-Reply-To: <20060516142825.GB6226@basalt.office.altlinux.org> Sender: news Subject: Re: [sisyphus] coreutils, who ) X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: ALT Linux Sisyphus discussion list List-Id: ALT Linux Sisyphus discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 May 2006 17:10:23 -0000 Archived-At: List-Archive: List-Post: Dmitry V. Levin wrote: > On Tue, May 16, 2006 at 06:01:44PM +0400, Anton Farygin wrote: >> Dmitry V. Levin wrote: >>> On Tue, May 16, 2006 at 12:13:56PM +0400, Anton Farygin wrote: >>>> Это обсуждение надо переносить в bugzilla, ибо почему-то мантейнер >>>> coreutils его пропускает. >>> Можно с самого начала и сразу в деталях? >> С самого начала: >> >> в пакете powersave лежит утилита >> /usr/lib/powersave/wttyhx, которая детектит где и кем юзаются иксы. >> >> До определённого момента она выводила пользователя и терминала. После >> определённой версии coreutils - стала выводить >> #/usr/lib/powersave/wttyhx -a >> root :0 >> >> т.е. - всегда рута >> >> алгоритм там простой: >> getuserfromwho() { >> while read NAME DISP REST; do >> test "$1" = "$DISP" && break >> done < <(who) >> echo "${NAME:--}" >> } >> >> Т.е. - who из coreutils перестал предоставлять информацию о том, кто и >> где запустил иксы. >> >> Артём сравнил вывод от двух разных версий coreutils: >> [user@sol src]$ ./who >> root tty1 2006-05-09 18:36 (localhost) >> user tty2 2006-05-15 15:40 (localhost) >> user :0 2006-05-15 15:36 >> root ??? 2006-05-09 20:07 (localhost) >> user pts/3 2006-05-15 16:53 (:0.0) >> user pts/5 2006-05-15 17:04 (:0.0) >> user pts/12 2006-05-10 20:05 (:0.0) >> >> Новые ver 5.94 >> [user@sol src]$ who >> root tty1 2006-05-09 18:36 (localhost) >> user tty2 2006-05-15 15:40 (localhost) >> user pts/3 2006-05-15 16:53 (:0.0) >> user pts/5 2006-05-15 17:04 (:0.0) >> >> В первом случае wttyhx работает, во втором - нет > > Может, who раньше работал неправильно, а сейчас -- правильно? > Может, wttyhx полагается на неправильное поведение who? > Что это за wttyhx и как оно работает? wttyhx: $ rpm -qf /usr/lib/powersave/wttyhx powersave-0.12.11-alt2 $ /usr/lib/powersave/wttyhx --help usage: /usr/lib/powersave/wttyhx [-h] [-q] [-t] -a: print all users that run a X server and the display numbers -h: print a help message -q: be quiet, dont print any output -t: print a table of pids and vts of all running X server -v: print tty, user, display and version of X -3: also return 1 if XF86version is 3 -4: also return 1 if XF86version is 4 -a, -q, -t and -v are mutually exclusive Как работает - я показал выше. Это обычный скрипт на bash. вообще у меня есть подозрение что мы носили с собой патч на coreutils, изменяющий поведение who. Но я могу и ошибаться. Rgds, Rider