.Xauthority
의 위치를 , 이외의 위치 로 변경할 수 있습니까 $HOME/.Xauthority
? AFAIU, LXDE
내 로그인 관리자는 로그인할 때마다 이 파일을 생성합니다 slim
.
제가 겪은 문제는 다음과 같습니다.
확장 속성을 사용하여 집을 "불변"으로 만들고 싶습니다.
chattr +i /home/martin/
이렇게 하면 어떤 응용 프로그램도 에 직접 파일을 저장할 수 없지만 /home/martin/
집에 있는 더 낮은 수준의 디렉터리(예: /home/martin/.config/
.
LXDE
현재 홈을 불변으로 설정하면 로그인 관리자( ) 가 slim
생성되지 않아 로그인이 되지 않습니다 . 로그인 관리자는 이전 파일을 새 데이터로 덮어쓸 수 있지만 실제로는 그렇지 않습니다. 새 파일을 생성하고 기존 파일을 삭제합니다. /home/martin이 변경 불가능한 경우에는 허용되지 않습니다(기존 파일 덮어쓰기가 허용됨)./home/martin/.Xauthority
.Xauthority
.Xauthority
따라서 다른 곳에 저장하고 싶습니다 .config/.Xauthority
. 예를 들어 이것이 가능합니까?
xauth
파일 경로를 지정할 수 있는 매개변수가 필요하다는 것을 알고 있습니다 .-f
고쳐 쓰다:
.Xauthority
slim의 소스 코드를 보면 그것이 제거되고 다시 생성된 위치를 찾은 것 같습니다.
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);
파일을 삭제/생성하지 않고 덮어쓰도록 소스 코드를 어떻게 변경합니까?
답변1
X 쿠키 파일의 위치는 XAUTHORITY
환경 변수를 사용하여 구성할 수 있습니다. 기본값은 입니다 ~/.Xauthority
.
물론 애플리케이션에 전달하는 위치는 쿠키가 저장된 위치와 일치해야 합니다. SLiM은 다른 파일에 쿠키를 추가하는 방법을 제공하지 않습니다. 이는 ~/.Xauthority
하드 코딩되어 있습니다. 다른 파일을 사용하려면 SLiM을 패치하거나 이 구성 옵션이 있는 디스플레이 관리자를 사용하세요. 예를 들어 Gdm은 X 쿠키를 /var/run/gdm
.
.Xauthority
수정 가능한 파일을 홈 디렉토리에 두지 않으려면 심볼릭 링크를 만들 수 있습니다.
홈 디렉토리를 불변으로 만드는 것은쓸데없는 운동. 다른 유사한 질문이 많이 발생할 수 있습니다. 구성 및 상태 파일의 표준 위치는 홈 디렉터리입니다. 여기서 도트 파일의 이름이 지정되고 a로 시작하므로 .
기본적 ls
으로 나열되지 않습니다 .