Документ создан: 11.02.2010

Доступ локальных пользователей к локальному X-серверу

В ubuntu (а, возможно, и во всех debian), по-умолчанию, к запущенному X-серверу доступ может иметь только пользователь, запустивший этот экземпляр сервера. В связи с этим возникают проблемы. Например, при установке Oracle, который имеет графический инсталятор, собственно инсталятор запускается от имени пользователя oracle. Но, так как не пользователь "oracle" запустил текущую X-сессию, он и не имеет доступа к X-серверу и инсталяция прерывается с ошибкой.

Решение простое:

  1. Предоставляем пользователю oracle доступ к нашей X-сессии:
    xhost +local:oracle
  2. Проверяем значение переменной DISPLAY:
    echo $DISPLAY

    получаем что-то похожее на:

    $ echo $DISPLAY
    :0
  3. Переключаемся в пользователя "oracle" и проверяем переменную DISPLAY:
    su - oracle
    echo $DISPLAY

    Если вывод отличается от того, что приведено в п.2, значит надо

  4. выставить переменную DISPLAY. Для bash это выглядит так:
    export DISPLAY=:0
  5. И снова проверяем значение переменной DISPLAY:
    echo $DISPLAY

    На этот раз получаем что-то похожее на:

    $ echo $DISPLAY
    :0

Теперь можно запускать установщик Oracle и не только.

 
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki Donate