LINUX.ORG.RU

Samba 3.6.0

 


0

1

9 августа 2011 года состоялся долгожданный выход версии 3.6.0 файлового и принт-сервера Samba. Смена номера текущей серии в этот раз далась команде разработчиков действительно непросто.
После выхода версии 3.5.0, задержанной на 3 месяца относительно запланированной согласно шестимесячному циклу разработки даты, на конференции SambaXP 2010 команда разработчиков Samba приняла решение о переходе на девятимесячный цикл мажорных релизов, чтобы располагать большим количеством времени для внедрения новых возможностей в следующие продакшн релизы, начиная уже с выпуска 3.6.0, и, конечно, более основательного их тестирования.
Также не скрывалось желание воплотить в реальность шутку Джереми Аллисона (Jeremy Allison):

It takes 9 months to do a Samba release, no matter how many engineers are involved

К сожалению, выпустить 3.6.0 согласно новому девятимесячному плану не удалось: первоначальная дата релиза, 13 января 2011 года, была просрочена и перенесена сначала на 21 июня, а затем на 6 июля.
Но и 6 июля релиз не состоялся из-за двух блокирующих ошибок.
А 7 июля как гром среди ясного неба Фолькер Лендеке (Volker Lendecke) сообщил в рассылке об обнаружении глубокого архитектурного изъяна в коде SMB2-сервера. И это при том, что 3.6.0 был запланирован как первый стабильный выпуск Samba с поддержкой SMB2. Релиз был вновь отложен на неопределённое время, а среди участников рассылки зазвучали предложения выпустить 3.6.0 без поддержки SMB2.

Однако спустя месяц выпустив и оттестировав ещё один, третий по счёту релиз-кандидат, Samba Team устами релиз-менеджера Каролин Зигер (Karolin Seeger) официально объявила о выходе Samba 3.6.0.

Теперь о главных изменениях и нововведениях.

  • Добавлена полнофункциональная поддержка протокола SMB2 диалекта 2.002 за исключением возможности изменения пользовательских квот при помощи инструментов Windows для управления квотами. По умолчанию поддержка протокола SMB2 выключена, чтобы задействовать её, необходимо в разделе [global] конфигурационного файла (smb.conf) установить значение опции max protocol = SMB2.
    Некоторое повышение производительности при использовании протокола SMB2 может быть замечено при загрузке данных с файлового сервера Samba клиентами с ОС Windows Vista, Windows 7 или Windows Server 2008. Но поскольку диалект 2.002 протокола SMB2 не поддерживает мультикредитные запросы, максимальный размер пакета-ответа на запрос клиента будет составлять 64KiB, в то время как файловые сервера с поддержкой протокола SMB2 диалекта 2.10 на базе Windows 7 и Windows Server 2008 благодаря поддержке мультикредитных запросов имеют максимальный размер ответного пакета по умолчанию равный 1MiB, что положительно сказывается при передаче больших файлов.
  • Изменился способ получения информации о локальном пользователе и его группе в Winbind. Вместо вызова функций passdb теперь используются внутренние samr и lsa RPC конвейеры.
  • Значительно переработан код spoolss (диспетчер очереди печати). Кодовая база была модифицирована таким образом, что все вызовы, касающиеся печати, в конечном итоге передаются на RPC интерфейс spoolss. Также изменён способ хранения информации, запрашиваемой клиентами для печати: из TDB-файлов данные перемещены в winreg-файлы, при этом все запросы осуществляются через winreg RPC. Миграция со старого способа хранения данных в TDB файлах может быть осуществлена вручную командой net printer migrate или автоматически при первом запуске на принт-сервере Samba версии 3.6.0, сконфигурированной при сборке с тем же каталогом для кеша, что и предыдущая рабочая версия (параметр --with-cachedir).
  • В очередной раз переработан код отображения идентификаторов пользователей (id mapping). На этот раз произведено разделение кода систем хранения отображений (tdb, tdb2 и ldap бэкенды idmap) и собственно кода, выполняющего отображение. Методы, используемые для хранения и удаления отображений идентификаторов, были изъяты из API winbindd и теперь работают с базами напрямую. Также были удалены ряд опций конфигурационного файла, утративших свой смысл в связи с внесёнными изменениями (idmap uid, idmap gid, idmap range, idmap alloc backend).
  • Добавлена собственная реализация RPC Endpoint Mapper — диспетчера конечных точек RPC.
  • Добавлена новая версия анализатора SMB трафика — SMB Traffic Analyzer (SMBTA) VFS module protocol 2 с поддержкой шифрования, предназначенного для анализа использования ресурсов Samba-сервера VFS-клиентами.
  • Добавлен новый бэкенд для работы с квотами NFS, основанный на существующей в Solaris/FreeBSD реализации. Он позволяет получать правильную информацию о количестве свободного места на смонтированных ресурсах NFS, которые затем были расшарены через Samba.
  • Продолжается реструктуризация кода, призванная обеспечить лучшее разделение подсистем, более быструю сборку, меньший размер бинарников и ликвидировать проблемы с неразрешёнными зависимостями во время сборки при помощи Waf, о которых неоднократно сообщали пользователи в рассылке samba-technical в последнее время.
  • Как и было анонсировано ранее, объявлены устаревшимы, но тем не менее пока ещё поддерживаются опции конфигурационного файла security=share, username, security=server, password level, password server=server:port, use spnego, enable privileges, null passwords. Подробно причины обоснованы Эндрю Бартлетом (Andrew Bartlett) в рассылке и файле WHATSNEW архива с исходными кодами, кратко можно отметить, что большинство из вышеупомянутых опций несовместимы с моделью аутентификации NTLMv2 либо будут удалены в будущих релизах Samba в связи со слиянием кодовой базы Samba3 и Samba4 и унификацией методов аутентификации.
  • Исправление значительного числа ошибок.

