Compartilhamento de Arquivos no Linux
O Samba é um "software servidor" para Linux (e
outros sistemas baseados em Unix) que permite o gerenciamento e compartilhamento
de recursos em redes formadas por computadores com o Windows. Assim, é possível
usar o Linux como servidor de arquivos, servidor de impressão, entre outros,
como se a rede utilizasse servidores Windows (NT, 2000, XP, Server 2003). Este
artigo faz uma abordagem introdutória ao Samba, mostrando suas principais
características e um pouco de sua história.
Breve
história do Samba
O Samba é uma criação de Andrew Tridgell. De acordo com
informações dadas no site oficial do software, Tridgell precisava montar um espaço em disco
em seu PC para um servidor Unix. Esse PC rodava o sistema operacional
DOS e, inicialmente, foi utilizado o sistema de arquivos NFS
(Network File System) para o acesso. Porém, um aplicativo precisava de
suporte ao protocolo NetBIOS (não suportado pelo NFS). A solução encontrada por
Tridgell não foi tão simples: ele escreveu um sniffer (pequeno programa para
captura de tráfego de dados em rede) que permitisse analisar o tráfego de dados
gerado pelo protocolo NetBIOS, fez engenharia reversa no protocolo SMB
(Server Message Block) e o implementou no Unix. Isso fez com que o servidor
Unix aparecesse como um servidor de arquivos Windows em seu PC com
DOS.
Esse código foi disponibilizado publicamente por Tridgell
em 1992. Porém, tempos depois, o projeto foi posto de lado até que um
determinado dia Tridgell decidiu conectar o PC de sua esposa ao seu computador com Linux. Porém, não
encontrou nenhum meio melhor que seu código para fazer isso e assim o
utilizou.
Através de
contatos feitos por e-mail, Tridgell descobriu que as documentações dos
protocolos SMB e NetBIOS estavam atualizadas e assim voltou a dedicar-se ao
projeto. Porém, uma empresa entrou em contato com ele reivindicando os direitos
sobre o nome usado no software até então. Diante disso, Andrew Tridgell teve a
idéia de procurar em um dicionário uma palavra que tivesse as letras s, m e b
(de SMB) e acabou encontrando o termo "samba". A partir daí o projeto Samba
cresceu e hoje Andrew Tridgell conta com uma excelente equipe de programadores e
com milhares de usuários de sua solução espalhados pelo
mundo.
O que o
servidor Samba faz
Com o servidor
Samba, é possível compartilhar arquivos, compartilhar impressoras e controlar o
acesso a determinados recursos de rede com igual ou maior eficiência que
servidores baseados em sistemas operacionais da Microsoft. Mas, neste caso, o
sistema operacional utilizado é o Linux.
O Samba é
compatível com praticamente qualquer versão do Windows, como NT 4.0, 9x, Me,
2000, XP, Server 2003,Vista, Seven e mais recentes além de máquinas com o Linux,
é claro.
Todo trabalho
feito pelo Samba é provido de grande segurança, uma vez que há grande rigor nos
controles dos recursos oferecidos. Tanto é que existem empresas que usam o Samba
como solução para conflitos existentes entre diferentes versões do
Windows.
Como não poderia
deixar de ser, o Samba também permite que sua configuração seja feita por meio
de computadores remotos. Para os casos mais críticos, o administrador da rede
pode até ser notificado de anormalidades por e-mail (para isso é necessário usar
um script específico que busca informações nos arquivos de log e cria um arquivo
que pode ser enviado via e-mail).
Instalando
o Samba
O Samba é um software livre que está disponível sob a
licença GNU (GNU's not Unix). Muitas
distribuições Linux já o incluem, mas caso queira instalá-lo, é possível
baixá-lo de seu site oficial - www.samba.org. Neste, é possível notar que há pacotes específicos para
as distribuições mais famosas, como Fedora, Mandriva, SuSE, Debian, Ubuntu entre
outros. Isso significa que a instalação depende do tipo de pacote utilizado
(tar.gz, RPM, deb, entre outros). Assim, como exemplo, os usuários do Debian
devem usar o seguinte comando:
apt-get
install samba smbclient samba-doc
Se o
pacote do Samba estiver no formato tar.gz basta digitar (depois de
baixado):
# tar -zxvf samba-a.b.c.tar.gz (onde a, b e c
correspondem ao número da versão)
Em seguida,
basta entrar no diretório source e digitar:
./configure
--prefix=/usr/local/samba
Por fim,
digite:
# make
# make
install
O arquivo
smb.conf
Um fato que
agrada muitos usuários do Samba é que sua configuração é feita em um único
arquivo: o smb.conf. Esse arquivo geralmente fica localizado no diretório de
instalação do Samba.
O arquivo
smb.conf é estruturado da seguinte maneira: os parâmetros de configuração são
agrupados em seções. Cada seção é identificada por um nome entre colchetes, por
exemplo, [global]. A seguir, segue a descrição de três exemplos de seções
pré-definidas no Samba:
[global] - como o nome indica, contém
configurações que afetam todo o Samba. Por exemplo, nome do
servidor;
[homes] - contém as configurações do diretório
home para cada usuário;
Abaixo segue um
exemplo de um arquivo smb.conf com uma configuração bastante simples, pois serve
apenas para explicar a estrutura do arquivo. Seus parâmetros são explicados em
seguida. A numeração no início das linhas não é usada no arquivo e foi inserida
pelo InfoWester apenas para facilitar a localização dos
parâmetros:
1
[global]
2 # nome do
servidor de arquivos
3 netbios
name = Servidor
4 # nome do
grupo de trabalho ou do domínio
5 workgroup =
DC
6 server
string = Servidor de Arquivos no GNU/Linux
7 # diretório
compartilhado
8 path = /home/arquivos
9 browseable = yes
10 writable = yes
Explicando:
- As
linhas 1 contêm os nomes das seções;
- As
linhas 2, 4 e 7 são comentários. Você pode inserir o texto que quiser nelas e o
Samba irá ignorá-las. Os comentários são usados para documentar funcionalidades
ou fazer observações. Esse recurso também pode ser inserido no final de qualquer
outra linha, bastando inserir o símbolo # antes do
comentário;
- A linha
3 - netbios name - contém o nome NetBIOS do servidor
Samba;
- A linha
5 - workgroup - recebe o nome do grupo de trabalho ou do domínio no qual o
servidor Samba faz parte;
- A linha
6 - server string - é uma identificação que o servidor Samba envia aos demais
computadores da rede;
- A linha
8 - path - indica qual o diretório compartilhado, se for esse o
caso;
- A linha
9 - browseable - informa se o diretório é visível ou não. Se não for, mesmo
assim é possível acessá-lo;
- A linha
10 - writable - se tiver o termo "no", indica que o usuário apenas pode ler o
conteúdo do diretório compartilhado, mas não pode
alterá-lo.
Neste Vídeo mostrei de forma
prática o que foi mostrado no texto acima, embora no vídeo esteja rodando no
Ubuntu ela pode ser utilizada em qualquer distribuição GNU/LINUX que tenha o
Samba instalado ou disponível para instalar.
Perdoem minha voz, pois estou
me recuperando de uma gripe então em certos momentos eu tive que cortar
o vídeo e em outros não teve como fugir, mas deixe um cometário para um melhor
feedback.
Nenhum comentário:
Postar um comentário