데비안에 X 로그 파일의 복사본을 보관하세요

데비안에 X 로그 파일의 복사본을 보관하세요

최근에 Nvidia 드라이버를 Nvidia 카드용 Nouveau 드라이버로 교체해 보았습니다(참조:Debian wheezy의 Nvidia 카드용 Nvidia 독점 드라이버에서 Nouveau 드라이버로 전환).

아쉽게도 이 시도는 실패해서 포기했습니다. 그러나 사용자 정의 구성으로 재부팅하고 연기가 사라진 후, 데비안은 X 서버 로그의 복사본만 보관한다는 사실을 발견했습니다. 즉, /var/log/Xorg.0.log불행하게도 새로운 스타일로 전환하려고 시도했지만 로그가 누락되었습니다.

그래서 제 질문은 X 로그 파일의 이전 복사본을 유지하기 위해 데비안 구성을 어떻게 변경합니까?입니다. :

이 로직은 logrotate로 처리하는 것 같은데, 특별한 로직은 없는 것을 알 수 있습니다 /etc/logrotate.conf . /etc/logrotate.d/거기에 뭔가를 추가하는 것 뿐인가요? 그렇다면 왜 아직 존재하지 않는지 궁금합니다.

답변1

X의 로깅 동작은 다음과 같습니다.

  1. 존재하는 경우 /var/log/Xorg.DISPLAY.log이름을 바꾸고 /var/log/Xorg.DISPLAY.log.old존재할 수 있는 모든 파일을 덮어씁니다.
  2. 열고 /var/log/Xorg.DISPLAY.log로그인을 시작하세요.

안타깝게도 모든 오픈 소스 소프트웨어의 경우를 제외하고는 이를 구성할 수 없습니다. 소스 코드를 변경하고 다시 컴파일할 수 있습니다. xserver-xorg소스 패키지 에 있으며 grep이 LogInit올바른 위치를 찾을 수 있습니다.

즉, 오래된 로그를 저장하는 방법을 찾을 수 있습니다. 예를 들어, kdm/etc/kde4/kdm에는 로그인 화면이 표시되기 전에 루트로 실행되는 여러 스크립트가 있습니다. 파일을 savelog저장하는 명령을 추가할 수 있습니다. 비슷한 것이 있어야합니다..oldgdm

dpkg-divert또는 on을 사용 /usr/bin/X하고 거기에 스크립트를 넣어 savelog오래되지 않은 파일을 호출하면 exec는 실제로 X입니다. X를 이동하는 대신 디스플레이 관리자(kdm, gdm)가 X를 실행하는 데 사용하는 경로를 이 스크립트로 변경할 수도 있습니다.

관련 정보