В качестве послесловия: несмотря на кажущиеся проблемы, корректирующие выпуски в ветках 3.5.*, 3.4.* и 3.3.* продолжают исправно выходить, так последними стабильными версиями в этих ветках являются 3.5.11 от 4 августа, 3.4.14 и 3.3.16 от 26 июля этого года соответственно. Материалы анонсированной на ЛОРе юбилейной 10-ой международной конференции The Samba eXPerience 2011 уже не первый месяц как доступны для загрузки всем желающим.

Медленно, но верно продолжается разработка Samba4: после выпуска 16-ой alpha специально для команды OpenChange, Эндрю Бартлет (Andrew Bartlett) поделился планами о дальнейшей разработке в рассылке.
По его словам после выпуска 17-ой alpha версии в августе этого года будет составлен план по выпуску релиз-кандидатов мажорного выпуска 4.0.0. Также чуть ранее в рассылке обсуждался набор возможностей, которые будут включены в первый стабильный выпуск четвёртой ветки, и набор каталогов «по умолчанию» для Samba4.

Cтоит упомянуть и о продолжающейся работе по слиянию кодовой базы третьей и четвёртой веток: уже несколько месяцев как сборка осуществляется из каталога верхнего уровня дерева исходных кодов, а не подкаталога source3 как было до этого.

Не стоит на месте работа над четырьмя проектами для Samba в рамках GSOC 2011: поддержка протокола SMB2 в CIFS-модуле ядра Linux, «наведение красоты» в веб-интерфейсе SWAT, разработка Samba Control Center на базе Samba-Gtk для конфигурации Samba4 и поддержка удалённого конфигурирования Samba по RPC.

>>> Исходный код

>>> Анонс в списке рассылки

★★★

Проверено: post-factum ()
Последнее исправление: adriano32 (всего исправлений: 6)

Ответ на: комментарий от anonymous

> Родная реализация криво работает :)

Не смешно. SMB в w7 - феерический п**дец. Даёшь порт smb на шindoшs! Этот безумный, безумный, безумный мир...

nbw ★★★
()

samba-3.6.0 == samba3 ?

anonymous
()
Ответ на: комментарий от nbw

