Я пытаюсь запускать программы под другим пользователем, отличным от того, под которым я вошел в систему. Для тестирования использовал gedit. Когда я набираю sudo -u app_restricted gedit
, я получаю сообщение об ошибке, app_restricted
- это имя пользователя другой учетной записи. У данной учетной записи пользователя ограниченные разрешения.
Сообщение об ошибке:
No protocol specified
(gedit:2139): Gtk-WARNING **: cannot open display: :0.0
Сведения о системе:
Ubuntu 10.10 - Desktop X86-64 с ядром 3.9 (от raring)
PS: Я также пробовал su -u
и gksu -u
, но они тоже не работают.
Проблема, насколько я могу судить, в том, что другому пользователю не разрешен доступ к вашей системе X Window. В противном случае любой пользователь в системе сможет открыть всплывающие окна на вашем рабочем столе. Вероятно, вам придется решить проблему, предоставив соответствующую X-авторизацию через переменную среды XAUTHORITY.
Когда вы запускаете sudo -u app_restricted -l /usr/bin/gedit
, это только означает, что вы перечисляете программы, которые пользователю разрешено запускать. Поскольку вы говорите, о какой программе вы спрашиваете, она только перечисляет эту. Да, пользователю app_restricted разрешено запускать программу ... в этом сеансе X пользователей, но не в сеансе X.