Как я могу настроить `anybody` для запуска X в одной строке?

9

Распространенным решением является запуск, sudo dpkg-reconfigure x11-commonкоторый дает графическое приглашение, однако я хочу использовать это не в интерактивном режиме.

Сценарий состоит в том, что я SSH подключился к компьютеру как root (во время подготовки Vagrant) и мне нужно startxодин раз запустить его как обычный пользователь, чтобы сгенерировать некоторые файлы конфигурации, прежде чем перейти к последующим шагам.

Я полагаю, что причина, по которой я не могу просто su otheruser startx, связана с тем, что Xauthority / me был подключен через SSH как другой пользователь ...

ljs.dev
источник

Ответы:

7

Решение, которое я нашел, состояло в следующем:

sudo sed -i \
    's/allowed_users=console/allowed_users=anybody/' /etc/X11/Xwrapper.config

Обратите внимание , что в вашей ситуации это consoleможет быть rootи другое, в зависимости от вашей конкретной начальной конфигурации *

ljs.dev
источник
2
убедить X отказаться от привилегий root - довольно новая функция ( xorg 1.16.0iirc). Подробности можно найти в man Xorg.wrap.
Себастьян
1
В debian может присутствовать файл конфигурации «Xwrapper.config», а пакет xserver-xorg-legacy не установлен. В этом случае это не имеет никакого эффекта, поэтому проблемы сохраняются после изменения конфигурации.
imsodin