Мой опыт использования NFS и SMB говорит о том, что NFS - отстой. Пришлось отказаться от него в пользу SMB даже в гомогенных (linux) сетях. (Угу, сейчас виндохомячки, косящие под Ъ, начнут кидаться какашками).

А с чем были проблемы, если не секрет? Из того, что я пока что видел - ACL у NFS не совместим с POSIX ACL, который держат все линуксовые ФС. Впрочем, Samba тоже как-то криво с ним работает (если клиент тоже самба), я так и не смог добится чтобы получались права 664 на файлы.

Magister2k7
()
Ответ на: комментарий от nbw

Я не хочу косить под Ъ, но в домашней сети из двух линукс-машин, а также для работы с виртуалками NFS у меня оставила довольно благоприятное впечатление. Основные трудности были разобраться с конфигом (который гораздо проще, чему самбы).

hobbit ★★★★★
()
Ответ на: комментарий от Magister2k7

>При доступе через HTTP драйвер ставится один раз, на CUPS. Больше никуда ничего ставить не нужно.

агащаз.

это в линуксе и макоси ставить не нужно. А в венде на каждого клиента ставить надо.

Для мелких организаций - возможно, для более крупных - нефиг пользователям давать хоть что-то настраивать, иначе зоопарк будет тот ещё.

ну так и не давай. Это политиками безопасности решается.

AVL2 ★★★★★
()
Ответ на: комментарий от AVL2

>При доступе через HTTP драйвер ставится один раз, на CUPS. Больше никуда ничего ставить не нужно.

агащаз.

это в линуксе и макоси ставить не нужно. А в венде на каждого клиента ставить надо.

А я-то не знал, и не ставил. А оно работало.

P.S. Или вы про добавление принтера в список принтеров? Это да, надо, а в сообщении имеется ввиду, что не нужно ставить драйвер конкретного принтера, достаточно стандартного Postscript-драйвера, а дальше CUPS сам всё сделает.

Magister2k7
()
Ответ на: комментарий от Magister2k7

>А я-то не знал, и не ставил. А оно работало.

P.S. Или вы про добавление принтера в список принтеров?

вот здорово. Назвал обычную установку принтера «добавлением принтера в список принтеров» и вуаля, установка больше не требуется.

Не останавливайся на достигнутом! Теперь назови инсталляцию самой венды на компьютер «добавлением венды в список загрузки» и установка венды тоже уйдет в прошлое...

Это да, надо, а в сообщении имеется ввиду, что не нужно ставить драйвер конкретного принтера, достаточно стандартного Postscript-драйвера, а дальше CUPS сам всё сделает.

Да был бы еще этот унивесальный драйвер. А то ведь у каждого косяки. Форматы бумаги урезаны, цветная печать не идет, только черно-белая, контролы принтера не доступны с клиента.

По сранению с печатью из линукса все это один большой геморрой.

AVL2 ★★★★★
()
Ответ на: комментарий от Magister2k7

> А с чем были проблемы, если не секрет?

Нарушение контрольных сумм копируемых файлов на соединениях с потерями пакетов (далёкий wi-fi, например), несмотря на использование TCP; внезапные обрывы. SMB в тех же условиях работал идеально. Также NFS имеет свойство ставить раком систему при обращении к каталогу, содержащему точки монтирования, при потере соединения с сервером. bg и попытки поиграть с опциями/таймаутами не приносили эфеекта. SMB в таких случаях ведёт себя несколько более вменяемо. Скорость же передачи данных в обоих случаях упиралась в производительность сети, так что не вижу тут особой разницы.

nbw ★★★
()
Ответ на: комментарий от Magister2k7

я так и не смог добится чтобы получались права 664 на файлы.

Неужели

create mask = 0664
directory mask = 0775
уже поломали?

nbw ★★★
()
Ответ на: комментарий от nbw

Нарушение контрольных сумм копируемых файлов на соединениях с потерями пакетов (далёкий wi-fi, например), несмотря на использование TCP; внезапные обрывы. SMB в тех же условиях работал идеально. Также NFS имеет свойство ставить раком систему при обращении к каталогу, содержащему точки монтирования, при потере соединения с сервером. bg и попытки поиграть с опциями/таймаутами не приносили эфеекта. SMB в таких случаях ведёт себя несколько более вменяемо. Скорость же передачи данных в обоих случаях упиралась в производительность сети, так что не вижу тут особой разницы.

