* [mdk-re] User remains logged on to pts/0 after exiting X :-( @ 2001-09-23 23:08 HB 2001-09-24 14:40 ` Michael Shigorin 2001-09-24 21:04 ` Sergey Vlasov 0 siblings, 2 replies; 7+ messages in thread From: HB @ 2001-09-23 23:08 UTC (permalink / raw) To: mandrake-russian Когда я (пользователь hb) выхожу из KDE, этот выход происходит как-то странно, "не до конца". После выхода пользователь hb с терминалом pts/0 остается logged on. Это так и должно быть? Кроме того, если перейти на тот терминал, где до этого был KDE, нажав Alt-F7, то мы видим пустой черный экран с мигающим на нем курсором (т. е. это текстовый режим). Такое ощущение, что там еще "что-то осталось", в отличие от других, на самом деле "пустых" терминалов, т. к. при нажатии Alt-F8, Alt-F9, ..., Alt-F12 не происходит ничего. Кто виноват? Что делать? Кому на Руси жить хорошо? Что меня особенно удивляет, как может быть пользователь logged on, если от его имени не запущено _ни одного_ процесса? $ who hb tty1 Sep 23 16:39 root tty2 Sep 23 19:37 hb pts/0 Sep 23 21:31 $ w 10:48pm up 2 days, 23:13, 3 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT hb tty1 - 4:39pm 0.00s 0.06s 0.01s w root tty2 - 7:37pm 1:35 0.16s 0.16s -bash -- HB ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [mdk-re] User remains logged on to pts/0 after exiting X :-( 2001-09-23 23:08 [mdk-re] User remains logged on to pts/0 after exiting X :-( HB @ 2001-09-24 14:40 ` Michael Shigorin 2001-09-24 18:20 ` HB 2001-09-24 21:04 ` Sergey Vlasov 1 sibling, 1 reply; 7+ messages in thread From: Michael Shigorin @ 2001-09-24 14:40 UTC (permalink / raw) To: mandrake-russian [-- Attachment #1: Type: text/plain, Size: 707 bytes --] On Sun, Sep 23, 2001 at 11:13:47PM +0400, HB wrote: > Alt-F7, то мы видим пустой черный экран с мигающим на нем курсором (т. е. > это текстовый режим). Такое ощущение, что там еще "что-то осталось", в man deallocvt :) Кстати, в аттаче startx имени меня лениваго, которому лень было выяснять, на какой VT надо сделать новый ("какой?") DISPLAY. Поэтому упомянутый скрипт делает это за меня и мою сестренку. С tmp он относится вроде бережно. На танцы с umask в районе # protect logfile моей паранойи не хватило. -- WBR, Michael Shigorin, webmaster of www.chem.univ.kiev.ua >Home Page: http://visa.chem.univ.kiev.ua/~mike/ ICQ: 113344029 >Brainbench: http://www.brainbench.com/transcript.jsp?pid=2434729 [-- Attachment #2: startx, который сам сделает " -- :N" и приберет за собой --] [-- Type: text/plain, Size: 2054 bytes --] #!/bin/sh # # (c) 1999 Red Hat Software, Inc. # patched by Michael Shigorin <mike@lic145.kiev.ua> # to open new displays automagically bindir=/usr/X11R6/bin userclientrc=$HOME/.xinitrc userserverrc=$HOME/.xserverrc sysclientrc=/etc/X11/xinit/xinitrc sysserverrc=/etc/X11/xinit/xserverrc clientargs="" serverargs=" -quiet " TMPDIR=${TMPDIR:-/tmp} if [ -f $userclientrc ]; then clientargs=$userclientrc else if [ -f $sysclientrc ]; then clientargs=$sysclientrc fi fi if [ -f $userserverrc ]; then serverargs=$userserverrc else if [ -f $sysserverrc ]; then serverargs=$sysserverrc fi fi # select next free display... if [ -n "`ls /tmp/.X*-lock 2>/dev/null`" ]; then display=:$[1+0$(ls /tmp/.X*-lock | tail -1 | sed -n 's/.*X\([[:digit:]]\+\)-lock$/\1/p')] else display=:0 fi whoseargs="client" while [ "x$1" != "x" ]; do case "$1" in /''*|\.*) if [ "$whoseargs" = "client" ]; then if [ "x$clientargs" = x ]; then clientargs="$1" else clientargs="$clientargs $1" fi else if [ "x$serverargs" = x ]; then serverargs="$1" else serverargs="$serverargs $1" fi fi ;; --) whoseargs="server" ;; *) if [ "$whoseargs" = "client" ]; then clientargs="$clientargs $1" else case "$1" in :[0-9]) display="$1" ;; *) serverargs="$serverargs $1" ;; esac fi ;; esac shift done # set up default Xauth info for this machine mcookie=`mcookie` serverargs="$serverargs -auth $HOME/.Xauthority" xauth add $display . $mcookie xauth add `hostname -f`$display . $mcookie # remember which VC will be occupied by X to deallocvt it later XINITLOG="$TMPDIR"/.startx-$HOSTNAME$display while [ -e "$XINITLOG" ]; do XINITLOG="$TMPDIR"/.startx-$HOSTNAME$display-$RANDOM done # protect logfile >"$XINITLOG" chmod 600 "$XINITLOG" xinit $clientargs -- $display $serverargs 2>&1 | tee -a "$XINITLOG" # clean up deallocvt $(sed -n -e 's/^(using VT number \([[:digit:]]\+\))/\1/p' "$XINITLOG") 2>/dev/null rm -f "$XINITLOG" ^ permalink raw reply [flat|nested] 7+ messages in thread
* [mdk-re] User remains logged on to pts/0 after exiting X :-( 2001-09-24 14:40 ` Michael Shigorin @ 2001-09-24 18:20 ` HB 0 siblings, 0 replies; 7+ messages in thread From: HB @ 2001-09-24 18:20 UTC (permalink / raw) To: Michael Shigorin Mon, Sep 24, 2001 at 12:06:28PM +0300, Michael Shigorin wrote: > > Alt-F7, то мы видим пустой черный экран с мигающим на нем курсором (т. е. > > это текстовый режим). Такое ощущение, что там еще "что-то осталось", в > man deallocvt :) Спасибо. К сожалению, deallocvt дает лишь часть желаемого эффекта. После запуска deallocvt терминал tty7 благополучно исчез, т. е. при нажатии Alt-F7 теперь, как и должно быть, ничего не происходит. Но воть пользователь на консоли pts/0 как был, так и остался :-( $ who root tty1 Sep 24 11:33 hb tty2 Sep 24 10:37 root pts/0 Sep 24 12:44 <----- Призрак отца Гамлета $ w 5:55pm up 3 days, 18:20, 3 users, load average: 0.00, 0.00, 0.00 ^^^^^^^ ну, двое нас, а не трое! USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 - 11:33am 48:12 0.11s 0.11s -bash hb tty2 - 10:37am 0.00s 0.74s 0.01s w Ведь не пользуется pts/0 никто: $ ps -aux | grep [p]ts | wc -l 0 -- HB ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [mdk-re] User remains logged on to pts/0 after exiting X :-( 2001-09-23 23:08 [mdk-re] User remains logged on to pts/0 after exiting X :-( HB 2001-09-24 14:40 ` Michael Shigorin @ 2001-09-24 21:04 ` Sergey Vlasov 2001-09-27 14:30 ` HB 1 sibling, 1 reply; 7+ messages in thread From: Sergey Vlasov @ 2001-09-24 21:04 UTC (permalink / raw) To: mandrake-russian On Sun, 23 Sep 2001 23:13:47 +0400 HB <npecca@yahoo.com> wrote: > Когда я (пользователь hb) выхожу из KDE, этот выход происходит как-то > странно, "не до конца". После выхода пользователь hb с терминалом pts/0 > остается logged on. Это так и должно быть? Интересно было бы посмотреть на вывод /usr/sbin/lsof /dev/pts/0 во время работы KDE и после выхода (когда остался висящий пользователь), чтобы выяснить, что за процесс зарегистрировал вход на псевдотерминале, и остался ли он после завершения работы KDE. > Кроме того, если перейти на тот терминал, где до этого был KDE, нажав > Alt-F7, то мы видим пустой черный экран с мигающим на нем курсором (т. е. > это текстовый режим). Такое ощущение, что там еще "что-то осталось", в > отличие от других, на самом деле "пустых" терминалов, т. к. при нажатии > Alt-F8, Alt-F9, ..., Alt-F12 не происходит ничего. Так Вы запускаете KDE через startx? Тогда так и должно быть - X занимает виртуальную консоль под себя, а после завершения освобождает, но не уничтожает. Для окончательного уничтожения есть утилита deallocvt (сам не пробовал, только смотрел описание). > Кто виноват? Что делать? Кому на Руси жить хорошо? > Что меня особенно удивляет, как может быть пользователь logged on, > если от его имени не запущено _ни одного_ процесса? Возможно, например, кто-то не убрал за собой запись в /var/run/utmp. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [mdk-re] User remains logged on to pts/0 after exiting X :-( 2001-09-24 21:04 ` Sergey Vlasov @ 2001-09-27 14:30 ` HB 2001-09-27 19:42 ` Sergey Vlasov 0 siblings, 1 reply; 7+ messages in thread From: HB @ 2001-09-27 14:30 UTC (permalink / raw) To: Sergey Vlasov Mon, Sep 24, 2001 at 08:02:56PM +0400, Sergey Vlasov wrote: > > Когда я (пользователь hb) выхожу из KDE, этот выход происходит как-то > > странно, "не до конца". После выхода пользователь hb с терминалом pts/0 > > остается logged on. Это так и должно быть? > > Интересно было бы посмотреть на вывод /usr/sbin/lsof /dev/pts/0 > во время работы KDE COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME cat 7126 hb 0u CHR 136,0 2 /dev/pts/0 cat 7126 hb 1u CHR 136,0 2 /dev/pts/0 cat 7126 hb 2u CHR 136,0 2 /dev/pts/0 > и после выхода (когда остался висящий пользователь), lsof: status error on /dev/pts/0: No such file or directory lsof 4.55 (latest revision at ftp://vic.cc.purdue.edu/pub/tools/unix/lsof) usage: [-?abhlnNoOPRstUvV] [-c c] [+|-d s] [+D D] [+|-f] [-F [f]] [-g [s]] [-i [i]] [+|-L [l]] [+|-M] [-o [o]] [-p s] [+|-r [t]] [-S [t]] [-T [t]] [-u s] [+|-w] [--] [names] Use the ``-h'' option to get more help information. > чтобы выяснить, что за процесс зарегистрировал вход на псевдотерминале, > и остался ли он после завершения работы KDE. К сожалению, я не понимаю/не знаю, как это выяснить. Единственное, что мне пришло в голову, это проверить, остался ли после выхода из KDE процесс с PID 7126 (единственный, к-рый присутствовал в выводе `lsof /dev/pts/0` во время работы KDE (см. 20-ю строками выше). Нет, такого процесса больше нет. > > Кроме того, если перейти на тот терминал, где до этого был KDE, нажав > > Alt-F7, то мы видим пустой черный экран с мигающим на нем курсором (т. е. > > это текстовый режим). Такое ощущение, что там еще "что-то осталось", в > > отличие от других, на самом деле "пустых" терминалов, т. к. при нажатии > > Alt-F8, Alt-F9, ..., Alt-F12 не происходит ничего. > > Так Вы запускаете KDE через startx? Да. > Тогда так и должно быть - X занимает виртуальную консоль под себя, > а после завершения освобождает, но не уничтожает. Для окончательного > уничтожения есть утилита deallocvt Да, я ей воспользовался. Просто `deallocvt` уничтожает tty7. Но меня наличие tty7 и не смущало особо. А вот пользователь-призрак на pts/0 остается, что, все-таки, не очень приятно: по меньшей мере, `w` и `who` начинают "врать". И это при том, что самого терминала /dev/pts/0 после выхода из KDE нет $ who hb tty1 Sep 27 10:56 hb pts/0 Sep 27 12:44 $ ls -Al /dev/pts total 0 > > Что меня особенно удивляет, как может быть пользователь logged on, > > если от его имени не запущено _ни одного_ процесса? > > Возможно, например, кто-то не убрал за собой запись в /var/run/utmp. Я посмотрел на этот /var/run/utmp, там есть строка "pts/0". Похоже, что оттуда, действительно, кто-то не убрал какую-то запись. Но как с этим бороться? Ведь, кроме прочего, я сам (обычный пользователь hb) писать в этот файл не могу, т. к. я не root и не член utmp: -rw-rw-r-- 1 root utmp 4992 Sep 27 13:27 /var/run/utmp -- HB ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [mdk-re] User remains logged on to pts/0 after exiting X :-( 2001-09-27 14:30 ` HB @ 2001-09-27 19:42 ` Sergey Vlasov 2001-09-27 22:14 ` HB 0 siblings, 1 reply; 7+ messages in thread From: Sergey Vlasov @ 2001-09-27 19:42 UTC (permalink / raw) To: mandrake-russian On Thu, 27 Sep 2001 14:09:51 +0400 HB <npecca@yahoo.com> wrote: > Mon, Sep 24, 2001 at 08:02:56PM +0400, Sergey Vlasov wrote: > > > > Когда я (пользователь hb) выхожу из KDE, этот выход происходит как-то > > > странно, "не до конца". После выхода пользователь hb с терминалом pts/0 > > > остается logged on. Это так и должно быть? > > > > Интересно было бы посмотреть на вывод /usr/sbin/lsof /dev/pts/0 > > во время работы KDE > > COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME > cat 7126 hb 0u CHR 136,0 2 /dev/pts/0 > cat 7126 hb 1u CHR 136,0 2 /dev/pts/0 > cat 7126 hb 2u CHR 136,0 2 /dev/pts/0 Похоже вот на это: 4801 ? S 0:01 kdeinit: kwrited 4803 pts/0 S 0:00 \_ /bin/cat kwrited вроде бы отвечает за прием сообщений от команды write. Похоже, в нем есть ошибка - неубирание записи из utmp при выходе. KDE у меня пока старая (из Spring), так что по поводу наличия этой ошибки в новой версии ничего сказать не могу. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [mdk-re] User remains logged on to pts/0 after exiting X :-( 2001-09-27 19:42 ` Sergey Vlasov @ 2001-09-27 22:14 ` HB 0 siblings, 0 replies; 7+ messages in thread From: HB @ 2001-09-27 22:14 UTC (permalink / raw) To: Sergey Vlasov Thu, Sep 27, 2001 at 07:57:46PM +0400, Sergey Vlasov wrote: > > > > Когда я (пользователь hb) выхожу из KDE, этот выход происходит как-то > > > > странно, "не до конца". После выхода пользователь hb с терминалом pts/0 > > > > остается logged on. Это так и должно быть? > > > > > > Интересно было бы посмотреть на вывод /usr/sbin/lsof /dev/pts/0 > > > во время работы KDE > > > > COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME > > cat 7126 hb 0u CHR 136,0 2 /dev/pts/0 > > cat 7126 hb 1u CHR 136,0 2 /dev/pts/0 > > cat 7126 hb 2u CHR 136,0 2 /dev/pts/0 > > Похоже вот на это: > > 4801 ? S 0:01 kdeinit: kwrited > 4803 pts/0 S 0:00 \_ /bin/cat > > kwrited вроде бы отвечает за прием сообщений от команды write. > Похоже, в нем есть ошибка - неубирание записи из utmp при > выходе. KDE у меня пока старая (из Spring), так что по поводу > наличия этой ошибки в новой версии ничего сказать не могу. Благодарю Вас за помощь, Сергей. У меня чистая инсталляция Spring 2001, никаких обновлений. Т. е., по всей видимости, у нас с Вами одинаковые KDE. Возможно ли бороться с этой ошибкой (т. е. каким-то образом "очистить" utmp от мусора, или что-то в таком духе)? -- HB ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2001-09-27 22:14 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2001-09-23 23:08 [mdk-re] User remains logged on to pts/0 after exiting X :-( HB 2001-09-24 14:40 ` Michael Shigorin 2001-09-24 18:20 ` HB 2001-09-24 21:04 ` Sergey Vlasov 2001-09-27 14:30 ` HB 2001-09-27 19:42 ` Sergey Vlasov 2001-09-27 22:14 ` HB
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git