Windows Server E Client Linux

Iniciado por davi.drs, 24 de Agosto de 2010, 15:48

tópico anterior - próximo tópico

davi.drs

Olá, é minha primeira postagem aqui no forúm, visto que sempre consegui uma super ajuda dos tópicos já postados aqui. Deixo registrado meus agradecimentos! ;D

Bem, vamos a dificuldade...Tenho uma rede no meu trabalho que possui um servidor Windows (2003) e a maior parte das estações de trabalho são também windows. Estamos instalando algumas máquinas com Linux (especificamente Ubuntu 10.04). Nosso primeiro desafio foi configurá-los para acessar o domínio, que já foi resolvido graças ao forum. Porém agora preciso que quando o usuário fizer o login da rede, as unidades de rede aos quais ele pertence sejam mapeadas também. Alguém tem uma idéia?  ???

Fico no aguardo e agradeço o espaço, parabéns pelo forum.
Born to be Root...linux forever!!!

zekkerj

O que vc chama de "fazer o login na rede"? Se for "abrir uma sessão na máquina" ou "fazer login no linux", dá pra usar um script de login...

... outra idéia seria criar um ícone de aplicativo, algo como "Login na Rede". Clicando nesse ícone, os mapeamentos seriam criados.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

davi.drs

O problema é o seguinte: No Windows (com a máquina já configurada no domínio), o usuário coloca o seu login e senha e as pastas de rede já são mapeadas automaticamente no Windows Explorer, puxando as informações do AD.
Por exemplo: o usuário "mário" quando logado, mapeia automaticamente o usuário dele, uma pasta pública da rede e a pasta do seu departamento.
O script de logon fica na pasta sysvol do Windows 2003 Server (que, obviamente, é o controlador de domínio da rede) e faz tudo automático.
É exatamente isso que não ocorre no Linux (por razões de segurança do próprio Ubuntu, ou por imperícia minha mesmo  :)).
Existe a possibilidade disso acontecer, ou vou ter q fazer um script para cada usuário de cada grupo passando por parâmetro a senha e o usuário)?
No Windows ele ficaria desse jeito:

net use z: \\IP_DO_SERVIDOR\%username%

net use x: \\IP_DO_SERVIDOR\Público

net use y: \\IP_DO_SERVIDOR\SETOR

Até onde pesquisei eu teria que montar de forma manual as unidades, porém quando um outro usuário qualquer de outro departamento logar, seria necessário fazer isso novamente. É isso mesmo ou existe alguma forma "mais fácil"?

Lembrando que as regras do AD são aplicadas, o usuário não tem acesso as outras pastas que não as dele ou as que ele tem permissão. Então, ele pega as configurações do AD normalmente. É só a questão da montagem das pastas mesmo.
Born to be Root...linux forever!!!

zekkerj

Bom, então vamos começar do princípio: o Linux não é o Windows. Quem muda de lá pra cá tem que estar atento que há coisas que são diferentes, e coisas que simplesmente não existem.

Uma coisa que não existe são as letras de unidade. Assim, não faz sentido a gente discutir como mapear compartilhamentos pra letras de unidade aqui.

Ou faz? Bem, qual é a função de um mapeamento, como os que você descreveu? A função seria criar atalhos para os usuários, de forma que ao invés de acessar \\servidor\publico, ele acesse "X:\".

Aqui, o que existe são operações de montagem. Então, o que faríamos seria montar o compartilhamento samba //servidor/publico, e montá-lo em um lugar mais à mão do usuário, como "/home/usuario/compartilhamentos/publico", ou talvez "/media/publico" ou ainda "/mnt/publico". Ou seja, dificilmente o atalho vai ser mais curto que a referência original...

A primeira dica, óbvia, então, seria não fazer nenhum mapeamento. Simplesmente orientaríamos seus usuários a, quando quisessem pegar alguma coisa no compartilhamento "\\servidor\publico", apontar seus gerenciadores de arquivos para "smb://servidor/publico". Isso resolveria uns 60 a 70% dos problemas.

Os 30% restantes ficariam por conta de programas como o BrOffice, que costumam ter problemas para acessar arquivos em URIs (URI? Pra encurtar, "smb://servidor/publico/arquivo.doc" é um URI, "file:///mnt/publico/arquivo.doc" também). O BrO fica mais à vontade com os compartilhamentos mapeados. Ou, montados, como a gente também diz.

Como eu imagino que a minha lenga-lenga acima não vai fazer você mudar de idéia sobre fazer os mapeamentos  ;D a primeira coisa a decidir é onde mapear os compartilhamentos. As três sugestões que fiz acima estão de pé ("/home/usuario/compartilhamentos/*", "/media/*", "/mnt/*"). É claro que, com algumas limitações impostas pelo bom-senso, você pode colocar esses mapeamentos em qualquer lugar da árvore.

Vamos supor que vc escolha usar "/mnt/*", por brevidade. O próximo passo é resolver quem faz a operação de mapeamento (montagem).

No Linux, a operação de montagem/desmontagem de um sistema de arquivos só pode ser feita pelo root (super-usuário). Como isso nem sempre é conveniente, o root pode autorizar usuários a fazer a montagem, com duas condições:
1) O ponto de montagem deve estar descrito no arquivo "/etc/fstab";
2) Esse ponto de montagem deve ter as opções "user" e/ou "users".

Isso funcionaria bem se vc tivesse um ou dois usuários, e um ou dois compartilhamentos pra cada um deles. Como são vários usuários e vários compartilhamentos, não acho que será prático.

A alternativa, então, é permitir que os usuários possam executar alguns comandos como se fossem um super-usuário. Isso é feito com o comando "sudo" (modo texto) ou "gksudo"/"kdesudo" (modo gráfico).

Normalmente esses comandos pedem a senha do próprio usuário (que tem que ter sido previamente autorizado pelo root). Com a configuração correta, no entanto, essa senha não será pedida apenas para os comandos de mapeamento. Eu acho que assim ficaria perfeito.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D