Esse blog visa ajudar meus colegas técnicos a solucionarem problemas encontrados nos laboratórios Proinfo-MEC.

quinta-feira, 2 de dezembro de 2010

Compartilhando pastas na rede usando o Samba

Para compartilhar pastas na rede desconheço um programa melhor que o Samba, com ele tanto as maquinas Linux quanto Windows acessam as pastas compartilhadas no Linux Educacional.

Vou ensinar aqui a compartilhar pastas usando o laboratório multiterminal e demais Proinfo com Linux Educacional.

Farei também uma rápida explanação sobre o samba.

Primeiro você deverá instalar o samba, normalmente já vem instalado no Educ, mas caso você seja um dos poucos "pé-frio" que teve o azar de não ter o samba instalado, instale-o.
Abra um Konsole, menu Iniciar/Sistema/Konsole.
Vire root com o comando su
digite a senha do root (deve ser qwe123)
Instale o samba com os comandos:

apt-get update
apt-get install samba
apt-get install smbclient

O arquivo que controla o samba é o /etc/samba/smb.conf
Nesse arquivo você define quais pastas serão compartilhadas e como será esse compartilhamento.
Abaixo vai um exemplo de um smb.conf que uso constantemente.

[global]
workgroup = escola
netbios name = pc-01
server string =
name resolve order = lmhosts, host, wins, bcast
printcap name = lpstat
encrypt passwords = yes
wins support = yes
obey pam restrictions = yes
passwd program = /user/bin/passwd %u
passwd chat = *Enter\snew\sUNIX\spassword:*%n\n
*Retype\snew\sUNIX\spassword:*%n\n .
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
panic action = /user/share/samba/panic-acrion %d
invalid users = root
printing = cups
print command = lpr -P %p -o raw %s -r
lpq command = lpstat -o %p
lprm command = cancel %p-%j
include = /etc/samba/dhcp.conf
client code page = 850
character set = ISO8859-1
preserve case = no
short preserve case = no
default case = lower

[aluno]
path = /home/aluno
available = yes
browseable = yes
valid users = aluno, professor

[professor]
path = /home/professor
available = yes
browseable = yes
valid users = professor

Este arquivo serve para maquinas onde existem apenas as contas de aluno e professor, portanto não está pronto para ser usado no multiterminal, onde existem contas aluno1, aluno2, aluno3 e professor.
Você pode copiar esse arquivo para seu /etc/samba/smb.conf
Mas para que fique funcional aconselho a "esvaziar" o conteúdo do arquivo /etc/samba/smb.conf com o comando:

cat "" > /etc/samba/smb.conf

Ao dar enter irá aparecer uma mensagem de arquivo não encontrado, é normal.
Agora selecione o conteúdo do arquivo aqui no blog e copie usando Control+C, abra um konsole como root, edite o arquivo /etc/samba/smb.conf com o comando:

nano /etc/samba/smb.conf

O arquivo deverá estar vazio, pressione as teclas Shift+Insert e o conteúdo do arquivo será colado no seu smb.conf. Pressione Control+o para salvar, enter e Control+x para sair.

Seu computador já terá as pastas aluno e professor compartilhadas, mas você não terá acesso ao compartilhamento ainda, falta um pequeno detalhe.
O samba é independente do sistema mas está sujeito as permissões deste, então para acessar as pastas os usuários deverão também existir no samba, para isso vamos criar os usuários no samba, usando o comando:

smbpasswd -a aluno
digite a senha do aluno e repita ela, a senha tem que ser idêntica a do sistema

smbpasswd -a professor
digite a senha do professor e repita ela, a senha tem que ser idêntica a do sistema

Reinicie o samba com o comando :

/etc/init.d/samba restart

Antes de ensinar a acessar os documentos pela rede vamos falar um pouco sobre o conteúdo do arquivo smb.conf que postei acima.

A seção:

[global]
workgroup = escola
netbios name = pc-01

Identifica o nome do grupo de trabalho (escola) e o nome do computador (pc-01), você deverá modificar essas duas opções atendendo a sua realidade e interesse em cada computador.

A seção:

[aluno]
path = /home/aluno
available = yes
browseable = yes
valid users = aluno, professor

É o momento em que estamos compartilhando a pasta do aluno, note que ela está disponível (available), caso não esteja não aparecerá na rede, navegável (browseable), usuários validos são o aluno e o professor, observe que não tem permissão de escrita, uso dessa forma para que os outros computadores vejam os documentos mas não danifiquem os dados dos outros usuários, caso alguém queira abrir ou editar os documentos na rede, deverá primeiramente copiar para seu computador e editar, justamente para preservar os documentos em seu local de origem.
Note também o caminho (/home/aluno), se fosse o multiterminal o caminho seria /home/aluno1 ou /home/outro_usuario.
É bom lembrar que se for usar esse mesmo arquivo no multiterminal, deverá ser criados no samba os usuários aluno1, aluno2, aluno3 e professor e a seção;

valid users = aluno, professor

Deverá ser adequada a realidade do multiterminal e ao interesse do configurador.

Para acessar os computadores pela rede.

Os técnicos mais otimistas abrem uma janela do konqueror, pode ser a pasta do usuário e na barra de endereços digita:

smb://

Da enter e espera que seja montado o grupo de trabalho, não confio nessa técnica porque às vezes não dá certo. Aconselho aqui fazer o que realmente funciona. No lugar de digitar smb:// digite:

smb://IP do computador que você quer acessar, ex.: smb://192.168.0.135



Imediatamente irá aparecer as pastas compartilhadas, clique duas vezes na pasta que você quer abrir. Como esta é uma rede segura irá aparecer uma janela de autenticação, digite o nome do usuário e sua senha, ex.: para acessar a pasta do aluno o usuário é aluno e a senha é aluno. Mais uma vez repito, você verá os arquivos mas não poderá abrir ou modificar, se quiser fazer isso copie os arquivos e cole no seu computador.


3 comentários:

  1. E ai mestre, boa noite!
    To presisando de um help.
    Preciso saber se tem como instalar o programa CADSUS MULTIPLATAFORMA e um S.O. Linux.
    Ele está nesse link: http://cartaonet.datasus.gov.br/
    Isso faz parte do programa Cartão do SUS do Governo Federal.

    Grato antecipadamente,
    Ilton Edson

    ResponderExcluir
  2. Muito bom tutorial,mas em multiterminais eu prefiro usar o nfs o que vc acha?parabens pelo seu blog

    ResponderExcluir
  3. O NFS é muito bom e estável, uso o samba por dois motivos. O windows tbm enxerga os documentos na rede e o Access Point limita muito a rede, principalmente se ativar a oção sync no /etc/exports. Obrigado pelo comentário. Felicidades e sucesso.

    ResponderExcluir