Увеличиваем скорость работы самбы (smb.conf)

Давайте протестируем и отпишемся здесь у кого как работает самба с такими параметрами.

вопросы для теста:

  1. Скорость передачи файла большого размера (>1GB) на удаленный сервер (WIN\LIN)
  2. Скорость скачки файла большого размера (>1GB) на samba сервер (WIN\LIN)
  3. Скорость передачи большого числа маленьких файлов (на пример папки Windows)
  4. Скорость приема большого числа маленьких файлов

Итак по порядку:
добавляем или исправляем в своем /etc/samba/smb.conf следующие строчки

socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=8192 SO_SNDBUF=8192
wide links = yes
read raw = no

Описание:
Теоретически эти два параметра настраиваются под конкретную машину, чем тормозней у вас диск (/dev/sd* /dev/hd*) тем больше нужно ставить эту опцию
SO_RCVBUF - буфер принятых пакетов
SO_SNDBUF - буфер исходящих пакетов

TCP_NODELAY - т.е. нет задержки при отправке пакета… вообще эту опцию рекомендуют включать если самба находится в Локальной сети…

read raw - Этот параметр контролирует, будет ли Самбы поддерживать сырые блоки данных SMB когда передает информацию к клиенту. Если разрешено, сырые запросы будут передаваться по 65535 байт в одном пакете. Обычно это дает значительный прирост производительности. Тем не менее, некоторые клиенты не могут корректно определить размер блока данных на этапе установки соединения, или неспособны поддерживать такие большие блоки данных. Для таких клиентов, Вам нужно запретить передачу таких блоков. В целом, этот параметр следует рассматривать как инструмент тонкой настройки и в большинстве случаев, его не следует менять.

wide links - Этот параметр определяет, как Samba будет следовать по символическим ссылкам. Если wide links=no, то Samba не будет следовать по символическим ссылкам вне экспортируемой области. Сначала Samba следует по символической ссылке, а затем выполняет так называемый directory path lookup (системный вызов, определяющий, где завершилась ссылка). Данная операция подразумевает на 6 системных вызовов больше, нежели в случае, если wide links=yes. Учитывая, что подобных операций делается очень много, то выключение wide links снижает производительность Samba приблизительно на 30%. (однако на серверах этого делать не стоит, по своему опыту могу сказать какая это большая дырка в системе)