Linux : 로그 회전으로 생성 된 새로 생성 된 로그에 특정 권한을 적용하는 방법은 무엇입니까?


15

나는 생성되고있는 메일 로그 /var/log가 루트 (사용자와 그룹)에 의해 생성되고 소유되고 있음을 알아 차렸다 . 로그를 모니터링하는 Nagios 검사를 작성했으며 Nagios 사용자가 액세스 할 수 있도록 other그룹에 읽기 권한을 부여했습니다.

chmod o+r /var/log/maillog

이제 내가 생각할 때 이것은 하나의 로그 파일입니다. 로그 파일이 채워지면 로그 회전 메커니즘 이이 파일의 이름을 바꾸고 새 파일을 열지 만 새 maillog파일에는 read write내가 허용 한 파일이 없습니다 .

그래서 내 질문은, 로그 회전 메커니즘이 Nagios 사용자에게 올바른 권한을 가진 모든 새 mailllog 파일을 작성하도록하려면 어떻게해야합니까?

미리 감사드립니다

답변:


21

logrotatecreate옵션 이 있습니다 :

create mode owner group

회전 직후 (포스트 로테이트 스크립트가 실행되기 직전에) 로그 파일이 생성됩니다 (방금 회전 한 로그 파일과 동일한 이름으로). mode로그 파일의 모드를 8 진수로 지정하고 (chmod (2)와 동일) owner는 로그 파일을 소유 할 사용자 이름을 지정하고 group은 로그 파일이 속하는 그룹을 지정합니다. 로그 파일 속성은 생략 할 수 있으며,이 경우 새 파일의 속성은 생략 된 속성에 대한 원래 로그 파일과 동일한 값을 사용합니다. nocreate 옵션을 사용하여이 옵션을 비활성화 할 수 있습니다.

에 대한 추가 정보 man logrotate.

다음과 같이 사용하십시오.

/var/log/maillog {
....
        create 664 user group
....
}

하나에서 /etc/logrotate.conf별도의 파일이나 /etc/logrotate.d체크 다른 파일이 이미이를 무시하지 않는 경우. 이것이 구성되는 방법은 OS에 따라 다릅니다 (예 : Ubuntu의 경우 rsyslog구성 에서 처리됨 ).


/var/log/maillog메일 로그에 이미 적용된 기본 설정을 변경하지 않고 원하는 사용자 권한으로 향후 로그 파일 만 작성 하도록 구성하려면 어떻게 해야합니까?
Itai Ganot

내 편집 및 읽기를 참조하십시오 man logrotate(에와보고 /etc/logrotate.conf/etc/logrotate.d예 많은 경우).
Sven

2
@ItaiGanot 또한 초기 chmod를 수행하는 대신 적절한 권한으로 파일을 작성하도록 syslog 구성을 수정해야합니다.
Jenny D

@JennyD, 감사 합니다. 설정을 변경 하려면 /var/log/maillog라인을 제거해야 합니까? /etc/logrotate.d/syslog/etc/logrotate.conf
Itai Ganot

2
@ItaiGanot 아니! 즉, 사용중인 syslog 프로그램 (아마도 syslog-ng또는 rsyslog)을 찾아 구성을 변경해야합니다. 이것은 시스템이 재부팅되거나 다른 이유로 syslog 프로그램이 재시작 될 때 잘못된 권한으로 파일을 다시 작성할 수 있기 때문에 필요합니다.
Jenny D
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.