Compartilhamentos no samba

Iniciado por Futuratec Marcelo, 28 de Maio de 2008, 10:56

tópico anterior - próximo tópico

Futuratec Marcelo

Saudações!

Estou utilizando o Kubuntu aqui. Montei duas pastas na área de trabalho apontadas para dois caminhos diferentes dentro do nosso servidor, que está rodando o samba. Precisava que elas fossem montadas sempre que o sistema fosse iniciado, dentro do usuário que criei aqui, então adicionei os caminhos no /etc/fstab, com as devidas opções para montagem em smbfs. No entanto, as pastas ficam vazias quando reinicio o sistema. Elas só se tornam acessíveis novamente quando rodo, dentro do usuário, o comando sudo mount -a. Precisava que isso acontecesse automaticamente. Alguém pode me ajudar?

Desde já, grato.

Super64

Poste o conteúdo do seu /etc/fstab  ...
Pode ser algum pequeno detalhe...
"O gênio sem caráter nada vale."
Anatole France

Futuratec Marcelo

Olá novamente!

Já tentei diversas combinações de opções no fstab. As linhas que adicionei estão assim agora:

//192.168.2.254/sistema /home/telefone/Desktop/sistema smbfs defaults,gid=users,credentials='caminho do arquivo' 0 0

//192.168.2.254/publico /home/telefone/Desktop/publico smbfs defaults,gid=users,credentials='caminho do arquivo' 0 0

Tentei colocar diversas opções (users, user, auto, rw, exec...), mas nenhuma delas funcionou para manter os mapeamentos depois da reinicialização.

Grato.

adrboliveira

#3
Seu servidor é um Windows Server 2003?

Comigo funcionou com as opções junto ao fstab "-o username=nomedousuario password=senhadousuario", já que tratava-se de um Windows Server 2003...

Elas são inseridas junto a cada linha acima e tratam do usuário criado com permissões de acesso à pasta compartilhada pelo servidor.



Adriano Oliveira
São Luís-MA

raidicar

#4
edite o arquivo rc.local dentro de /etc/init.d

dentro dele coloque o comando que utiliza para montar, eu instalo o smbfs e utilizo a seguinte sintaxe:
smbmount //192.168.2.254/c /home/raidicar/DESTINO -o username=nome,password=senha

Eu insiro os dados logo no inicio do rc.local, deixando ele assim:

#! /bin/sh
# Montando Compartilhamento
smbmount //192.168.2.254/c /home/raidicar/DESTINO1 -o username=nome,password=senha
smbmount //192.168.2.254/c /home/raidicar/DESTINO2 -o username=nome,password=senha

PATH=/sbin:/bin:/usr/sbin:/usr/bin
[ -f /etc/default/rcS ] && . /etc/default/rcS
. /lib/lsb/init-functions

....etc...
pronto, qualquer usuario que logar terá o acesso a esse compartilhamento.

agora se vc quer compartilhamentos diferentes para usuario diferentes, ou seja, ao logar, cada user tem acesso a determinados compartilhamentos, variando de usuario para cada usuario, insira o comando para montar no .profile de cada usuario
O arquivo .profile esta oculto dentro da pasta de cada usuario, basta dar um vi .profile ou gedit .profile dentro da pasta de cada usuario, que seria /home/usuario.
Ai vc coloca comandos montando o compartilhamento que sera efetuado quando o usuario efetuar logon, o arquivo ficaria mais ou menos assim:

# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile
#umask 022

# if running bash
# Montando Compartilhamento
smbmount //192.168.2.254/c /home/raidicar/DESTINO1 -o username=nome,password=senha
smbmount //192.168.2.254/d /home/raidicar/DESTINO2 -o username=nome,password=senha

if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f ~/.bashrc ]; then
        . ~/.bashrc
....etc...
Quem ama extremamente, deixa de viver em si e vive no que ama. Na vida três coisas são certas, o amor, a morte e o Linux !
Se Platão disse, então realmente sofremos de uma perigosa doença mental.

adrboliveira

É bom só fazer uma ressalva: que a edição da senha pode torná-la de certo modo visível para um usuário mais avançado. Por isso tem uma maneira de inseri-la com proteção, que peço que pesquise a respeito pois procurei aqui em meu material e não achei. A proteção consiste em inserir credenciais de acesso que só estão disponíveis pelo usuário root. Se alguém tiver o link, agradecido.

Adriano Oliveira
São Luís-MA

Futuratec Marcelo

Salve, pessoal!

Gostaria, em primeiro lugar, de agradecer muito pelas diversas idéias apresentadas até agora. Por mais que tenha tentado, não foi possível solucionar a questão com o fstab, então utilizei a sugestão de editar o arquivo rc.local e está funcionando perfeitamente, uma vez que eu precisava de um compartilhamento em todos os usuários. No entanto, o usuário e a senha estão expostos no arquivo. Imagino que possa colocar ali apenas um atalho para qualquer script que faça a mesma função de montagem, certo? Será que alguém tem uma idéia para solucionar esta questão de segurança?

PS: respondendo à pergunta do colega, o servidor é um Slackware, mas pretendo modificá-lo o mínimo possível.

Atenciosamente,

Marcelo.

raidicar

Segurança só com um pdc, deixando que ele monte o compartilhamento, e não as estações, o que impede de ter a senha registrada no micro.
Por script como sugeriu pode ser feito e deixar o caminho no rc.local da certo, mas da na mesma, pois ao acessar o rc.local, não tem senha, mas tem o caminho para o local do script, assim, qualquer usuario intermediario pode acessar o destino e editar o script, esteja ele no proprio micro ou em uma pasta no servidor.
Afinal, qualquer um que saiba editar o arquivo rc.local que esta em uma pasta cheia de outros arquivos, sabe seguir um caminho que nele esta descrito e, se deixar o script no servidor e trancar a pasta de scripts para que ninguem a abra, ao logar, o usuario não poderá executar o script.
Concordo que é uma falha de segurança, até grave, mas o que se pode fazer se essa me parece ser a sua rede, pois se tivesse um dominio, creio que nem teria postado. Não vejo outra forma de consertar essa falha sem que esteja disposto a mexer no servidor, apesar de eu lhe dar a dica, eu não faria isso, a menos que tivesse a sua estrutura e não pudesse muda-la, ai não tem jeito, deixaria um caminho no rc.local apontando para uma pasta oculta no servidor que armazena o script que contém o usuário e a senha para a montagem do compartilhamento.
Existem outras formas de montar esse compartilhamento que eu não postei, pois acho que apesar da falha de segurança, as outras são piores. Acho que é a unica coisa a fazer em seu caso.
Se me der uma luz, eu posto aki e lhe mando uma msg.
Abraço
Quem ama extremamente, deixa de viver em si e vive no que ama. Na vida três coisas são certas, o amor, a morte e o Linux !
Se Platão disse, então realmente sofremos de uma perigosa doença mental.