LINUX.ORG.RU
ФорумTalks

Есть ли способ из под root-а запустить от имени пользователя терминал?

 , ,


1

2

Необходимо от root-а запустить терминал для любого активного пользователя. Тоесть сидит пользователь и тут на экране открывается терминал с командой. Вся суть в том, чтоб был виден терминал, ибо от пользователя ожидается ввод данных.
Пойдет любой костыль какой только возможно.

★★

Для запускаемой программы терминала нужно установить переменные окружения $DISPLAY (видно по who) и $XAUTHORITY (обычно /home/$USER/.Xauthority). Ещё желательно отсоединить запускаемую программу от терминала такой конструкцией: (command.sh &)

om-nom-nimouse ★★
()

По идее вопрос технический.

А терминал запускается через su например, только ещё переменную DISPLAY надо указать или ключ -display (точное название ключа зависит от терминала)

Хотя если тебе нужно чтоб терминал был рутовый, то su не нужен. Только переменная display. Возможно понадобится ещё xhost +local: чтоб разрешить другим юзерам запускать приложения в тех же иксах, но вроде рут и так может.

Xenius ★★★★★
()
Ответ на: комментарий от x3al

Для запускаемой программы терминала нужно установить переменные окружения $DISPLAY (видно по who) и $XAUTHORITY (обычно /home/$USER/.Xauthority). Ещё желательно отсоединить запускаемую программу от терминала такой конструкцией: (command.sh &)

А терминал запускается через su например, только ещё переменную DISPLAY надо указать или ключ -display (точное название ключа зависит от терминала)

Укажи DISPLAY и xauth, сделай su -u whoever xdg-terminal -c команда. В чём проблема?

Проблема в том что я не знал про DISPLAY и XAUTHORITY. В результате терминалы ругались и не запускались.
Всем спасибо, щас попробую реализовать.

V1KT0P ★★
() автор топика
10 марта 2014 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.