Запуск программы под другим пользователем с отображением X-сервера

Запуск программы под другим пользователем с отображением X-сервера

Я хочу иметь возможность запускать (только) программу/несколько программ под тестовым пользователем с именем "test" и в то же время пользоваться графическим интерфейсом программы. Мне это нужно, потому что я хочу иметь возможность сохранять тестовые настройки, не конфликтуя с моими собственными настройками. Пока что я обнаружил, что я могу либо:

  • использую su testдля переключения на пользователя, но тогда я не могу запускать программы с графическим интерфейсом... они жалуются на отсутствие дисплея:

    No protocol specified
    

    ** (gedit:17086): ПРЕДУПРЕЖДЕНИЕ **: Не удалось открыть X display. Не указан протокол.

    (gedit:17086): Gtk-WARNING **: невозможно открыть дисплей: :0

  • используйте dm-tool switch-to-user testдля фактического переключения на этого пользователя

Есть идеи, как запускать программы от имени другого пользователя, не меняя каждый раз пользователей и рабочие столы?

решение1

Я наконец нашел решение, как указано вэтототвечать

Все, что мне нужно было сделать, это запустить следующую команду от имени пользователя root:

xhost si:localuser:test

По-видимому, эта команда позволяет пользователю использовать дисплейный сервер.

Пожалуйста, отредактируйте этот ответ, если вы знаете больше об этой проблеме.

решение2

xhost +localhost

затем su test..

Связанный контент