Хм... интересно. Вот чего-чего, а нарушения контрольных сумм не ожидал... мда... Ну а насчет потери соединения - по моему опыту SMB тоже тупит прилично. Эх, нет идеала (

Magister2k7
()
Ответ на: комментарий от nbw

Неужели create mask = 0664 directory mask = 0775 уже поломали?

Пробовал. Если клиент тоже SAMBA (и unix extensions = on), а на расшаренной ФС включены ACL - самое близкое, что я смог получить для файла - это что-то феерическое типа 0746 (точно уже не помню, но вроде так) - это при параметрах в конфиге, указанных вами. Вся проблема тут в том, что force security mask/mode как-то неправильно отрабатывают, давая клиенту поставить права 644, после чего накладываются наследованные ACL и получается указанный выше бред.

Magister2k7
()
Ответ на: комментарий от AVL2

>А я-то не знал, и не ставил. А оно работало.

>P.S. Или вы про добавление принтера в список принтеров?

вот здорово. Назвал обычную установку принтера «добавлением принтера в список принтеров» и вуаля, установка больше не требуется.

Не останавливайся на достигнутом! Теперь назови инсталляцию самой венды на компьютер «добавлением венды в список загрузки» и установка венды тоже уйдет в прошлое...

Ваш сарказм непонятен. По сравнению с установкой зоопарка драйверов, которые еще и любят наставить своих глючных принтер-статус-мониторов - это да, просто добавление в список.

>Это да, надо, а в сообщении имеется ввиду, что не нужно ставить драйвер конкретного принтера, достаточно стандартного Postscript-драйвера, а дальше CUPS сам всё сделает.

Да был бы еще этот унивесальный драйвер. А то ведь у каждого косяки. Форматы бумаги урезаны, цветная печать не идет, только черно-белая, контролы принтера не доступны с клиента.

Если пользователям нужно просто печатать документы, что в большинстве случаев для офиса является истиной, то для XP мы ставили HP LaserJet 5 PS - это для черно-белой печати. Для цветной подобрать думаю тоже не проблема, если есть необходимость.

По сранению с печатью из линукса все это один большой геморрой.

А никто и не спорит. Но это лучше, чем расшаривание через самбу.

Magister2k7
()
Ответ на: комментарий от ugoday

> Было бы интересно послушать почему.

Было бы интересно - читали бы тред.

nbw ★★★
()
Ответ на: комментарий от Magister2k7

> Если клиент тоже SAMBA (и unix extensions = on), а на расшаренной ФС включены ACL - самое близкое, что я смог получить для файла - это что-то феерическое типа 0746

Признаю, с экспортом файлух с ACL не сталкивался. Но, если вы думаете, что оно себя неправильно ведёт - не лучше было бы спросить на соответствующих форумах? Разрабы и близкие к ним всё-таки лучше знают особенности фунциклирования своего изделия)

nbw ★★★
()
Ответ на: комментарий от Magister2k7

самое близкое, что я смог получить для файла - это что-то феерическое типа 0746 (точно уже не помню, но вроде так) - это при параметрах в конфиге, указанных вами. Вся проблема тут в том, что force security mask/mode как-то неправильно отрабатывают, давая клиенту поставить права 644, после чего накладываются наследованные ACL и получается указанный выше бред.

У меня ещё прикольнее получилось. При «force create mode = 0666» и «force directory mode = 0777» получил на файлах 0466! Чуть мозг не вывихнул, пытаясь понять, как так может быть...

В общем, обошёл проблему с помощью «vfs objects = acl_tdb». Так ещё и бэкапить ACL'ы можно без дополнительных сложностей.

MumiyTroll ★★★
()
Ответ на: комментарий от nbw

