Samba - Necessário Reiniciar Para Imprimir

Iniciado por coelhojhezebell, 07 de Fevereiro de 2012, 17:49

tópico anterior - próximo tópico

coelhojhezebell

Olá, boa tarde. Estou com um probleminha aqui e gostaria da opinião e dicas de vc's. É o seguintena nossa rede temos máquinas com Ubuntu 9,10  e 11. Nas máquinas como 9 ao criar compartilhamento de  impressoras, só era possivel imprimir reiniciando o Samba e como ficaria inviável ter que reiniciar todo dia e todas as vezes que reiniciasse a máquina, pesquisando na internet achamos o seguinte procedimento:

Logar Como Root, ir até a pasta:  /etc/rc2.d/

Executar os Comandos:

mv S50cups S20cups

mv S20samba S50samba

Reiniciava o sistema e executava:  smbclient -L //ip da máquina    daí ela mostrava a lista de compartilhamentos e resolvia o problema. Esse procedimento todo era feito para "subir" o cups antes do samba.

O que ocorre é que no Ubuntu 10 este procedimento não está dando certo e para usar a impressora compartilhada, toda vez que reinicia o sistema tem que restartar o samba para funcionar. Como faço no 10 para sempre subir o cups antes do samba?

Desde já agradeço a atenção de todos;

Sérgio C Coelho
"Uma pessoa com Ubuntu está aberta e disponível aos outros, assegurada pelos outros, não sente intimidada que os outros sejam capazes e bons, para ele ou ela ter própria auto-confiança que vem do conhecimento que ele ou ela tem o seu próprio lugar no grande todo." -- Arcebispo Desmond Tutu.

zekkerj

Olá coelhojhezebell,

Até algum tempo atrás, o serviço smbd era iniciado por um script no diretório /etc/init.d, assim como o serviço cups.

Agora, o smbd tornou-se um serviço "upstart", isso significa que ele não é mais controlado por esses scripts S20samba, etc. Ao contrário, há um script "/etc/init/smbd.conf" que controla a inicialização e o término do samba no boot, e é o mesmo sistema que controla também a interface gráfica (não sei se vc já observou, mas é bem complicado desativar a interface gráfica, e o upstart é a chave dessa dificuldade).

Eu olhei, olhei... olhei... e não vi uma forma simples de resolver seu problema.

Consegui pensar em algumas soluções:
1. Mudar o script do samba pra iniciar o cups antes do smbd ser iniciado.
2. Mudar o script do cups pra reiniciar o samba depois do cups ser iniciado.
3. Dar permissão de sudo ao seu usuário pra reiniciar o samba. Com o sudo, ele pode ser autorizado a fazer isso --- e só isso.
4. Criar um pseudo-serviço que rode na inicialização, depois do cups e do samba, e que "ponha as coisas no lugar". Acho que é a melhor solução.

Pra implantar a solução 4, crie o arquivo /etc/init.d/meuscript com o conteúdo abaixo:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          meuscript
# Required-Start:    $all
# Required-Stop:     $all
# Should-Start:      $network cups samba
# Should-Stop:       $network
# X-Start-Before:   
# X-Stop-After:     
# Default-Start:     2 3 4 5
# Default-Stop:      1
# Short-Description: Garante que o Samba vai reconhecer os serviços de impressão
### END INIT INFO

case "$1" in
start)
    service smbd restart
    ;;
esac


Dê permissão de execução nesse script:

sudo chmod +x /etc/init.d/meuscript

Depois cadastre o script para execução com o comando abaixo:

sudo update-rc.d meuscript defaults
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

coelhojhezebell

Deu certinho estre procedimento, muito obrigado por sua atenção, compartilhamento do seu conhecimento e rapidez na resposta. Valeu mesmo...
"Uma pessoa com Ubuntu está aberta e disponível aos outros, assegurada pelos outros, não sente intimidada que os outros sejam capazes e bons, para ele ou ela ter própria auto-confiança que vem do conhecimento que ele ou ela tem o seu próprio lugar no grande todo." -- Arcebispo Desmond Tutu.