저는 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는 메이트 터미널과 그놈 터미널만 시작할 수 없습니까?, 네임스페이스 터미널/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
그렇다면 창처럼 네트워크 네임스페이스 셸 세션에서 시작하여 프로세스 목록의 항목으로만 사용하는 것이 아니라 사용할 수 있도록 하려면 어떻게 해야 합니까 ?
(또한 관련성이 있는 것 같습니다:네트워크 네임스페이스에서 디스플레이에 액세스)