Como descobrir o terminal virtual linux atualmente ativo enquanto conectado via ssh?

6

A situação é a seguinte.

Eu tenho uma máquina desktop multiusuário com o Debian Linux 6.0 e uma placa de vídeo ATI com um monitor conectado. Eu tenho acesso root a ele. Pode haver várias sessões do KDE iniciadas, como esta:

$ w
 21:51:30 up ? days,  4:22,  ? users,  load average: 1.72, 1.68, 1.67
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
u1       pts/0    :0               Sat18    4days  0.00s 11.68s kdeinit4: kded4 [kdeinit]                      
u2       pts/5    :1               Mon17    2days  0.00s  6.65s kdeinit4: kded4 [kdeinit]                      

Então, dois terminais virtuais estão em uso, tty7 e tty8:

$ ps aux|grep /usr/bin/[X]
root      2944  3.1 12.4 670040 1019904 tty7   Ss+  Aug27 187:52 /usr/bin/X :0 vt7 -br -nolisten tcp -auth /var/run/xauth/A:0-??????
root      5507  0.9  3.7 425136 309676 tty8    Ss+  Aug29  29:38 /usr/bin/X :1 vt8 -br -nolisten tcp -auth /var/run/xauth/A:1-??????

Mas é claro que apenas um deles está ativo a qualquer momento, ou seja, exibido no monitor. Alguém sentado no teclado pode alternar entre eles usando Ctrl + Alt + F [78]

Então, conecto via ssh de um host remoto. Preciso saber qual X DISPLAY está ativo agora. É possível? Eu pesquisei em todo o lugar e não consigo encontrar a resposta.

    
por vadipp 31.08.2011 / 17:04

2 respostas

7

fgconsole é o que você está procurando

link

    
por 31.08.2011 / 19:49
11

Alternativamente, se você não quiser usar sudo para descobrir qual é o% atual tty , você pode usar o sysfs entry específico do Linux:

$ cat /sys/class/tty/tty0/active
tty8
    
por 14.03.2015 / 18:49