Дегтярёв Дмитрий пишет: > Геннадий Ищенко пишет: >> >> Имеется одноранговая локальная сеть с Windows и Linux >> машинами вперемешку. С Windows-ПК проблем нет (обмен >> информацией и печать через Samba. Одн из ПК с ALT Desktop >> 4.0.1 в сети не виден. Если перезагрузить Samba, то: >> >> #service smb reload >> Reloading smb.conf file: NetBIOS over TCP/IP server, Samba server >> [FAILED] >> > в такой ситуации не плохобы увидеть вывод: > # service smb status > и > ps ax | grep mb > > Скорее всего не запущен smbd или nmbd. При этом smbd или nmbd не > падают(поэтому в логах пусто), а совершенно нормально завершают > работу. Это происходит из-за ротации логов. > Смотрим скрипт /etc/logrotate.d/samba: > /var/log/samba/log.* { > notifempty > missingok > size=101k > sharedscripts > postrotate > /sbin/service smb condrestart > /dev/null 2>&1 > endscript > } > > Как видно при ротации выполняется /sbin/service smb condrestart > > Смотрим в файле /etc/init.d/smb что делается при condrestart: > condrestart) > if [ -e "$LOCKFILE" ]; then > restart > fi > ;; > выполняется функция restart, смотри её: > restart() > { > stop > start > } > > Выполняется stop, т.е. остановка сервиса, а затем сразу start. При > старте проверяется запущены ли сервисы smbd и nmbd, если запущен, то > его повторный запуск не осуществляется. После выполнения stop не факт, > что smbd или nmbd успели завершиться, затем выполняется start и > сервис, который не успел остановиться, не запускает. start отработал, > а после этого smb или nmb благополучно останавливаются. В результате > получаем, например: > /etc/init.d/smb status > smbd is running > nmbd is stopped > > > До следующей ротации никто его не запустит. > > Решал я данную проблему следующим образом, модифицировал > /etc/logrotate.d/samba: > /var/log/samba/log.* { > notifempty > missingok > size=101k > sharedscripts > postrotate > /sbin/service smb stop > /dev/null 2>&1 > [ ! -f /var/lock/nmbd.pid ] || kill -HUP `cat /var/lock/nmbd.pid` > [ ! -f /var/lock/smbd.pid ] || kill -HUP `cat /var/lock/smbd.pid` > /sbin/service smb start > /dev/null 2>&1 > endscript > } > > > > Не знаю на сколько это правильно, но samba теперь запущена всегда и > работает.. > _______________________________________________ > На самом деле это не правильно, если с самбой работают круглосуточно, то сессия при ротации будет завершаться, что критично сакжем при работе 1С7 c DBF на удалённой ФС. Может кто подскажет более правильно решение???