Encontrei isto na net a algum tempo e ajudou-me.
Configurando o arquivo smb.conf
O smb.conf é o arquivo de configuração do Samba, este arquivo pode ser configurado pelo
programa Swat ou manualmente usando um editor de textos como o vi e está localizado
no diretório /etc. O arquivo é composto por seções e parâmetros. As seções descrevem
recursos compartilhados (exceto a [global]) e são representadas por colchetes e os
parâmetros, dentro das seções, representam os atributos dos compartilhamentos. Há três
seções especiais:
* [global] - São parâmetros que serão aplicados ao servidor como um todo.
* [home] - Disponibiliza o diretório /home dos usuários.
* [printers] - Disponibiliza o acesso a qualquer impressora especificada e conectada à
máquina local.
Esta é apenas uma configuração básica de um diretório e uma impressora como recursos
compartilhados:
# vi /etc/samba/smb.conf
# Configuração do Servidor Samba
# Data: 30/06/2004
# Parâmetros Globais
[global]
netbios name = DEBIAN
workgroup = OSDORMESUJO
server string = Servidor Samba
security = user
encrypt passwords = yes
log file = /var/log/samba/samba.log
# Parâmetros Locais
[arquivos]
comment = Arquivos de usuários
path = /home/arquivos
public = no
read only = yes
create mode = 0740
directory mode = 0740
# Impressoras Compartilhadas
[Epson]
printable = yes
print command = /usr/bin/lpr -P%p -r %s
printer = lp
printing = BSD
path = /var/spool/lpd/lp
Configurando clientes Windows
Criaremos um usuário para acessar o nosso servidor Samba:
# smbpasswd -a crildo
Este comando adicionou o usuário crildo e sua senha no arquivo de senhas criptografadas.
No Windows, configure o endereço IP e o endereço da máquina que acessará o
Página Web 2 de 7
http://www.linuxnarede.com.br/tutoriais/post_art/fullnews.php?id=view&f_act=fulln... 28-01-2007
compartilhamento ou use endereçamento dinâmico:
* IP - 172.16.1.5
* Máscara de sub-rede - 255.255.0.0
Nas propriedades de TCP/IP, acesse a aba Ligações e marque as opções Cliente para
redes Microsoft e Compartilhamento de Arquivos e Impressoras para Redes Microsoft.
Clique que em OK.
Agora na janela Rede clique na aba Identificação e defina:
* Nome do computador - crildo
* Grupo de trabalho - osdormesujo
* Descrição do computador - Estação de Trabalho
Agora acesse o Painel de Controle do Windows e clique no ícone Senhas e defina uma
senha para o logon do Windows. Reinicie o computador. Depois que o computador foi
reiniciado, na janela Digitar a senha da rede, digite a senha que você cadastrou no
Servidor Samba. Na janela Bem-vindo ao Windows digite a senha que você definiu no
Windows. Dê um duplo clique no ícone Ambiente de rede, depois no ícone Toda a rede e
no grupo de trabalho que você definiu. Por fim, clique no ícone que identifica o servidor,
digite a senha de rede se for o primeiro login e acesse o compartilhamento.
Acessando um servidor Windows 2000 com clientes Linux
A primeira tarefa a fazer é criar o recurso compartilhado:
1. Abra o Windows Explorer e crie um novo diretório;
2. Clique com o botão direito nesse diretório;
3. Clique na opção Propriedades;
4. Clique na aba Compartilhamento;
5. Selecione a opção Compartilhe esta pasta;
6. Dê um nome ao compartilhamento e clique em OK.
Crie um usuário Linux no Windows 2000 Server para acessar o servidor:
1. Clique em Start/Programs/Administrative Tools/Active Directory Users and Computers;
2. Clique com o botão direito na pasta Users/New/User;
3. Crie um usuário.
Agora na máquina Linux com o usuário que foi criado no Win2000 listaremos os recursos
disponíveis:
# smbclient -L win2kserver -U tux
added interface ip=172.16.1.10 bcast=172.16.255.255 nmask=255.255.0.0
Password:
Domain=[WIN2KSERVER0] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager]
Sharename Type Comment
--------- ---- -------
E$ Disk Default share
IPC$ IPC Remote IPC
NETLOGON Disk Logon server share
ADMIN$ Disk Remote Admin
SYSVOL Disk Logon server share
Página Web 3 de 7
http://www.linuxnarede.com.br/tutoriais/post_art/fullnews.php?id=view&f_act=fulln... 28-01-2007
C$ Disk Default share
Teste Disk Compartilhamento de Teste
Server Comment
--------- -------
WIN2KSERVER
Workgroup Master
--------- -------
OSDORMESUJO DEBIAN
O comando smbclient é um programa cliente Linux usado para realizar quase todos os
trabalhos oferecidos pelo Samba.
Para acessar o recurso compartilhado no servidor Windows 2000 Server faça:
# smbclient //win2kserver/Teste -U tux%password
added interface ip=172.16.1.10 bcast=172.16.255.255 nmask=255.255.0.0
Domain=[WIN2KSERVER0] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager]
smb:\>
Digite "?" para ver os comandos que estão disponíveis no prompt de comando do Samba:
smb:\> ?
? altname archive blocksize cancel
cd chmod chown del dir
du exit get help history
lcd link lowercase ls mask
md mget mkdir more mput
newer open print printmode prompt
put pwd q queue quit
rd recurse rename rm rmdir
setmode symlink tar tarmode translate
Para saber o que significa um comando faça:
smb:\> ? get
HELP get:
<remote name> [local name] get a file
Outro comando que podemos usar é o "!", que permite executar um comando shell.
smb:\> ! ls -l
total 35
drwxr-x--- 2 root root 1024 Sep 16 2003 Default
drwx------ 3 root root 1024 Jul 5 11:57 Desktop
-rw-r--r-- 1 root root 488 Jun 22 11:08 GNU.txt
drwxr-x--- 2 root root 1024 Sep 16 2003 Wood
-rw-r--r-- 1 root root 1810 Jun 16 15:58 basic.conf
Agora vamos criar um diretório no Servidor Windows 2000 e depois copiar um arquivo
local para ele:
smb:\> mkdir tux
smb:\> dir
. DR 0 Mon Jul 5 20:55:47 2004
Página Web 4 de 7
http://www.linuxnarede.com.br/tutoriais/post_art/fullnews.php?id=view&f_act=fulln... 28-01-2007
.. DR 0 Mon Jul 5 20:55:47 2004
debian D 0 Mon Jul 5 20:42:55 2004
tux D 0 Mon Jul 5 20:55:47 2004
36146 blocks of size 4096. 35505 blocks available
smb:\> cd tux
smb:\tux\> put ip.txt
putting file ip.txt as \tux\ip.txt (5.8 kb/s) (average 1.1 kb/s) smb:\tux\> ls
. D 0 Mon Jul 5 20:57:17 2004
.. D 0 Mon Jul 5 20:57:17 2004
ip.txt A 83 Mon Jul 5 20:57:17 2004
36146 blocks of size 4096. 35505 blocks available
Para copiar vários arquivos que coincidam com um mesmo padrão podemos usar
o comando mput:
smb: \tux\> mput *.conf
Put file basic.conf? y
putting file basic.conf as \tux\basic.conf (19.9 kb/s) (average 19.9 kb/s)
Put file proftpd01.conf? y
putting file proftpd01.conf as \tux\proftpd01.conf (212.6 kb/s) (average 49.2 kb/s)
Para copiar arquivos do Servidor Windows 2000 para a máquina local use os comandos
get (copia arquivos) ou mget (copia todos os arquivos que coincidirem com o padrão
fornecido):
smb: \tux\> get Lista.rtf
getting file Lista.rtf of size 178 as Lista.rtf (17.4 kb/s) (average 17.4 kb/s)
smb: \tux\> mget *.bmp
Get file ods1.bmp? y
getting file ods1.bmp of size 717462 as ods1.bmp (830.1 kb/s) (average 820.6 kb/s)
Get file ods2.bmp? y
getting file ods2.bmp of size 1904794 as ods2.bmp (700.6 kb/s) (average 729.8 kb/s)
Como podemos perceber o smbclient é muito semelhante a um programa FTP.
Criando e restaurando backups com o smbclient
Podemos usar o smbclient para criar e recuperar backups dos arquivos compartilhados do
Samba. Os backups dos arquivos são escritos no formato tar, tornando sua criação fácil e
portável para todas as distribuições Linux/Unix.
Para criar um backup com o smbclient precisaremos primeiro especificar o tamanho do
bloco a ser utilizado pelo comando tar, em blocos de 512 bytes.
smb: \tux\> blocksize 30
blocksize is now 30
Definimos que o tamanho do bloco será 30, ou seja, 30*512 bytes (15360 bytes). Agora
definiremos o tipo de backup que será criado:
* full - Backup de todos os arquivos;
* inc - Backup incremental somente dos arquivos que tiverem o tipo de arquivo (A)
definido;
* reset - Redefinirá todos os bits de arquivo (A) que for copiado;
* noreset - Não redefinirá o bit de nenhum arquivo mesmo depois de todos terem sidos
Página Web 5 de 7
http://www.linuxnarede.com.br/tutoriais/post_art/fullnews.php?id=view&f_act=fulln... 28-01-2007
copiados;
* hidden - Backup dos arquivos com atributo hidden;
* quiet - Não imprime qualquer informação durante a operação;
* verbose - Exibe informações detalhadas sobre a execução do programa.
smb: \tux\> tarmode full
tarmode is now full, system, hidden, noreset, verbose
Há três maneiras possíveis para se criar o backup, vamos à primeira.
Na linha de comando digite:
1) Usando o comando smbclient:
# smbclient //win2kserver/Teste -U tux%password -Tc > tux_backup.tar
tar: dumped 673 files and directories
Total bytes written: 4655104
A opção -T significa executar o dispositivo tar e o parâmetro c significa criar o arquivo.
2) Usando o prompt do smbclient:
smb: \> tar c tux_backup.tar
tar: dumped 673 files and directories
Total bytes written: 4655104
3) Usando o smbtar:
# smbtar -s win2kserver -x Teste -u tux%password -t tux_backup.tar
* -s significa o nome do servidor no qual os compartilhamentos residem.
* -x significa o nome do compartilhamento.
* -u significa o nome do usuário que se conectará ao recurso.
* -t significa o backup será gravado em uma fita ou em um arquivo.
Agora vamos restaurar o backup, vamos supor que apagaram todos os arquivos do
recurso compartilhado:
1) Usando o smbclient:
# smbclient //win2kserver/Teste -U tux%tux24 -Tx tux_backup.tar
tar: restored 673 files and directories
A opção -T significa executar o dispositivo tar e o x significa extrair o arquivo.
2) Usando o prompt do smbclient:
smb:\> tar x tux_backup.tar
tar: restored 673 files and directories
Montando recursos compartilhados no Linux
No Linux, o sistema de arquivos smbfs pode ser usado para montar recursos
compartilhados em um sistema de arquivos Linux, semelhante a montagem de partições
de disco em um sistema de arquivos NFS.
Vamos montar os recursos compartilhados no servidor Windows 2000 no ponto de
Página Web 6 de 7
http://www.linuxnarede.com.br/tutoriais/post_art/fullnews.php?id=view&f_act=fulln... 28-01-2007
montagem /mnt/smb:
# smbmount //win2kserver/Teste /mnt/smb -o username=tux
# ls /mnt/smb
debian tux
O smbmount é o comando usado para montar recursos compartilhados do Samba, o
parâmetro -o significa opções. Veja as opções que estão disponíveis para o smbmount:
* username - String - Fornece o username e opcionalmente o password e o workgroup,
para a autenticação.
* password - String - Fornece o password.
* credentials - String - Nome do arquivo que contém o username e o password.
* uid - String ou numérico - User ID aplicada a todos os arquivos e diretórios do
compartilhamento montado.
* gid - String ou numérico - Group ID aplicado a todos arquivos e diretórios do
compartilhamento montado.
* Fmask - Numérico - Permissões aplicadas para os arquivos. O padrão é baseado no
umask corrente.
* dmask - Numérico - Permissões aplicadas para os diretórios. O padrão é baseado no
umask corrente.
* debug - Numérico - Nível de depuração.
* workgroup - String - Nome do workgroup do servidor remoto.
* guest - Anula a requisição de password.
* ro - Monta com permissão de somente leitura.
* rw - Monta com permissão de leitura e escrita.
* ttl - Numérico - Quantidade de tempo de cache do conteúdo dos diretórios. O padrão é
1000 ms.