Когда xauth
обновляет файл .Xauthority
, он первоначально записывает новую его версию как .Xauthority-n
. Как только файл будет полностью записан, он будет перемещен/переименован в .Xauthority
, что приведет к одновременному удалению старой версии файла.
Это основано на том факте, что операции переименования/перемещения в пределах одной файловой системы, совместимой с POSIX -, должны быть атомарными:операция не может быть остановлена наполовину -пути, но либо она завершится успешно или старый файл останется без изменений.
Если команда xauth
обнаруживает, что файл .Xauthority-n
уже существует, она предполагает, что другой экземпляр команды xauth
уже вносит некоторые изменения, и отказывается что-либо делать. Таким образом, это также защищает файл от повреждения, вызванного несколькими экземплярами xauth
, запущенными одновременно с одним и тем же пользователем.
Тот факт, что файл .Xauthority-n
остается в вашем домашнем каталоге, предполагает, что более ранняя копия xauth
была завершена в середине операции -до того, как по какой-то причине удалось выполнить операцию переименования/перемещения.
Вы должны выйти из X GUI, затем войти удаленно или с помощью текстовой -виртуальной консоли, а затем удалить как .Xauthority
, так и.Xauthority-n
. После этого вход в систему с графическим интерфейсом должен работать нормально, если только у вас нет другой проблемы, которая не позволяет системе создать/перезаписать файл .Xauthority
в вашем домашнем каталоге.