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


18

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

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

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


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

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

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

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


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

Ответы:


13

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


Да, это, вероятно, лучшее, более простое решение.
Дживингс

Я пробовал решения, использующие 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.


Есть ли аргумент, который вы можете передать 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создает пустой файл. Надеюсь, это поможет.


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

Плохая идея. Это создаст проблему с правами доступа для [username], если вы используете учетную запись root с X.
goldilocks

-2

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


1
Это официально осуждается, потому что оно устанавливает вредные привычки, которые приводят к проблемам на многопользовательских машинах. Работает как удовольствие на однопользовательских машинах.
Хильдред
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.