Os problemas que você está descrevendo provavelmente se devem a três fatores:
-
socket options
na seção[global]
do seu arquivo smb.conf. Uma boa linha de base para começar é:socket options = IPTOS_THROUGHPUT TCP_NODELAY SO_KEEPALIVE
Veja como isso funciona; geralmente é o suficiente para deixar o Samba "fora do caminho" para os gargalos de desempenho. Para outras opções, confira a página do Samba ; notavelmente SO_SNDBUF e SO_RCVBUF. Definir esses valores incorretamente afetará o desempenho negativamente; isso pode levar algumas tentativas e erros.
-
Fazendo o pior já mencionado, o tamanho dos arquivos afeta o Samba. Arquivos pequenos têm mais sobrecarga. E se você ajustar suas opções de soquete para transferências em massa, verá uma pequena velocidade de arquivos piorar. Da mesma forma, o ajuste para arquivos minúsculos torna as transferências de arquivos grandes piores. Idealmente, você vai descobrir o que você transfere com mais frequência, ou o que faz as maiores diferenças para você (lento em um ISO de 4 GB de DVD é geralmente mais significativo do que lento em um arquivo de 1 KB).
-
Configurações de DNS e VFS. Se você não tiver o mapeamento de redirecionamento e redirecionamento de DNS configurado corretamente, desabilite as pesquisas de DNS do Samba (
dns proxy = no
ehostname lookups = no
). Isso é mais evidente quando você se conecta a um compartilhamento do Samba (se levar mais de 5 segundos, esse é o problema).Há uma variedade de VFS e opções relacionadas que podem ser configuradas na seção [global] do Samba. Se eles estiverem errados, o Samba terá que lidar com erros ao abrir / salvar cada arquivo. As configurações apropriadas para o seu servidor dependerão do sistema de arquivos, da segurança e de alguns dos recursos que você deseja ativar. Não há uma resposta rápida para esta parte, mas faz a menor diferença no geral.