изменить местоположение $ HOME / .Xauthority

Возможно ли изменить местоположение .Xauthority , на что-то другое, кроме $HOME/.Xauthority ? AFAIU, этот файл создается каждый раз, когда я вхожу в LXDE , мой менеджер входа в систему slim .

Проблема, которую я испытываю, заключается в следующем:

Я хочу, чтобы мой дом был «неизменным», используя расширенные атрибуты:

 chattr +i /home/martin/ 

Таким образом, ни одно приложение не может сохранять свои файлы непосредственно в /home/martin/ , но они все равно могут сохранять файлы в каталогах, расположенных на более низких уровнях моего дома, то есть /home/martin/.config/ .

На данный момент, когда я устанавливаю свой дом в неизменное, я не могу войти в LXDE потому что менеджер входа ( slim ) не может создать /home/martin/.Xauthority . Это происходит, даже если существует старая .Xauthority . Менеджер входа в систему мог бы просто перезаписать старый файл новыми данными, но, видимо, это не то, что он делает. Он создает новый файл и удаляет старый. Это запрещено, если / home / martin неизменен (перезапись существующего файла будет разрешена).

Поэтому я хотел бы хранить .Xauthority где-то в другом месте, например .config/.Xauthority . Это возможно?

Я знаю, что xauth принимает параметр -f где может быть указан путь к файлу.

ОБНОВИТЬ:

глядя на исходный код slim, я думаю, что, возможно, нашел место, где .Xauthority удаляется и создается.

 string xauthority = pw->pw_dir; xauthority.append("/.Xauthority"); ... /* reinitialize auth file */ authfile = cfg->getOption("authfile"); remove(authfile.c_str()); putenv(StrConcat("XAUTHORITY=", authfile.c_str())); Util::add_mcookie(mcookie, ":0", cfg->getOption("xauth_path"), authfile); 

Как я могу изменить исходный код, чтобы файл был перезаписан, а не удален / создан?

One Solution collect form web for “изменить местоположение $ HOME / .Xauthority”

Расположение файла cookie X можно настроить с помощью переменной среды XAUTHORITY . По умолчанию используется ~/.Xauthority .

Конечно, местоположение, которое вы передаете приложениям, должно соответствовать местоположению, в котором хранится файл cookie. SLiM не предлагает способ добавления файла cookie в другой файл: он имеет ~/.Xauthority жестко закодированный. Если вы хотите использовать другой файл, используйте патч SLiM или используйте диспетчер дисплеев, который имеет этот вариант конфигурации. Например, Gdm хранит X файлов cookie в /var/run/gdm .

Я думаю, вы можете сделать .Xauthority символической ссылкой, если вы не хотите, чтобы изменяемый файл находился в вашем домашнем каталоге.

Непрерывность вашего домашнего каталога – это бесполезное упражнение . Вероятно, вы столкнетесь со многими другими подобными проблемами. Стандартным местом для файлов конфигурации и файлов состояний является ваш домашний каталог – вот где dot-файлы получают свое имя, потому что они начинаются с . так что ls не будет перечислять их по умолчанию.

  • «Su» с ошибкой «Соединение X11 отклонено из-за неправильной аутентификации»
  • .Характивный файл пуст
  • GUI работает без определения $ XAUTHORITY, но не для root
  • Как устранить неисправную переадресацию X11 с помощью ssh?
  • Пересылка X-окон через су-сессию
  • Должен ли я беспокоиться об ошибке xauth: /home/user/.serverauth.535 не существует?
  • «Недопустимый ключ MIT-MAGIC-COOKIE-1» при попытке запуска программы удаленно
  • Как создать новый Xauthority без дома?
  • Как получить доступ к отображению X из задания cron при использовании gdm3?
  • вручную перенаправлять X-выход через ssh
  • $ HOME readonly: / usr / bin / xauth: тайм-аут в файле блокировки /home/fooftp/.Xauthority
  • Interesting Posts
    Linux и Unix - лучшая ОС в мире.