Bug 9909
Summary: | samba log rotation is wrong | ||
---|---|---|---|
Product: | [Retired] Red Hat Linux | Reporter: | mal |
Component: | samba | Assignee: | Trond Eivind Glomsrxd <teg> |
Status: | CLOSED RAWHIDE | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 6.2 | ||
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2000-03-16 22:19:02 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
mal
2000-03-01 23:20:50 UTC
In addition: The best solution I see is: 1. Tell samba do not rotate logs max log size = 0 2. Tell logrotate to rotate ALL files which satify the pattern /var/log/samba/log.* (logrotate understands file pattern) and add option notifempty to logrotate so old host access logs will not be removed. This is pretty much current samba behavior, but without double rotatation of logs. Fixed in samba-2.0.6-10. I did not check samba-2.0.6-10 but I have few comments in addition to my letter 1. It would be better to to use nocreate option instead of noifempty so dummy empty files will not be created. 2. Does current logroatate version work well with files containining space, & | and etc. symbols? NETBIOS name may have any of these symbols in it, so log file name will also have these symbols. The test with logrotate-3.3-1 (from RedHat 6.1) shows that logrotate DOES NOT understand filenames with space in it. first time status file is created logrotate state -- version 1 /tmp/lrb/f1.txt 2000-3-16 /tmp/lrb/x/ls | cat .log 2000-2-16 where last file "ls | cat .log" has special symbols in it. netxt time I run /usr/sbin/logrotate -s s.stat lr.conf where lr.conf is: /tmp/lrb/x/*.log { daily } logrotate prints error: bad line 3 in state file s.stat So it does not work with spaces in the filename, which can be put there by samba. Also, if logrotate passes the name to a shell it may be a security problem in case of & | " ' ` etc sybmols. The #2 problem is logrotate, not samba related. 3. The default samba log files have a pattern log.hostnameI If you used logrotate pattern /var/log/samba/log.* as I originally suggested (I did not check new package samba-2.0.6-10) this will cause logroatate to do multipple rotation of the same logs. The logrotate status file will be logrotate state -- version 1 /tmp/lrb/f1.txt 2000-2-16 /tmp/lrb/x/GGGG 2000-3-16 /tmp/lrb/x/GGGG.1 2000-3-16 /tmp/lrb/x/GGGG.2 2000-3-16 So my suggestion is to change log file format of samba to hostname.log instead of log.hostname. This will fix the problem of item 3. In addition to item 1 of my previos posting: logrotate options I suggest to samba log rotation are nocreate missingok This will do the right thing for samba logs. |