>Нарушение контрольных сумм копируемых файлов на соединениях с потерями пакетов (далёкий wi-fi, например), несмотря на использование TCP; внезапные обрывы. SMB в тех же условиях работал идеально. Также NFS имеет свойство ставить раком систему при обращении к каталогу, содержащему точки монтирования, при потере соединения с сервером. bg и попытки поиграть с опциями/таймаутами не приносили эфеекта. SMB в таких случаях ведёт себя несколько более вменяемо. Скорость же передачи данных в обоих случаях упиралась в производительность сети, так что не вижу тут особой разницы.

+1 Я тоже сталкивался с такой проблемой на нестабильных соединениях. Еще один интересный эффект был обнаружен, но так и не вылечен. При копирование файла с клиента на сервер передается первый блок 8кб и все, клиент виснет намертво, лечиться только полной перезагрузкой. При этом копирование с сервера на клиента работает.

anc ★★★★★
()
Ответ на: комментарий от anonymous

Не надо ля-ля. В своё время выход Ubuntu 6.04 сместили на пару месяцев по подобным причинам и она имела номер 6.06 вопреки полугодичной нумерации.

Ну да, ну да. А потом был грандиозный фэйл с 10.10.10, который тащемта и ознаменовал смерть убунты как годного дистрибутива.

Давно уже использую Убунту как кодовую базу, ставьте Минт.

Vudod ★★★★★
()
Ответ на: комментарий от Magister2k7

>Ваш сарказм непонятен.

Сарказм проистекает из того, что процедура установки принтера в любой случае остается процедурой установки принтера. Даже если драйвер один на всех.

Вот в линуксе и макоси установка принтера на клиентах не нужна. Они броадкастом проявляются и печатай на здоровье.

По сравнению с установкой зоопарка драйверов, которые еще и любят наставить своих глючных принтер-статус-мониторов - это да, просто добавление в список.

ну это актуально для струйников.

Если пользователям нужно просто печатать документы, что в большинстве случаев для офиса является истиной, то для XP мы ставили HP LaserJet 5 PS - это для черно-белой печати. Для цветной подобрать думаю тоже не проблема, если есть необходимость.

Лучше ставить hp universal. Работает с минимумом нареканий для черно-белой и цветной печати.

А никто и не спорит. Но это лучше, чем расшаривание через самбу.

Я тоже предпочитаю напрямую раздавать принтеры просто из соображений минимизации ошибок и сбоев. А так, разница небольшая. Самба сразу отдает задания на cups.

AVL2 ★★★★★
()
Ответ на: комментарий от anc

> Еще один интересный эффект был обнаружен, но так и не вылечен. При копирование файла с клиента на сервер передается первый блок 8кб и все, клиент виснет намертво, лечиться только полной перезагрузкой. При этом копирование с сервера на клиента работает.

У меня такое было при раздаче NFS-шары через шейпаный интерфейс. В обратную сторону всё работало нормально, ибо (очевидно) htb в классическом варианте работает только на выходе. При этом SMB работал нормально (правда, очень медленно)))).

nbw ★★★
()
Ответ на: комментарий от nbw

Ну конечно, вис не клиент, а лишь только соединение.

//fix

nbw ★★★
()
Ответ на: комментарий от Vudod

Как я вас понимаю. Мне все, что осталось нужно от убунты, - это ее репы и, главное, ппа. Сейчас гоняю в виртуалке минт 11 и элементари юпитер, мелкие глюки и там и там присутствуют, пока думаю, что выбрать. К слову, дистровотч намекает, что последние полгода народ массово бежит с убунту на минт.

anonymous
()
Ответ на: комментарий от anc

хм. у меня сетевые загрузки с корнем на nfs работают.

Бывает, забудешь, что это сетевая загрузка, вытащишь сетевой кабель на ноуте и все потихоньку умирает. А потом вставишь кабель обратно и нормальком, продолжает работать как ни в чем ни бывало...

Недавно 20 минут ноут без сети лежал, а потом подключил его и продолжил работу.

AVL2 ★★★★★
()
Ответ на: комментарий от stalkerg

>Няшненько! Жду с нетерпением 4 самбу.

Жди жди...

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.