Bug 20167 - delete restart from logrotate script
Summary: delete restart from logrotate script
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: samba (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Evgeny Sinelnikov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on: 9884
Blocks:
  Show dependency tree
 
Reported: 2009-05-25 10:41 MSD by Mike Lykov
Modified: 2010-05-29 01:28 MSD (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Lykov 2009-05-25 10:41:26 MSD
в версии пакета samba-3.0.33-alt1.M40.1

logrotate скрипт содержит такое:

   /var/log/samba/log.* {
    notifempty
    missingok
        size=101k
        sharedscripts
    postrotate
        /sbin/service smb condrestart > /dev/null 2>&1
    endscript
 }

1. service smb condrestart имеет недостатки - например, он разрывает сессии во время рестарта, о чем разговор уже был:
http://lists.altlinux.org/pipermail/samba/2007-September/003440.html

2. в моем случае он странно себя ведет:
во время исполнения logrotate он стопит
May 25 00:25:01 samba smb: CIFS shutdown succeeded

но потом больше не стартует, что приводит к
# service smb status
smbd is running
nmbd is stopped

(nmbd остановился, а smbd стартовым скриптом при condrestart не останавливается).

об этом тоже писали: 
http://lists.altlinux.org/pipermail/samba/2009-March/004203.html

причем предложение из этой ветки использовать kill -HUP тоже не подходит для nmbd : https://bugzilla.redhat.com/show_bug.cgi?id=171536

3. в результате всего этого я согласен с предложением использовать copytruncate опцию для logrotate, как например сделано в fedora.


4. указание size=101k меня смущает - при начальной отладке после установки этот обьем может набраться за несколько минут. может, стоит перейти на обычную схему ротации по времени?
Comment 1 Vladimir V. Kamarzin 2009-05-26 09:13:53 MSD
Ага, я тоже наступил на отваливающуюся по воскресениям samba ;)
Comment 2 Alexander Bokovoy 2009-05-27 08:31:16 MSD
Предложите свой logrotate в виде приложения к этой ошибке.
Comment 3 Mike Lykov 2009-05-27 10:52:09 MSD
предлагаю

   /var/log/samba/log.* {
    notifempty
    missingok
    copytruncate
 }

нашел еще последствие- маска log.* включает так же и log.winbind, убирает у него лог, но сам winbind об этом не знает, поэтому во вновь созданнй лог ничего не пишет.
smb condrestart не трогает сервис winbind.

предлагаемое и это исправить должно.
Comment 4 ReMaks 2009-08-25 23:50:44 MSD
(В ответ на комментарий №3)
> предлагаю
> 
>    /var/log/samba/log.* {
>     notifempty
>     missingok
>     copytruncate
>  }
> 
> нашел еще последствие- маска log.* включает так же и log.winbind, убирает у
> него лог, но сам winbind об этом не знает, поэтому во вновь созданнй лог ничего
> не пишет.
> smb condrestart не трогает сервис winbind.
> 
> предлагаемое и это исправить должно.

может в дефолтный конфиг самбы это "внедрить"?
Comment 5 Alexander Bokovoy 2009-08-26 08:38:16 MSD
Я добавлю. Проблемы сборки на текущем тулчейне я уже поборол, в субботу будет возможность пересобрать.
Comment 6 serpiph 2009-08-30 01:19:29 MSD
Если вспомнить, то к ней примешивается бага #9884.
Comment 7 Vitaly Kuznetsov 2010-05-29 01:28:03 MSD
В samba-3.4.8, попавшей в Сизиф, logrotate не делает condrestart.