X11 соединение отклонено из-за неправильной аутентификации

18

Я пытаюсь бежать gpartedна своем Raspberry Pi. После входа в систему ssh -X pi@piи попытки запуска sudo gpartedпоявляется сообщение об ошибке ...

X11 соединение отклонено из-за неправильной аутентификации.

Когда я пытаюсь xauth list, ничего не отображается, это означает, что файл xauth отсутствует. Какой самый простой способ заставить работать X11?


Изменить: я попробовал предложение снизу, но первый шаг уже не удается:

root @ raspberrypi: ~ # список xauth $ DISPLAY

xauth: файл /root/.Xauthority не существует

Как мне сгенерировать этот файл?

Eekhoorn
источник
1
Есть ли на самом деле сеанс X для пересылки удаленного сеанса? Вы не делаете это в замазку ты ?!
Jivings

Ответы:

13

Удобный способ - использовать gksudoкоманду. (Из пакета debian "gksu").

sourcejedi
источник
Да, это, вероятно, лучшее, более простое решение.
Дживингс
Я пробовал решения, использующие xauth и подобные вещи, но это было единственное решение, которое действительно работало для меня!
Hiura
10

Проблема в том, что сеанс X для суперпользователя не знает, что такое cookie.

После входа в систему Pi выполните следующее:

$ xauth list $DISPLAY 

Это печатает печенье, что-то вроде этого:

pi:10 mit-magic-cookie-1 4d22408aga55sad1ccd165723g77923ae

Затем переключите суперпользователя с помощью suи установите cookie:

# xauth add pi:10 mit-magic-cookie-1 4d22408aga55sad1ccd165723g77923ae 

X-forwarding теперь должен работать для root.

Jivings
источник
Есть ли аргумент, который вы можете передать sudo?
Алекс Чемберлен
@AlexChamberlain Не то, что я знаю.
Дживингс
Это не работает, к сожалению. Смотрите мое редактирование в оригинальном сообщении.
Eekhoorn
1
@zenbomb Кажется, вы работали xauth listс правами root, что, конечно, не получается. Вы хотите перечислить файлы cookie для пользователя и добавить их для пользователя root.
XTL
Слияние с xauth намного удобнее, чем список xauth с последующим добавлением xauth.
Джон Уотт,
5

Итак, у меня была такая же ошибка:

xauth: file /root/.Xauthority does not exist

при попытке добавить cookie-файл в корневую учетную запись, используя (пример только)

xauth add pi:10 mit-magic-cookie-1 4d22408aga55sad1ccd165723g77923ae 

Я решил эту проблему, создав /root.Xauthorityфайл (вошел в систему как root):

touch /root/.Xauthority

Команда touchсоздает пустой файл. Надеюсь, это поможет.

nagalman
источник
1

Решение:

1. ssh mitter @ host '

2. $ sudo su

3. # xauth merge /home/mitter/.Xauthority

Настройте переменную $ DISPLAY, если она не настроена.

Миттер Сингх Тхакур
источник
1
что такое миттер?
Стив Робиллард
"mitter" - это его конкретное имя пользователя. Какое имя пользователя вы хотите объединить, зависит от того, какую систему вы используете, и от какого пользователя вы входите в систему как изначально. На Raspberry Pi имя пользователя по умолчанию - «пи». Во многих установках Ubuntu имя пользователя по умолчанию - «Ubuntu».
Джон Уотт
-1

я исправил это с помощью символической ссылки:

ln -s /home/[my username]/.Xauthority /root/.Xauthority
Pfuscher
источник
Плохая идея. Это создаст проблему с правами доступа для [username], если вы используете учетную запись root с X.
goldilocks
-2

я просто скопировал .Xauthority из / home / user в / root

Стив Саммерс
источник
1
Это официально осуждается, потому что оно устанавливает вредные привычки, которые приводят к проблемам на многопользовательских машинах. Работает как удовольствие на однопользовательских машинах.
Хильдред