私はUbuntu Mateを使用しています。
$ echo $DESKTOP_SESSION; cat /etc/issue; uname -a;
mate
Ubuntu 20.04.4 LTS \n \l
Linux mypc 5.4.0-104-generic #118-Ubuntu SMP Wed Mar 2 19:02:41 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
たとえば、gnome-terminal
D-Busがネットワークネームスペースから簡単に起動できないことがわかりました。ip netns execは合致端末とGNOME端末だけを起動できませんか?、名前空間ターミナル/bashセッションでLibreofficeを開こうとしています。
残念ながら、私が走ろうとしたとき
$ loffice
...名前空間bashセッションでは、端末にエラーメッセージがなく、ウィンドウが起動しません。
だから私は見たネットワークネームスペースからD-Busに接続するインストールしましたnetnsの実行- loffice
IPネームスペースセッション内で実行するのに役立つことを願っていますbash
。
MYNS
まず、テストのために端末で実行されている「名前空間」セッション(と呼ばれる)があります。
ホストシェル/セッションまたはネットワークネームスペースシェル/セッションでおよびnetns-exec-dbus
-を使用すると、このコマンドは次のようになります。xeyes
$ netns-exec-dbus MYNS /usr/bin/xeyes
...ウィンドウを起動して正常に動作しているようです。
その後、「ホスト」端末で、およびnetns-exec-dbus
:を使用してgnome-terminal
次のことを試しました。
$ netns-exec-dbus MYNS /usr/bin/gnome-terminal
# Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-aAUQfMZ7a0: Connection refused
これは実際にはウィンドウを起動しますgnome-terminal
が、名前空間ではなくホストを表示しますbash
(したがって、bashは期待どおりに名前空間で実行されません)。gnome-terminal
ipconfig
名前空間で同じコマンドを呼び出そうとすると、次の結果が表示されます。
$ netns-exec-dbus MYNS /usr/bin/gnome-terminal
# Unable to connect to dbus: Could not connect: Connection refused
# Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-aAUQfMZ7a0: Connection refused
# Error constructing proxy for org.gnome.Terminal:/org/gnome/Terminal/Factory0:Could not connect: Connection refused
...ウィンドウは実行されません。
それでは、ホストターミナル/bashセッションでLibreOffice -コマンドを使用して同じことを試してみましょう。
$ echo $DISPLAY
:0
$ netns-exec-dbus MYNS /usr/bin/loffice
/usr/lib/libreoffice/program/soffice.bin X11 error: Can't open display: :0
Set DISPLAY environment variable, use -display option
or check permissions of your X-Server
(See "man X" resp. "man xhost" for details)
...残念ながら実行ウィンドウはありません。
ネットワークネームスペースセッションの同じコマンドbash
:
$ echo $DISPLAY
:0
$ netns-exec-dbus MYNS /usr/bin/loffice
...デフォルトではロックがloffice
始まります。ホスト端末でも次のように報告します。
$ pgrep -fl loffice
7757 netns-exec-dbus
7760 loffice
...しかし、どこにも(エラー)メッセージがなく、ウィンドウがありません。
つまり、loffice
ネットワークネームスペースで実行すること(ウィンドウを表示して実際に使用できる)は、DBus GUIアプリケーションよりもトリッキーに見えますgnome-terminal
。
loffice
それでは、ウィンドウのようにネットワーク名前空間シェルセッションから始めて、プロセスリストのエントリとしてのみ使用するのではなく、使用できるようにするにはどうすればよいですか?
(また関連性があるようです:ネットワークネームスペースからディスプレイにアクセスする)