Samba rlimit max increasing rlimit max 1024 to minimum windows limit 16384
Настройка общих папок Samba на Ubuntu Server
В седьмой по счету статье по настройке Ubuntu Server будет продолжена настройка сервера для школы или небольшой организации, в этой части будет произведена настройка Samba, сервиса для создания общих ресурсов и управления доступом к ним.
Samba — пакет программ, которые позволяют обращаться к сетевым дискам и принтерам на различных операционных системах по протоколу SMB/CIFS.
ВикипедиЯ.
[nx_heading style=»underlined» heading_tag=»h3″ size=»28″]Содержание:[/nx_heading]
[nx_list icon=»icon: arrow-circle-right» icon_color=»#ED303C»]
Дата обновления статьи: 04.10.2016
[nx_heading style=»centerlined» heading_tag=»h3″ size=»24″ align=»center»]Создание папок для общего доступа и настройка прав доступа[/nx_heading]
По заданию, нам понадобится сделать три папки общего доступа:
Папки создадим в домашней директории home, в отдельной папке sharefolders.
Создаем три папки и устанавливаем разрешения безопасности файловой системы(не разрешения доступа по сети) на «полный доступ» на каждую из них.
Создание папки Share и установка полных прав доступа файловой системы, команды:
Создание папки Read и установка полных прав доступа файловой системы, команды:
Создание папки Pasw и установка полных прав доступа файловой системы, команды:
Ubuntu Server: Окно файлового менеджера Midnight Commander
[nx_heading style=»centerlined» heading_tag=»h3″ size=»24″ align=»center»]Установка и настройка Samba, сетевых папок на чтение и запись “всем”[/nx_heading]
Устанавливаем samba, командой:
Заводим себе хорошую традицию, перед изменением конфигурационных файлов, создавать резервную копию изначального файла конфигурации. Это так же поможет избавиться от не нужных на данный момент «избыточных» параметров конфигурации и комментариев указанных в файле. В последующем, при наборе опыта работы в Ubuntu, вы можете править оригинальный файл конфигурации со всеми возможными параметрами.
Перемещаем с одновременным переименованием файл smb.conf в smb.conf.bac, командой:
Создаем пустой файл конфигурации, командой:
Открываем файл, командой:
И вносим в него следующий текст:
Ubuntu Server: Настройка Samba, изменение файла конфигурации
Подробней о ключах smb.conf (на русском) вы можете узнать с этого сайта.
Правим файл limits.conf, для изменения лимита одновременных подключений (это уберет ошибку rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384), командой:
Добавляем в конец файла строки:
Ubuntu Server: Исправление ошибки rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Проверяем файл конфигурации samba, командой:
Если все записано верно, перезапускаем сервер samba, командой:
Проверяем доступ к сетевым папкам Share и Read с компьютеров локальной сети. Если все сделано верно, обе папки открываются без ввода пароля, папка Share имеет полный доступ, а папка Read, при попытке записать/удалить файл выдает сообщение о недостатке прав.
Самая простая настройка Samba выполнена, переходим к настройке папки с доступом по паролю.
[nx_heading style=»centerlined» heading_tag=»h3″ size=»24″ align=»center»]Настройка сетевой папки с парольным доступом[/nx_heading]
Заведем пользователя teacher в группе пользователей samba, учетная запись которого будет иметь право на полный доступ к сетевой папке Pasw.
Создадим группу пользователей samba — smbuser, командой:
Создадим пользователя teacher в этой группе, командой:
Создадим пароль пользователю:
Задаем пароль на пользователю для samba:
Добавляем в файл конфигурации samba, следующий блок описывающий нашу сетевую папку Pasw:
Проверяем файл конфигурации, командой:
Ubuntu Server: Проверка файла конфигурации samba
Если все записано верно, перезапускаем сервер samba, командой:
После этих манипуляций на сервере gate у нас появляется третья папка Pasw, для доступа к которой запрашивается имя пользователя и пароль, при этом две папки Share и Read все так же доступны любому пользователю.
Задача настройки сетевых папок — выполнена.
[nx_heading style=»centerlined» heading_tag=»h3″ size=»24″ align=»center»]Отключение доступа по SSH пользователя группы samba[/nx_heading]
В предыдущем шаге, мы создали нового пользователя на сервере, который по-умолчанию имеет доступ к серверу посредством SSH, что нам абсолютно не нужно. Запретим доступ пользователю teacher посредством ssh. Откроем файл конфигурации ssh:
Добавим в конец файла строку:
И перезапустим ssh сервер, командой:
На этом «упрощенная» настройка службы Samba и папок общего доступа завершена. Разобраны три примера доступа к сетевым ресурсам, кстати общие ресурсы (папки и принтеры) это не все возможности samba, но о других возможностях Вам расскажет уже поисковик Google.
Папка Share имеет общий полный доступ для всех, если не настроить квоты или не выделить под нее отдельный ограниченный раздел, пользователи могут занять все свободное место на сервере, про это нужно помнить.
На этом данная настройка Samba завершена и доступ к сетевым папкам организован.
[nx_heading style=»coloredline» heading_tag=»h4″ size=»24″ align=»left»]От автора:[/nx_heading]
Если проблема решена, один из способов сказать «Спасибо» автору — здесь.
Если же проблему разрешить не удалось и появились дополнительные вопросы, задать их можно на нашем форуме, в специальном разделе.
“If there is one thing developers like less than writing documentation, it’s responding to unnecessary escalations […] and too many escalations wear down the developers.”
Tom Limoncelli
Site Reliability Engineering Manager at Stack Overflow
“We needed a better place to store all the questions and answers that people were repeatedly asking, and we discovered Stack Overflow for Teams.”
Suyog Rao
Director of Engineering at Elastic Cloud
“We use Stack Overflow for Teams internally when onboarding new developers, and when new developers ask questions, everyone can benefit from the shared knowledge.”
Roberta Arcoverde
Principal Software Developer at Stack Overflow
Teams
Connect and share knowledge within a single location that is structured and easy to search.
Resolving samba testparm message: rlimit_max: rlimit_max (8192) below minimum Windows limit (16384)
testparm in samba may produce this message:
Is this a safe change for the typically Samba box? Where should this setting be stored so that it will be available to the samba service on boot?
4 Answers 4
First off, this is just a warning. On MS Windows the number of file handlers on the client and the server must be identical, else you will see the «too many files open» message when e. g. copying files over the network. More recent Samba versions take care of this on their own.
However, if you want to remove this warning, you can do so by changing your local file limits. It is always useful to distinguish local (user or session) limits and global (system wide) limits. Check you global limits with
Chances are good that your global limits far exceed your local limits. I think the typical GNU/Linux limit is in the 100k range, I haven’t looked in a really long time. You can change this value temporarely by executing
To check your local limits, switch to the concerned user, e. g. samba, and run
This will show you hard and soft limits for the local session. The hard limit is enforced by the system, while the soft limit is enforced by the local session. You can increase the local soft limit up to the global hard limit, if necessary.
You can change the limits temporarely by running
or you can set user limits via /etc/security/limits.conf and you can even specify for which users which limits apply, e. g.
As always the man-pages of both files and the commands offer much more insight. Hope that helps.
Samba rlimit max increasing rlimit max 1024 to minimum windows limit 16384
Anyone getting that error when running testparm on their samba.conf file?
How can it be resolved?
to your /etc/security/limits.conf file
and reboot.
# testparm still returns: «rlimit_max: rlimit_max (1024) below minimum Windows limit (16384)»
Even tried enabling/adding «session required pam_limits.so» to /etc/pam.d/su and reboot
Result of testparm is identical: «rlimit_max: rlimit_max (1024) below minimum Windows limit (16384)»
Any suggestions how to correctly remove the rlimit_max warning?
to your /etc/security/limits.conf file
and reboot.
It worked for me too! Thank you! 😛
I found this reference: http://lists.samba.org/archive/samba/2010-January/153331.html
On Mon, Jan 25, 2010 at 11:44:03AM +0000, Miguel Medalha wrote:
>
> I just installed samba on a new server, 3.4.5-42, 64 bit version from
> Sernet, over CentOS 5.4.
>
> When running testparm, I get the following warning:
>
> rlimit_max: rlimit_max (8192) below minimum Windows limit (16384)
>
> I searched Google for some answer but I couldn’t find a satisfactory
> one. What should I do to solve this?
> Can someone from the Samba team enlighten me on this?
It’s a warning, you can safely ignore it. Windows 7 clients need to
have exactly the same number of open handles available as Windows
servers, else it fails in some file copy situations with a «out of
handles» message. Samba has taken care of it for you, but it’s just
letting you know your fd limit is set a bit low.
i have tried this and it did not work for me
It does not work for me either.
It is not ubuntu specific though, you can have the error on Centos 5:
and solaris as well:
Hi! I tried this issue but the problem is still present:
rlimit_max: rlimit_max (1024) below minimum Windows limit (16384)
Please see post #13.
It’s not a problem that needs to be fixed.
This did not work for me either (new lucid install). I noticed that the * domain specification does not apply to root (according to the files). Basically, this worked for me:
to your /etc/security/limits.conf file
and reboot.
I really only needed the root line but include the * to be complete in providing a true *. Hope this helps,
might not want to just blindly start changing config files, in general.
For this particular item, not sure if this has been addressed yet, but here’s a security reason for that setting of 1024
I found a solution in this site:
I have a slightly different, but probably related problem. testparn includes the output
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
I have not been able to get the command
to update the smb.conf, however, I get permission denied, or some such. I think I would have to log in as root to make this work, so I just updated smb.conf with sudo gedit instead. That would have prevented the change from being done.
Anyone know how I can get testparm to output the new file, i.e. how i get teh permission to work.
In the meantime I’ll try your fix. Thanks.
I have a slightly different, but probably related problem. testparn includes the output
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
I have not been able to get the command
to update the smb.conf, however, I get permission denied, or some such. I think I would have to log in as root to make this work, so I just updated smb.conf with sudo gedit instead. That would have prevented the change from being done.
Anyone know how I can get testparm to output the new file, i.e. how i get teh permission to work.
In the meantime I’ll try your fix. Thanks.
Yes, but the problem is that I get the same symptoms. I can’t see any other computers, Windows or Ubuntu, and they can’t see me. Without Samba I can at least see the windows machines.
The symptoms you are referring to are not related in any way to the subject of: rlimit_max (1024) below minimum Windows limit (16384). They are best resolved in the other thread you started.
It worked for me too! Thank you! 😛
I found this reference: http://lists.samba.org/archive/samba/2010-January/153331.html
Samba version: samba3x-3.5.4-0.70.el5_6.1
This thread simply will not die.
Sort of. The message per se is not an error, but can lead to one. I manage a small network with 100+ users, and once in a while I hit the limit and some clients gets errors when trying to connect to a service.
Or, in other words, you will get an error when samba hit the limit.
copypast from:
http://how-it.ru/public/root/110-samba__preduprezhdenie__rlimit_max__rlimit_max__10 24__below_minimum_windows_limit__16384__.html
to your /etc/security/limits.conf file
and reboot.
Didn’t work for me as well
My installation is fresh Ubuntu 12.04 with samba 3.6.3
On Mon, Jan 25, 2010 at 11:44:03AM +0000, Miguel Medalha wrote:
>
> I just installed samba on a new server, 3.4.5-42, 64 bit version from
> Sernet, over CentOS 5.4.
>
> When running testparm, I get the following warning:
>
> rlimit_max: rlimit_max (8192) below minimum Windows limit (16384)
>
> I searched Google for some answer but I couldn’t find a satisfactory
> one. What should I do to solve this?
> Can someone from the Samba team enlighten me on this?
It’s a warning, you can safely ignore it. Windows 7 clients need to
have exactly the same number of open handles available as Windows
servers, else it fails in some file copy situations with a «out of
handles» message. Samba has taken care of it for you, but it’s just
letting you know your fd limit is set a bit low.
Jeremy
It’s not an issue that needs to be fixed.
to your /etc/security/limits.conf file
and reboot.
This worked for me as well thank you!
Note: the reboot isn’t necessary, just log out and log back in.
to your /etc/security/limits.conf file
and reboot.
Still hasen’t changed from 4 years ago.
On Mon, Jan 25, 2010 at 11:44:03AM +0000, Miguel Medalha wrote:
>
> I just installed samba on a new server, 3.4.5-42, 64 bit version from
> Sernet, over CentOS 5.4.
>
> When running testparm, I get the following warning:
>
> rlimit_max: rlimit_max (8192) below minimum Windows limit (16384)
>
> I searched Google for some answer but I couldn’t find a satisfactory
> one. What should I do to solve this?
> Can someone from the Samba team enlighten me on this?
It’s a warning, you can safely ignore it. Windows 7 clients need to
have exactly the same number of open handles available as Windows
servers, else it fails in some file copy situations with a «out of
handles» message. Samba has taken care of it for you, but it’s just
letting you know your fd limit is set a bit low.
Jeremy is Jeremy Allison, one of the developers of Samba so you’d think his comments would carry some weight. I mean if he doesn’t know how it works then we should all start using NFS.
Аутентификация файловых серверов GNU/Linux в домене Windows на базе AD. Часть 2
1. Конфигурационные файлы.
Мы будем настраивать только доступ к серверу GNU/Linux с использованием Samba. Авторизация пользователей останется локальной, с использованием /etc/passwd.
Мы присвоим нашему новому серверу статический IP-адрес. Пусть им будет 192.168.7.9.
Для начала нужно проверить, какой сервер у нас используется в качестве DNS. Им в нашей сети должен быть контроллер домена. У нас адрес сервера определен как 192.168.7.2. Правим файл /etc/resolv.conf. Он должен выглядеть следующим образом:
Проверим, все ли работает:
Естественно, в Вашем случае имена будут другими. Обязательно сделайте в домене lab.local запись в DNS, ссылающуюся на наш новый сервер. Запись в DNS не означает того, что наш GNU/Linux сервер включен в домен. Проверим:
Для корректной работы в домене Windows требуется несколько служб: Kerberos, LDAP и Samba. В общем случае требуется только настройка Samba, настройка других служб не является обязательной. Но будет лучше, если мы их настроим – они могут пригодиться в будущем.
Kerberos настраивается просто – через один файл /etc/krb5.conf. Основными параметрами является REALM, указывающий на наш домен и адрес сервера Kerberos – это адрес контроллера домена. Файл /etc/krb5.conf выглядит примерно так:
Секция [libdefaults] указывает на домен по умолчанию. У нас это LAB.LOCAL. Далее, в секции [realms] указываются параметры для LAB.LOCAL – имя домена и адрес сервера Kerberos. В нашем случае, в качестве сервера Kerbeors выступает контроллер домена. В секции [logging] указывается местоположение лог-файлов. Эти файлы пригодятся для процедуры поиска неисправности, если что-то пойдет не так.
Проверим работу Kerberos:
Команда kinit получает от сервера тикет, а klist показывает полученные тикеты от сервера. Выполнение kinit не является обязательным, но ведь нужно как-то проверить работу Kerberos?
Настройка LDAP тоже не является обязательной – Samba сама построит необходимые файлы и сделает нужные запросы. Но LDAP может пригодиться в дальнейшем. Конфигурация OpenLDAP хранится в файле /etc/openldap/ldap.conf. Обратите внимание – в системе может быть два файла ldap.conf. У них разные предназначения и даже немного разный синтаксис. В каталоге /etc/openldap лежит файл ldap.conf для OpenLDAP (и для Samba), а в файле /etc/ldap.conf хранится конфигурация для разрешения имен через LDAP (для nss_ldap). К файлу /etc/ldap.conf мы вернемся в других статьях, сейчас настроим /etc/openldap/ldap.conf
Как видите, все очень просто – нужно указать URI сервера LDAP (это наш контроллер домена) и базу для поиска.
Теперь переходим к самому сложному – настройке Samba.
В состав Samba входят 3 демона – smbd, nmbd и winbind. Все они берут настройки из файла /etc/samba/smb.conf.
Smbd отвечает за доступ клиентов к службе SMB/CIFS (собственно это и есть сервер Samba). Nmbd – это служба разрешения имен для Netbios. Winbind – служба разрешения имен (и компьютеров и пользователей) через доменные службы Windows.
Во многих руководствах можно встретить упоминание того, что кроме Samba требуется настраивать и winbind – службу, отвечающую за отношения между GNU/Linux и контроллером домена Windows. В частном случае, когда нужно настроить только Samba, настройки winbind можно опустить. Winbind обеспечивает авторизацию в домене Windows самых различных служб, обеспечивая интерфейс между модулями PAM и контроллером домена Windows. При неработающем winbind Samba остается работоспособной. Но настроив winbind мы делаем возможным дальнейшее расширение нашего сервера за счет добавления различных служб, авторизующихся через контроллер домена.
Мы сделаем самый простой сервер, открыв всем пользователям доступ к некоторому общему каталогу файлов и к домашнему каталогу пользователей. Более подробно о настройке доступа к серверу Samba мы будем говорить в других статьях.
В файле /etc/samba/smb.conf мы должны указать следующие строки:
Здесь мы указываем сокращенное наименование нашего домена (LAB) и место, где хранятся пароли – параметр passdb backend, указывающий на то, что пароли находятся на сервере LDAP, в качестве которого выступает контроллер домена. Кстати, можно указать и несколько серверов, перечислив их через пробел. Это пригодится в том случае, если у нас несколько контроллеров домена. Строка usershare allow guests = Yes разрешает пользователям управлять доступом к своим папкам, открывая их для гостей. Остальные строки относятся к управлению печатью и процессу регистрации. В нашем случае они не являются обязательными и перекочевали из конфигурационного файла дистрибутива Samba.
Продолжим редактирование секции [global] файла smb.conf.
Строки domain logons и domain master разрешают использовать Samba в качестве контроллера домена. Это не наш случай и поэтому для них установлено No.
Строка security = ADS имеет ключевое значение. Тем самым мы указываем Samba, что сервер является членом домена Windows и за авторизацию отвечает AD. Строка encrypt passwords = yes означает, что используются зашифрованные пароли.
Продолжим редактировать все ту же секцию [global].
Эти строки относятся к управлению соединением с LDAP сервером. Заметьте, что форма записи DN администратора имеет форму user@domain – она должна совпадать с тем, что мы указывали при тестировании Kerberos. Остальные строки указывают суффиксы различных местоположений в AD.
Следующие строки относятся уже к Kerberos:
Здесь мы указываем REALM и метод аутентификации в Kerberos.
Теперь строки, которые относятся к настройке winbind:
Здесь указаны различные параметры работы Winbind – форма разделитя имен домена и пользователя, разрешение для winbind перечислять имена пользователей и групп, разрешение оффлайновой аутентификации и т.п. Эти настройки рекомендованы разработчиками Samba.
Секция глобальных настроек закончена. Обратите внимание, что у нас нет строк password server и idmap backend, которые можно встретить в других руководствах. Samba должна сама разобраться, откуда берутся пароли.
Переходим к настройке каталогов. Здесь все просто:
К стандартному списку разделяемых каталогов, распространяемому вместе с дистрибутивом Samba мы добавили только секцию [SRV] – общедоступный каталог.
Конфигурирование всех необходимых файлов закончено, и мы приступаем к проверке работоспособности нашего сервера.
2. Проверка работоспособности.
Здесь мы проверим корректность наших настроек и включим наш новый сервер в домен Windows. Сначала проверим корректность настройки Samba:
l
Как видно, каких либо серьезных предупреждений и ошибок конфигурации у нас нет.
Теперь запустим по очереди демоны smbd, nmbd и winbindd. Сделаем это через файлы /etc/init.d/smb, /etc/init.d/nmb и /etc/init.d/winbind. Можно выполнить это и вручную, что может оказаться полезным для получения различной дополнительной информации. О том, как это сделать можно прочесть во встроенных руководствах (man) по smbd, nmbd и winbindd.
Проверим состояние нашего домена и нашего сервера в домене. Состояние домена можно получить командой net ads info
Как видно, все в порядке. Если какие-то параметры, выводимые командой не совпадают с нашим планом – надо искать причину. Теперь проверим состояние нашего сервера в домене:
l
Отсюда следует, что наш сервер не включен в домен. Запрос к контроллеру домена делается от имени администратора, и пароль нужно указывать от учетной записи администратора домена Windows.
Теперь мы должны включить наш сервер в домен:
l
Итак, наш новый сервер включен в домен, о чем свидетельствуют строки:
Динамическое изменение DNS у нас не прошло. Это не страшно, поскольку оно и не планировалось. Теперь рекомендуется перезапустить все наши процессы – smbd, nmbd и winbindd. Заметим, что после перезапуска до дальнейших проверок должно пройти несколько минут.
Проверим статус нашего сервера в домене:
В ответ мы получим распечатку состояния нашего нового сервера в домене. Там будут указаны различные поля AD, относящиеся к нашему серверу. Так же наш сервер GNU/Linux мы увидим на вкладке Computers, запустив средство администратора AD на контроллере домена.
Можно проверить список пользователей домена:
l
И проверим работу winbind:
И получим список пользователей в домене:
l
Можно проверить состояние домена через wbinfo:
l
Все в порядке. Теперь самая главная проверка – попробуем открыть каталоги на нашем новом сервере, используя рабочую станцию под управлением Windows 7. Наша рабочая станция включена в домен. Мы должны увидеть наш новый сервер на вкладке Network обозревателя Windows, либо указав имя или IP адрес:
Теперь можно переходить к дальнейшим процедурам настройки нашего сервера. В дальнейшем мы рассмотрим некоторые нюансы описанного процесса в зависимости от дистрибутива GNU/Linux и подробнее рассмотрим настройку прав доступа к серверу Samba.
Работа выполнена на базе Информационно-вычислительного центра МЭИ.