RHEL/Centos 6에서 /var/log/boot.log를 644 권한으로 설정하는 프로그램은 무엇입니까?

RHEL/Centos 6에서 /var/log/boot.log를 644 권한으로 설정하는 프로그램은 무엇입니까?

/var/log루트 사용자 외에는 읽을 수 없도록 모든 파일을 잠그도록 지정되었습니다 . 이 문서 때문에 /var/log/boot.log당황 했어요. 매번 시작할 때마다 파일이 이전 권한 상태와 상관없이 644 권한으로 설정되는 것 같습니다.

/etc/init.d나는 많은 주요 파일과 기능에서 umask를 변경하려고 시도했지만 성공하지 못했습니다.

이 작업을 수행하는 특정 프로그램과 권한을 /var/log/boot.log600으로 설정하는 방법을 아는 사람이 있습니까?

답변1

를 통해 fgrep -r boot.log /usr다음과 같습니다plymouth문제가 발생했습니다. Centos 6의 매뉴얼 페이지는 plymouth약간 부족하지만 소스 코드를 검색하면 어딘가에 no_boot_log전달하여 설정할 수 있는 옵션이 있다는 것을 알 수 있습니다 no-boot-log(Plymouth의 로그가 없다고 가정). 아! 더 파고들면 세 번째 매개변수로만 설정하지 않는 한 호출 에 사용되는 매개변수를 world_readable조정하는 플래그가 있습니다.modeopen(2)

        log_is_opened = ply_logger_open_file (session->logger, filename, true);

슬픈 트롬본. 어쨌든 initrd 이미지를 조정하여 사용자 정의하거나 RedHat에 버그 보고서를 제출하고 a) 소스 코드 탐색이 덜 필요하도록 일부 문서를 작성할 수 있습니다. b) 어떻게든 커널을 통해 해당 모드를 구성하는 옵션을 제공할 수 있습니다. arg 또는 뭔가.

답변2

여기에서 답변을 위해 RHEL 지원에 문의한 후...

RHEL은 Plymouth가 범인임을 확인했습니다.

그들은 솔루션 문서(https://access.redhat.com/site/solutions/66805-- RHEL 구독자만 해당) 소스 코드에 더 엄격한 모드에서 로그를 열거나 생성하기 위한 플래그가 있지만 이 플래그는 외부에서 설정할 수 없으며(즉, 옵션 없음) 누구나 읽을 수 있도록 하드코딩되어 있는지 확인하세요.

RHEL 지원 문서에는 /etc/rc.d/rc.local 스크립트에 대한 chmoding이 내가 원하는 권한을 변경하는 방법이 될 것이라고 나와 있습니다.

정말 나쁘다!

관련 정보