Добрый день! При обновлении самбы до 4.5.0 вылезли три ошибки - не стартуют сервисы spoolss winreg и srvsvc.Раньше запускались в dcerpc endpoint servers. Так вроде файлопомойка работает, группы и политики тоже, но вопрос остался :-) В принципе все эти три сервиса по-умолчанию не включены уже сто лет в обед, но в нашем конфиге присутствовали параметры в конфиге выглядят так: # dcerpc endpoint servers = epmapper, wkssvc, rpcecho, samr, netlogon, lsarpc, spoolss, drsuapi, dssetup, unixinfo, browser, eventlog6, backupkey, dnsserver, winreg, srvsvc dcerpc endpoint servers = epmapper, wkssvc, rpcecho, samr, netlogon, lsarpc, drsuapi, dssetup, unixinfo, browser, eventlog6, backupkey, dnsserver Верхняя строчка содержит то, что выпилили походу...
Я так понял, что проблема возникает с подключением сетевых принтеров. Давайте уточним как вы определяете, что сервисы не запущены и как это выглядит в виде юзкейса для проверки. Пока я проверю как это выглядит со стороны изменений в коде новой версии Samba.
Когда самба стартует нормально (до обновления до 4.5.0): [2016/10/07 23:53:00.809565, 0] ../source4/smbd/server.c:373(binary_smbd_main) samba version 4.4.5 started. Copyright Andrew Tridgell and the Samba Team 1992-2016 [2016/10/07 23:53:01.107104, 0] ../source4/smbd/server.c:485(binary_smbd_main) samba: using 'standard' process model [2016/10/07 23:53:01.122033, 0] ../lib/util/become_daemon.c:124(daemon_ready) Это уже после обновления, попытка старта: [2016/10/08 00:16:40.000230, 0] ../source4/smbd/server.c:372(binary_smbd_main) samba version 4.5.0 started. Copyright Andrew Tridgell and the Samba Team 1992-2016 [2016/10/08 00:16:40.139609, 0] ../source4/smbd/server.c:479(binary_smbd_main) samba: using 'standard' process model [2016/10/08 00:16:40.141857, 0] ../source4/rpc_server/dcerpc_server.c:1672(dcesrv_init_context) dcesrv_init_context: failed to find endpoint server = 'spoolss' [2016/10/08 00:16:40.141908, 0] ../source4/smbd/service_task.c:35(task_server_terminate) task_server_terminate: [Failed to startup dcerpc server task] [2016/10/08 00:16:40.142910, 0] ../source4/smbd/server.c:211(samba_terminate) samba_terminate of 10523: Failed to startup dcerpc server task [2016/10/08 00:16:40.165347, 0] ../lib/util/become_daemon.c:124(daemon_ready) STATUS=daemon 'samba' finished starting up and ready to serve connections Ключевая строчка: [2016/10/08 00:16:40.141857, 0] ../source4/rpc_server/dcerpc_server.c:1672(dcesrv_init_context) dcesrv_init_context: failed to find endpoint server = 'spoolss' Ну и так как [Failed to startup dcerpc server task] - все службы которые завязаны на dcerpc - не работают.
[2016/10/08 09:49:58.495794, 0] ../source4/smbd/server.c:372(binary_smbd_main) samba version 4.5.0 started. Copyright Andrew Tridgell and the Samba Team 1992-2016 [2016/10/08 09:49:58.757397, 0] ../source4/smbd/server.c:479(binary_smbd_main) samba: using 'standard' process model [2016/10/08 09:49:58.788879, 0] ../lib/util/become_daemon.c:124(daemon_ready) STATUS=daemon 'samba' finished starting up and ready to serve connections [2016/10/08 09:49:58.839876, 0] ../source4/rpc_server/dcerpc_server.c:1672(dcesrv_init_context) dcesrv_init_context: failed to find endpoint server = 'winreg' [2016/10/08 09:49:58.840011, 0] ../source4/smbd/service_task.c:35(task_server_terminate) task_server_terminate: [Failed to startup dcerpc server task] [2016/10/08 09:49:58.854195, 0] ../source4/smbd/server.c:211(samba_terminate) samba_terminate of 13491: Failed to startup dcerpc server task Если убрать spoolss из конфига то дальше ругается на wireg [2016/10/08 09:50:42.414070, 0] ../source4/smbd/server.c:372(binary_smbd_main) samba version 4.5.0 started. Copyright Andrew Tridgell and the Samba Team 1992-2016 [2016/10/08 09:50:42.588236, 0] ../source4/smbd/server.c:479(binary_smbd_main) samba: using 'standard' process model [2016/10/08 09:50:42.590800, 0] ../source4/rpc_server/dcerpc_server.c:1672(dcesrv_init_context) dcesrv_init_context: failed to find endpoint server = 'srvsvc' [2016/10/08 09:50:42.590869, 0] ../source4/smbd/service_task.c:35(task_server_terminate) task_server_terminate: [Failed to startup dcerpc server task] [2016/10/08 09:50:42.591926, 0] ../source4/smbd/server.c:211(samba_terminate) samba_terminate of 13595: Failed to startup dcerpc server task [2016/10/08 09:50:42.618582, 0] ../lib/util/become_daemon.c:124(daemon_ready) STATUS=daemon 'samba' finished starting up and ready to serve connections Если убрать winreg, то будет ругаться на srvsvc Ну а если и srvsvc убрать, то все хорошо [2016/10/08 09:51:05.586470, 0] ../source4/smbd/server.c:372(binary_smbd_main) samba version 4.5.0 started. Copyright Andrew Tridgell and the Samba Team 1992-2016 [2016/10/08 09:51:05.762318, 0] ../source4/smbd/server.c:479(binary_smbd_main) samba: using 'standard' process model [2016/10/08 09:51:05.787789, 0] ../lib/util/become_daemon.c:124(daemon_ready) STATUS=daemon 'samba' finished starting up and ready to serve connections Вот как-то так
В общем, я разобрался в причинах проблемы. Дело в том, что в новой Samba отключен устаревший ntvfs, от которого зависят эти сервисы. Вопрос. Они нужны? Для печати, например? Если да, то я проверю, отпишусь и сделаю новую сборку. У меня там макрос предусмотрен.
(В ответ на комментарий №4) > В общем, я разобрался в причинах проблемы. Дело в том, что в новой Samba > отключен устаревший ntvfs, от которого зависят эти сервисы. > Вопрос. Они нужны? Для печати, например? Предлагаю этот вопрос задать в devel@ и samba@, возможно в sisyphus@. Если на выходных не поступит возражений/предложений, то мейнтейнер решает сам в понедельник. > > Если да, то я проверю, отпишусь и сделаю новую сборку. У меня там макрос > предусмотрен. Спасибо.
Если без этих сервисов не работает печать, то конечно нужны.
Тут два момента. Я не уверен, что не работает. Там ряд устаревших протоколов. Ну, и тут речь идет о контроллере домена, а не о файловом менеджере, который шарит принтеры. Вопрос такой. Это просто логи не красивые со старыми конфигами или тут реальная проблема на практике? Ну, может вообще не в принтерах дело. Нужно понять - имеется ли не рабочий юзкейс? Актуален вопрос для samba, а не для samba-DC? Я уточню подробности о поддержке устаревших протоколов.
Вопрос был больше теоретический. С исключёнными из конфига тремя службами (spoolss winreg и srvsvc) все запускается и работает нормально, авторизация на машинах в домене (Windows 2008 R2) работает без проблем. Файловая служба самбы тоже работает. Самба используется как samba-DC + файловая служба, службу принтеров не используем. Поэтому и проверить что с принтерами нет проблем не сможем. Без исключения трех служб не стартует dcerpc и соответственно не работает вход на машинах Windows которые в домене (ругань на недоступный РПЦ сервер).
Я попытался детально разобрать проблему. У меня нет окончательной уверенности в том, что в наших решениях нужно обязательно выпилить использование старых протоколов ntvfs. Но я отталкиваюсь от того, что от них отказываются разработчики в пользу s3fs. Чем меньше устаревшей кодовой базы идёт в продакшн, тем лучше. Особенно, если она не используется. Подробности и детали на этот счёт предлагаю обсудить в рассылке: https://lists.altlinux.org/pipermail/devel/2016-October/201912.html Кроме того, стоит учесть, что вариант сборки с опцией --without-ad-dc, со старой кодовой базой, у нас имеется в пакете samba. --without-ad-dc - disable AD DC functionality (enables Samba 4 client and Samba 3 code base). --with-ntvfs-fileserver - enable the depricated NTVFS file server from the original Samba4 branch (default if --enable-selftest specicifed). Conflicts with --with-system-mitkrb5 and --without-ad-dc --without-ntvfs-fileserver - disable the depricated NTVFS file server from the original Samba4 branch