kvardask123 Гость
|
Добавлено: Пт Авг 08 2003 13:17 Заголовок сообщения: samba + perl (activeperl) errorlevel + "отказано в доступе" в батничке на шаре... |
|
|
имеем: файл-сервер под самбой, 100+ пользователей, батничек на шаре в котором кроме всего прочего запускаются скрипты (перл), т.к. клиенты под виндой - используем activeperl - www.activestate.com
из этого батничка запускатся программа, которая не может работать в многопользовательском режиме, чтобы с ней ничего не случилось создается флажек в батничке и если он есть батничек вываливается. результату работы продвинутой программы обрабатываются перл-скриптами.
конфиг: oplocks = Yes level2 oplocks = Yes экспериментировал: # veto oplock files = /*.bat/ # strict locking = Yes # oplock break wait time = 10 # locking = No
проблема: если кто-то (1) по сетке обратился к батнику и запустил его когда кто-то другой (2) работает с ним имеем. 1й вылетает с ошибкой, что кто-то уже использует (всё ок) 2й после выхода из продвинутой программы получает ошибку "отказано в доступе" пример: Отказано в доступе - R:\BASES\BEL~BV\BASE\USER_WIN.BAT в момент запуска перл-скрипта пример строчки: perl r:\utils\perl\makeidx.pl следующее, что делает система - повторно отрабатывает работающую строчку в батнике(!) вообщем бред.
написал программу на паскале, которая далает всё также, как и в этом батничке (через exec) - удалось выяснить: 1. перл всё-же стартует 2. скрипт не запускается (отказано в доступе) 3. errorlevel = 13 т.о. ударось выяснить, что отказывает в доступе на файлик со скриптом.
вообщем как такое может быть при locking=No я не представляю. Может параметр locking монна менять только через перезапуск самбы?
версии activeperl у всех разные.
вообще perl errorlevel не трогает т.к. он должен скриптом меняться например exit(123) |
|