A primeira versão do Samba, disponibilizada em 1992 foi escrita por Andrew Tridgell, um Australiano que na época era estudante de ciências da computação. Como na época a especificação do SMB utilizada pela Microsoft ainda era fechada, Andrew desenvolveu um pequeno programa, batizado de clockspy, para examinar os pacotes de dados enviados por uma máquina Windows e assim ir implementando uma a uma as chamadas de sistema utilizadas, um trabalho extremamente complexo para ser feito por uma única pessoa.
O resultado foi um programa que rodava no Solaris e era capaz de responder às chamadas SMB como se fosse um servidor Windows. Este arquivo ainda pode ser encontrado em alguns dos FTPs do Samba.org, com o nome “server-0.5'.
O objetivo desta primeira versão era apenas resolver um problema doméstico, interligar um PC rodando o Windows 3.1 ao servidor Solaris. Na época isso já era possível utilizando um dos clientes NFS comerciais para DOS, mas Andrew precisava de suporte a NetBIOS para o um dos aplicativos que pretendia utilizar, o WindX, um servidor X para Windows, que permitia rodar aplicativos via rede a partir do servidor Unix. Até aí o objetivo era apenas fazer o programa funcionar, não criar um sistema de compartilhamento de arquivos.
Depois de algum tempo Andrew recebeu um e-mail contando que o programa também funcionava com o LanManager da Microsoft, permitindo compartilhar arquivos de um servidor Unix com máquinas rodando o DOS. Andrew só acreditou depois de testar, mas ficou tão maravilhado com o que havia conseguido que criou o projeto “NetBios for Unix', e começou a recrutar voluntários através da usenet. Mais tarde o projeto passou a usar o nome Samba, que foi adotado não em apologia ao Carnaval, mas apenas por que é uma das poucas palavras do dicionário do Aspell que possui as letras S, M e B.
Em 94 a Microsoft liberou as especificações do SMB e do NetBios, o que permitiu que o desenvolvimento do Samba desse um grande salto tanto em recursos quanto em compatibilidade, passando a acompanhar os novos recursos adicionados ao protocolo da Microsoft, que novamente deixou de ser aberto.
Hoje além de ser quase 100% compatível com os recursos de rede do Windows 98, NT e 2000 o Samba é reconhecido por ser mais rápido que o próprio Windows na tarefa de servidor de arquivos.
Funcionalidades do Samba
*Serviços de Arquivos e Impressão;
*Autenticação e Autorização;
*Resolução de Nomes;
*Browsing (anúncio de serviços);
*Lista de serviços (arquivos e impressoras compartilhadas) oferecidas pelos computadores.
Dois programas chaves compõem o Samba:
smbd e nmbd.
SMDB
-Responsável pelos:
*Serviços de diretórios e impressão;
*quais (e como) arquivos e impressoras serão vistos pelas máquinas Windows;
*autenticação de “share mode” e “user mode”;
*como proteger arquivos e impr. através de senhas;
*Share mode: atribui uma senha para o diretório ou impressora;
*user mode: cada usuário tem senha para o serviço.
NMDB
-Responsável por:
*resolução de nomes ;
*Browsing (dentre suas funções, ele mostra os serviços disponíveis na rede local).
-Envolve tarefas como o gerenciamento e distribuição de listas de nomes NetBIOS.
Site oficial: http://www.samba.org