Antes de começar verifique se sua rede está OK. Para ter certeza, abra um Terminal (Acesse menu -> Aplicações -> Acessórios -> Terminal) e efetue o comando ping (Ex. ping 192.168.1.20). Este ip pode ser da máquina que você pretende acessar pela rede. Se o ping estiver respondendo, quer dizer que está tudo ok. Caso contrário, verifique as definições de IP, mascara, cabeamento, etc...

O SaMBa é o sistema responsavel pela comunicação entre máquinas Unix (Linux) e Windows, usando protocolo TCP/IP. 

Quando se fala em servidores de arquivos em rede heterogêneas, na grande maioria dos casos o SaMBa será utilizado, pois ele permite compartilhamento de arquivos, diretório e impresoras, com ou sem controle de acesso (autenticação).

Bom... vamos ao que interessa. Neste tutorial irei explicar como configurar o samba no Ubuntu.

Abra um terminal. (menu -> Aplicações -> Acessórios -> Terminal)

 Primeiramente devemos baixar o pacote samba.

$ sudo apt-get install samba

Depois de concluído o download/ instalação do pacote via APT, o sistema irá criar o arquivo smb.conf dentro da pasta "/etc/samba/". Este é responsável pela configuração do Samba. Antes de mais nada, vamos fazer um back-up do arquivo:

$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bkp

Particularmente gosto do VI para editar os arquivos .conf, mas use um editor de sua preferência.
Para quem quiser usar o VI, execute o comando para editá-lo:

$ sudo vi /etc/samba/smb.conf

Comentarei somente os paramentros do arquivo smb.conf que precisaram ser alterados.

Em [global]

#nome do grupo de trabalho
workgroup = casa
#Como a máquina Linux irá aparecer na rede Windows
netbios name = servidor (está linha pode ser adicionada a baixo do workgroup)
####### Authentication #######
#Modo de acesso aos arquivos do Linux
security = "share" ou "user" (caso exista, remova o ; que está no início desta linha)
#share = para NÃO exigir autenticação
#user = para exigir autenticação
ex: security = user
Agora adicione estas linhas no final do arquivo:
#nome do compartilhamento
[arquivos]
# descrição do compartilhamento
comment = meus arquivos
# caminho da pasta, no Linux, que será compartilhada
path = /media/hdb5 #(Informe o caminho da pasta que você que quer compartilhar, pode ser /home/voce)
#se todos os compartilhamentos poderão ser acessados por todos os usuários
public = yes
# se o compartilhamento será visivel ou oculto na rede (yes para visível)
browseable = yes
# se permitirá escrita
writable = yes
# somente leitura
read only = no
# define a mascara em que os arquivos serão criados
create mask = 0700 #(terão a permissão rwx somente para o root)
# define a mascara em que os diretórios serão criados
directory mask = 0700
Salve o arquivo de configuração, e execute este comando para reiniciar o samba
$ sudo /etc/inti.d/samba restart
#nome do grupo de trabalho
workgroup = casa

#Como a máquina Linux irá aparecer na rede Windows
netbios name = servidor (está linha pode ser adicionada a baixo do workgroup)

####### Authentication #######
#Modo de acesso aos arquivos do Linux
security = "share" ou "user" (caso exista, remova o ; que está no início desta linha)
#share = para NÃO exigir autenticação
#user = para exigir autenticação
ex: security = user



Agora adicione estas linhas no final do arquivo:

#nome do compartilhamento
[arquivos]

# descrição do compartilhamento
comment = meus arquivos

# caminho da pasta, no Linux, que será compartilhada
path = /media/hdb5 #(Informe o caminho da pasta que você que quer compartilhar, pode ser /home/voce)

#se todos os compartilhamentos poderão ser acessados por todos os usuários
public = yes

# se o compartilhamento será visivel ou oculto na rede (yes para visível)
browseable = yes

# se permitirá escrita
writable = yes

# somente leitura
read only = no

# define a mascara em que os arquivos serão criados
create mask = 0700 #(terão a permissão rwx somente para o root)

# define a mascara em que os diretórios serão criados
directory mask = 0700


Salve o arquivo de configuração, e execute este comando para reiniciar o samba

$ sudo /etc/inti.d/samba restart

Caso tenha colocado security = user, no momento que for acessar por uma máquina Windows será exibido uma tela de login e senha. Para cadastrar esta senha no linux execute os seguintes comandos. Primeiramente adiciona na lista de usuarios do Linux, este comando adiciona usuario teste na lista de usuários do Linux

$ sudo adduser teste

Este comando adiciona o usuario na lista de usuários do Samba

$ sudo smbpasswd -a teste

Com esta configuração do Samba no Ubuntu, não tem erro!