web-dev-qa-db-ja.com

startxの実行後に別のTTYに切り替えてXorgが壊れる

私はそれを試したすべてのマシンで起こるように見えるXorgの特異性に常に興味がありました。 startxを使用して(つまり、ディスプレイマネージャーを使用せずに)TTYで新しいXインスタンスを開始し、別のTTYに切り替えてから、元のTTYに戻ろうとすると、Xのフレームバッファーが壊れて、 Xがまだ実行されている元のシェル。 ^ Cまたは^ Dを押すwill Xを停止しますが、startx/xinitを再度実行して、元のセッションを失う必要があります。つまり:

CTRL+ALT+F1
$ startx /usr/bin/xterm -- :1
CTRL+ALT+F7
CTRL+ALT+F1

TTY1のXバッファーが壊れます。構成にWayland/Mirに依存するアプリケーションは、予想どおりTTY切り替えを処理するようですが、LightDMのようなディスプレイマネージャーで開始されないXを使用するアプリケーションでは、手動で開始したXセッションに戻ることができません本当に痛いです。 TTYを切り替えたときにXセッションに戻ることができるように、この問題を修正する方法はありますか?

8
joshumax

ああ、解決策は実行するのではなく、比較的簡単でした

$ startx /usr/bin/xterm -- :1

ランニング

$ startx /usr/bin/xterm -- :1 vt$(tty | sed -e "s:/dev/tty::")

TTYを切り替えたときにXが壊れないようにします。

2
joshumax