質問: 別のユーザーセッションで新しいターミナルウィンドウを開く ubuntuデスクトップで、(rootとしてログに記録された)gnome-terminalを呼び出して、他のユーザーセッション内でターミナルウィンドウを開き、いくつかのコマンド/スクリプトを実行するにはどうすればよいですか?.目的は、他のユーザー端末で高負荷のプロセスを開き、それを開いたままにして、ユーザーとの対話を提供できるようにすることです。「exportdisplay」メソッドは私には機能しませんでした。これを解決する別の方法はありますか?
回答: displayとxauthorityの両方を設定してみてください。所有者の.xauthorityファイルに対する権限があり、所有者が使用するディスプレイを知っている必要があります。export display=':0' export xauthority=/home/<owner_of_display>/.xauthority :0を変更して修正しますが、ユーザーが1人だけの場合は通常0です。ルートアクセス権がある場合、これは機能するはずです:root@host:~# sudo su - <username> username@host:~$ export display=':0' username@host:~$ export xauthority=$home/.xauthority username@host:~$ gnome-terminal -x sh -c '<command>; exec bash' 最後の行は、新しいgnome-terminalを起動し、必要なコマンドを実行することについてです。私にはいくつかの新しいことがあったので、それほど単純には機能しないかもしれません。