Запуск программ от имени другого пользователя (в частности кде программ)
Модератор: Bizdelnick
-
Den001
- Сообщения: 666
- ОС: Suse 11
Запуск программ от имени другого пользователя
Суть проблемы такова. Хочу запустить kde программу, например, kmail, от имени другого пользователя в своем логине. Нужно для того, чтобы не перелогиниваться в другого пользователя для проверки почты. sudo -u выдает следующее - ERROR: KUniqueApplication: Can't determine DISPLAY. Aborting.
-
Warderer
- Модератор
- Сообщения: 1056
- Статус: киберпИнгвин на гусеничном ходу
- ОС: Debian unstable
Re: Запуск программ от имени другого пользователя
Задавайте явно переменную $DISPLAY, просто при sudo вы оказываетесь в сеансе другого пользователя, от которого не запущены иксы, и , соответственно, переменная $DISPLAY не определена.
Читаю вслух с выражением маны - $50/ч + стоимость звонка. Настраиваю сервисы за Вас - $100/ч + стоимость выезда и проживания.
И восемь строк матом...(бесплатно)
И восемь строк матом...(бесплатно)
-
rubtsov
- Сообщения: 140
- ОС: Slackware
Re: Запуск программ от имени другого пользователя
user1 - владелец x-сессии, надо запустить X-приложение (xterm) от имени user2
1.Небезопасно:
user1$ xhost +
user2$ DISPLAY=:0 xterm
отключить: user1$ xhost -
2.Безопасно:
user1$ xauth nextract /tmp/xa $DISPLAY; chmod +r /tmp/xa
user2$ xauth nmerge /tmp/xa; DISPLAY=:0 xterm --- выполнять в "чистой" консоле, а не в эмуляторе после команды `su user2`
3. или для kde:
user1$ kdesu -u user2
1.Небезопасно:
user1$ xhost +
user2$ DISPLAY=:0 xterm
отключить: user1$ xhost -
2.Безопасно:
user1$ xauth nextract /tmp/xa $DISPLAY; chmod +r /tmp/xa
user2$ xauth nmerge /tmp/xa; DISPLAY=:0 xterm --- выполнять в "чистой" консоле, а не в эмуляторе после команды `su user2`
3. или для kde:
user1$ kdesu -u user2
-
Den001
- Сообщения: 666
- ОС: Suse 11
Re: Запуск программ от имени другого пользователя
На счет xhost, там можно разрешитть только со своего ip подключаться. Вечером попробую. А можно как-нибудь через login сделать? у меня на login <user2> выдает, что локальные политики не разрешают этого. Или это все равно что через sudo получится?
-
Den001
- Сообщения: 666
- ОС: Suse 11
Re: Запуск программ от имени другого пользователя
rubtsov писал(а): ↑15.01.2007 10:50user1 - владелец x-сессии, надо запустить X-приложение (xterm) от имени user2
1.Небезопасно:
user1$ xhost +
user2$ DISPLAY=:0 xterm
отключить: user1$ xhost -
2.Безопасно:
user1$ xauth nextract /tmp/xa $DISPLAY; chmod +r /tmp/xa
user2$ xauth nmerge /tmp/xa; DISPLAY=:0 xterm --- выполнять в "чистой" консоле, а не в эмуляторе после команды `su user2`
3. или для kde:
user1$ kdesu -u user2
Спасибо, 3-й вариант меня вполне устроит.