Como mudar para o terminal virtual executando o X11 como subprocesso do shell de login?

2

Eu lembro de trocar entre TTYs no Ubuntu Linux e ser capaz de alternar entre uma sessão X ativa (Unity / KDE / XFCE) e um terminal em outra coisa TTY / console virtual numerado. Eu esperava que a mesma coisa funcionasse no Slackware Linux, mas não parece e estou tentando descobrir o porquê.

Estou executando o Slackware 14.2 em um ThinkPad. O KDE é o meu ambiente de trabalho padrão (aquele iniciado por startx ).

Se eu iniciar uma sessão X por meio de startx em TTY1 (o padrão), alterne para TTY2 por meio de Ctrl Alt F2 e, em seguida, retorne com Alt F1 (ou Ctrl Alt F1 ), não vejo minha sessão X , Vejo a sessão de shell em que corri startx . Eu posso interagir com o processo X e suspendê-lo, interrompê-lo ou eliminá-lo, mas não posso "dar o controle do meu monitor" novamente depois de sair do TTY1 inicialmente.

Eu tentei executar exec startx do meu shell de login em vez de apenas startx , mas ainda não vejo minha sessão X ao voltar para o TTY1.

Além do fato de eu ter trocado entre uma GUI e um console no Ubuntu antes de usar Ctrl Alt F{1,2,3,4,5,6,7} , esta pergunta sugere que deve ser possível alternar entre um console virtual contendo uma sessão X e um sem um Sessão X nele:

Como alternar entre a sessão tty e xorg

Trecho retirado de uma das respostas:

Because X is running on tty1, but not on tty2. A tty is a "virtual terminal", meaning it is supposed to represent an actual physical screen and keyboard, etc. The terminals are all on simultaneously, but since you only have enough hardware to interface with one at a time, that's what you get.

Isso sugere que o X realmente roda "on" em um console virtual, mas não sei exatamente o que isso significa.

    
por Gregory Nisbet 25.11.2016 / 06:26

1 resposta

4

X ocupa um novo espaço nas estruturas de dados do kernel que são usadas para os consoles virtuais, exatamente pelo motivo de permitir que Ctrl Alt Número alterne entre os consoles e o X sessão.

Este console virtual não é o console do qual você iniciou o X, mas um diferente. Geralmente é passado como um argumento na forma de vt1 , vt2 etc. para o servidor X. Portanto, se você fizer algo como ps axu | grep X , será possível ver em qual console virtual a sessão X é executada.

Em muitas distribuições, este é o console virtual 7 (e não 1), portanto, você precisará usar Ctrl Alt 7 para alternar para ele. Eu não tenho certeza do que o Slackware usa como padrão atual, no entanto.

    
por 25.11.2016 / 07:14