script pppd

13. Re: script pppd

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 24/04/2012 - 22:03h

Dúvidas.

A linha:
if pppd /dev/$TTY  
faz o que exatamente ? Aparentemente gera um retorno positivo 0 (true) informando que ao ligar a máquina o serviço pppd foi carregado. É isto mesmo ?

Por que este comando é executado ? Qual a finalidade prática no script ?
  ifconfig ppp0 down 1>>  


Já o assassinato entendi corretamente
 killall -9 pppd 1>>  
Só não sei se o código é sempre este. Acho que a função que vai tentar matas deve pegar o número do pid do serviço.

Se entendi corretamente, matando o serviço pppd estaria pronto para tentar inicializa-lo novamente certo ?

Qual o comando que está sendo usado para inicializa-lo quando a máquina é ligada ?

Você desabilitou o carregamento do pppd usando o "sudo visudo" ? Assim não haverá pedidos de senhas e se deixar este script sendo inicializado quando a máquina for ligada ele vai fazer tudo que precisa e caso a conexão caia, vai tentar se recuperar sozinho.

Faltou você informar o código de modem para o teste de conexão do pppd. Acho que está na parte que você não enviou.

Responde aí rapá. Este vai ser um grande aprendizado pra mim também ;)



  


14. Re: script pppd

Lucas Doná Sfalcin
lucasdona

(usa Linux Mint)

Enviado em 25/04/2012 - 17:37h

Desculpe a demora, é que estava meio apertado aqui no trabalho. :-)
vamos lá então.
O comando "pppd /dev/$TTY" tipo que faz o modem achar seu caminho novamente, deixa eu explicar, isso é um caso a parte, pois, esse meu modem dá pau e não disca mais, isso acontece do nada, mas as portas continuam montadas normalmente, geralmente a porta que disca é a /dev/ttyUSB2, então quando executo esse comando, o modem volta a funcionar (acredito que esse seja um caso a parte, acredito que seja o firmware do modem que está desatualizado), então, esse comando serve só para isso, quem não tem esse problema igual o meu deve esquecer esse comando.

O comando "ifconfig ppp0 down", é que as vezes a interface ppp0 criada fica travada ai, não sei prq, mas fica, então, para não ter erro eu assasssino ela também. :-0

O comando "killall -9 pppd" é exatamente isso, mas mato ele prq as vezes ele agarra, mas mesmo eu finalizando com o kill -9 depois de um certo tempo consigo discar e obter conexão, então por isso que aguardo um tempo verificando a execução dele, se demorar mato ele e tento discar.

Inicio ele através de um script no /etc/init.d como root, já tentei também iniciá-lo no /etc/rc.local, nesses 2 tipos de inicializações o comportamente foi o mesmo.
Acredito que eu não preciso de desabilitar ele usando o sudo visudo, pois iniciando no rc.local ele inicia como root.

Link do script completo:

http://pastebin.com/VVNCdhvu

Qualquer dúvida sobre o código estou à disposição, abraços.


15. Re: script pppd

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 26/04/2012 - 10:49h

lucasdona escreveu:

Desculpe a demora, é que estava meio apertado aqui no trabalho. :-)


Eu que peço desculpas rsrs. Não vi ontem a sua resposta.


vamos lá então.
O comando "pppd /dev/$TTY" tipo que faz o modem achar seu caminho novamente, deixa eu explicar, isso é um caso a parte, pois, esse meu modem dá pau e não disca mais, isso acontece do nada, mas as portas continuam montadas normalmente, geralmente a porta que disca é a /dev/ttyUSB2, então quando executo esse comando, o modem volta a funcionar (acredito que esse seja um caso a parte, acredito que seja o firmware do modem que está desatualizado), então, esse comando serve só para isso, quem não tem esse problema igual o meu deve esquecer esse comando.


Ok. Então para executar este comando não precisa de permissões sudo certo ? Podemos faze-lo pelo script também.


O comando "ifconfig ppp0 down", é que as vezes a interface ppp0 criada fica travada ai, não sei prq, mas fica, então, para não ter erro eu assasssino ela também. :-0


Ok, só preciso saber então a sequência que você faz. Se o assassinato depende do comando /dev/ttyUSB2 ou pppd /dev/$TTY para que na lógica de controle do script faça a coisa certa.


O comando "killall -9 pppd" é exatamente isso, mas mato ele prq as vezes ele agarra, mas mesmo eu finalizando com o kill -9 depois de um certo tempo consigo discar e obter conexão, então por isso que aguardo um tempo verificando a execução dele, se demorar mato ele e tento discar.


Ok, esse temporizador que vai aguardar poderá ser regulável. Se existir alguma forma de saber o momento que ele pode ser disparado seria bom.


Inicio ele através de um script no /etc/init.d como root, já tentei também iniciá-lo no /etc/rc.local, nesses 2 tipos de inicializações o comportamente foi o mesmo.
Acredito que eu não preciso de desabilitar ele usando o sudo visudo, pois iniciando no rc.local ele inicia como root.


Não sei não. O problema é você sem permissões conseguir matar um serviço que em tese foi iniciado pelo root. Acho que tem algum problema aí.


Link do script completo:

http://pastebin.com/VVNCdhvu

Qualquer dúvida sobre o código estou à disposição, abraços.


ok. Agora vou baixar o código completo e vou colocando as dúvidas por aqui.




16. Re: script pppd

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 26/04/2012 - 11:22h

Olá lucasdona, seria legal você colocar aqui o que retorna de alguns comandos.

É possível você fazer o processo na mão para poder reportar aqui o que acontece em termos de mensagens ?

A variável CONEXAO parece ter 3 valores possível. Você tem 3 modens 3g ? Não deveria estar dentro da variável o número do seu modem 3g ?


Execute estes comandos e me diga os retornos.
É importante você executar a bateria deles de duas formas.

1ª) Todos comandos com sua conexão funcionando.
2ª) Todos comandos quando sua conexão NÃO está funcionando.
Não precisa ficar esperando a conexão ficar fora do ar. Pode me enviar a 1ª opção antes.

$ ps auxc | grep "wvdial"

$ ps auxc | grep "pppd"

$ ifconfig ppp0

$ ps auxc | grep "avahi-daemon"

$ ps auxc | grep "TTY"

Não se preocupe com a quantidade de linhas, deve enviar o retorno de cada um inteiro.



A variável GLOBAL $LOCAL_LOG está sendo sobrescrita com dois endereços diferentes. Uma hora ela seu local e outra está pegando valores do discador. Se existe algum log do discador, poderia enviar algum pedaço dele aqui ?

A ideia é deixar uma variável de log só para este script em forma de passo a passo.
Quando puder retornar, darei continuidade. ;)

ps: Apaguei os outros tópicos que só tinham o código inicial do script para limpar a área.





17. Re: script pppd

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 26/04/2012 - 12:40h

Tentando instalar uma conexão wired para simular uma conexão...


18. Re: script pppd

Lucas Doná Sfalcin
lucasdona

(usa Linux Mint)

Enviado em 26/04/2012 - 15:33h

* Acredito que não seja problema com permissão, pois se ele inicia como root, então, não teria problemas ao executar um comando.

* Quanto ao log, ele só é direcionado para um local, LOCAL_LOG="/etc/discador/discador.log", só gera um log.
O que vc deve ta vendo é que ele gera um .tmp para controlar o log, pois se eu remover as 100 linhas direramente no arquivo de log dá erro, então o log tmp que é criado serve só pra isso.

* Referente as 3 conexões que eu tenho, não são 3 modens não, são 3 portas diferentes que ele é montado na inicialização, é o o caso que falei de ligar com energia e só usando bateria. Para melhor entender, vou fazer tipo uma simulação logo abaixo:

- ranquei a tomada da parede, liguei o tablet, ele monta as portas

/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2. a que disca é a ttyUSB1

- pluguei o cabo na energia, liguei o tablet, ele monta as portas

/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2 /dev/ttyUSB3. a que disca é a ttyUSB2

Por isso que tem a variável CONEXÃO.

* Quanto aos retornos que vc pediu, vou enviar um log aqui gerado em algum dia pra vc dar uma olhada.

Link http://pastebin.com/VDAVcD4U

Repare no log,

na linha 73 já tá "modem não respondendo" daí quando tenta a 3a vez que não consegue conexão executa o pppd /dev/ttyUSB2, daí fica nesse loop, encerrando pppd, tentando conexão, não consegue, inicia pppd de novo, não consegue, daí fica pra sempre, mas se eu finalizo o discador, executo pppd /dev/ttyUSB2, aguardo os mesmos segundos que o script, depois tento discar, funciona, ou seja, to fazendo a mesma coisa que o script, só que ele mata o pppd disca e não consegue, eu faço exatamente a mesma coisa que ele e consigo conexão, é aí que nun entra na minha cabeça, se eu consigo ele tmb tinha que conseguir.


19. Re: script pppd

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 26/04/2012 - 17:09h

lucasdona escreveu:

* Acredito que não seja problema com permissão, pois se ele inicia como root, então, não teria problemas ao executar um comando.

* Quanto ao log, ele só é direcionado para um local, LOCAL_LOG="/etc/discador/discador.log", só gera um log.
O que vc deve ta vendo é que ele gera um .tmp para controlar o log, pois se eu remover as 100 linhas direramente no arquivo de log dá erro, então o log tmp que é criado serve só pra isso.

* Referente as 3 conexões que eu tenho, não são 3 modens não, são 3 portas diferentes que ele é montado na inicialização, é o o caso que falei de ligar com energia e só usando bateria. Para melhor entender, vou fazer tipo uma simulação logo abaixo:

- ranquei a tomada da parede, liguei o tablet, ele monta as portas

/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2. a que disca é a ttyUSB1

- pluguei o cabo na energia, liguei o tablet, ele monta as portas

/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2 /dev/ttyUSB3. a que disca é a ttyUSB2

Por isso que tem a variável CONEXÃO.

* Quanto aos retornos que vc pediu, vou enviar um log aqui gerado em algum dia pra vc dar uma olhada.

Link http://pastebin.com/VDAVcD4U

Repare no log,

na linha 73 já tá "modem não respondendo" daí quando tenta a 3a vez que não consegue conexão executa o pppd /dev/ttyUSB2, daí fica nesse loop, encerrando pppd, tentando conexão, não consegue, inicia pppd de novo, não consegue, daí fica pra sempre, mas se eu finalizo o discador, executo pppd /dev/ttyUSB2, aguardo os mesmos segundos que o script, depois tento discar, funciona, ou seja, to fazendo a mesma coisa que o script, só que ele mata o pppd disca e não consegue, eu faço exatamente a mesma coisa que ele e consigo conexão, é aí que nun entra na minha cabeça, se eu consigo ele tmb tinha que conseguir.


Maravilha, agora estou entendendo legal. :)
Tentarei logo mais a noite se a bela me largar cego kkkk





20. Re: script pppd

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 26/04/2012 - 20:45h

Falta a lógica do corpo inicial do Script e o loop que vai controlar as fases.
Acho que não falta nenhuma função ou rotina repetida que precise ir para funções.
Agora preciso da lógica escrita, ex:

1 - Quando inicia a máquina ele dispara o serviço ppp
2 - Depois ele carrega o wdial...
3 - etc...

A lógica natural do processo funcionando. Depois vamos para a lógica de falha.



#!/bin/bash
# Script.......: discador3g.sh
# name.........: Roda em background ativando e desativando a conexão 3g
# Author.......: lucasdona
# Co-Authores..: Gatux
# Employees....: @foxbit3r e todos que ajudaram na solução do problema.
# charset......: UTF-8
# endofline....: Linux
# since........: 2012-04-26 13:13 (GMT -03:00)
# license......: GPL 3
# system.......: GNU bash, version 3.x
# version......: alfa 0.4
# more.........: Script vai tentar manter conexão ativa.
#-----------------------------------------------------------------------------#
#set -x # Liga Debug de tudo.
#trap read DEBUG
DEBUG=9 # 0=Inativo 1,2,3,4,5,6,7,8 e 9 ativam o debug.
###############################################################################
# CHANGE LOG
###############################################################################
#-----------------------------------------------------------------------------#
# Alfa 0.4
# ========
# - Removido funções desnecessárias.
# - Alterado funções com novos testes.
# - Falta montar o corpo inicial e o loop de testes.
#-----------------------------------------------------------------------------#
# Alfa 0.3
# ========
# - Novas funções incluídas.
# - Preparação para trabalhar como DAEMON inicializada.
# - Neste momento está fazendo apenas o teste do loop e saída via arquivo.
#-----------------------------------------------------------------------------#
# Alfa 0.2
# ========
# Iniciado reformulação do script ( Gatux )
#-----------------------------------------------------------------------------#
# Alfa 0.1
# ========
# ????-??-?? - Criado script por lucasdona
#-----------------------------------------------------------------------------#
# Área reservada para variáveis globais caso haja necessidade.
#-----------------------------------------------------------------------------#
PROGNAME=$(echo $(basename "$0") | sed 's:.sh::') # Nome do aplicativo.
CONT_PPPD=0 # Contador de tentativas.
#LOCAL_LOG="/tmp/${PROGNAME}.$$" # Arquivo temporário de log desta chamada.
LOCAL_LOG="/etc/discador/discador.log"
OLD_LOG="/etc/discador/old_log_discador.log" # Atenção para permissão no arquivo.
PPPD_FLAG=true # Não sei para que serve.
SLEEP_TIME=3 # Tempo genérico que irá aguardar.
PPPD_RETORNO=false # Variável de retorno do MODEM. true = conectado.
FILE_STOP_LOOP_DISCADOR="/tmp/end_discador3g.txt" # Tira Daemon do ar.
USER_INTERRUPT=13 # Interrupção solicitada pelo usuário.
PSAUX=0 # Usada no retorno de processos que verificam se o modem ok.
CONEC_3G_INICIAL=0 # Momento que ficou sabendo da conexão ON = date "+%s"
QT_PORTAS=3 # Usado para saber se está ou não com energia.
MAX_LOG=50000 # Quantidade máxima de linhas do arquivo de log.
#-----------------------------------------------------------------------------#
# Área reservada para todas as funções que o script irá precisar.
#-----------------------------------------------------------------------------#
function conectar3g()
{

local time_ini time_fim
# Só poderá entrar nesta função caso a conexão tenha morrido.

echo "Conectando wvdial, aguarde..." >> $LOCAL_LOG

time_ini=$(date "+%s") # Marca o tempo que iniciou tentativa.

wvdial $CONEXAO 1>> $LOCAL_LOG 2>&1 & #tenta conectar utilizando o discador wvdial

# Usando wait você vai conseguir pegar o tempo real que vai demorar.
# Se este processo travar tudo, retire o wait.
# Você precisa saber que se ele demora tanto deve ter travado.
# Não tenho como testar esta parte.

wait # Fica aguardando retorno em bg

time_fim=$(date "+%s") # Pega o tempo final.

time_conection=$(($time_fim-$time_ini)) # Tempo que demorou para conectar.

echo "Demorou ${time_conection} segundos para conectar no wvdial..." >> $LOCAL_LOG

}

function TestaPortas()
{
local lc_qtde_portas

# Coleta a quantidade de portas.
lc_qtde_portas=$(ls /dev/ttyU* 2>/dev/null | wc -l 2>/dev/null)
# Força reatualização da qtde de portas.
QT_PORTAS=${lc_qtde_portas}
echo $QT_PORTAS

}
function TestaConexao()
{
local lc_my_conection lc_retorna_status

# Testa retorno de ping.
# Se teste 0 = [DESCONECTADO]
# Função retorna 2 status. [CONECTADO] ou [DESCONECTADO]
lc_my_conection=$(ping -c 2 www.google.com.br | wc -l)
if [ ${lc_my_conection} -gt "0" ]; then
lc_retorna_status="[CONECTADO]"
else
lc_retorna_status="[DESCONECTADO]"
fi
echo $lc_retorna_status
}


function Desconecta3g()
{
: # Força a desconexão do modem 3g
: # Falta a lógica da desconxão.
: # O ideal é que ela execute todas as fases.
: # Igual o que é feito ao ligar a máquina, mas só que ao contrário.
}

function AguardaTimeout()
{
# Configura o tempo e intervalo em que a conexão será testada.
# Se não enviar parâmetro algum, vai usar o valor da variável pública.
# Geralmente vai receber solicitações das funções:
# Conectado, Executando, TestaPPPd, etc...
lc_sleep_time=${1:-"${SLEEP_TIME}"} # Hoje está em 3 segundos.
sleep ${lc_sleep_time}
}

function Conectado()
{
: # Recebe ok que tudo está bem com a conexão.
: # Vai passar por esta função sempre que estiver ok para controlar
: # futuros timeouts de testes.
}

function executando()
{
: # Controla o momento em que está aguardando a finalização dos timeouts.
: # Será neste local que vamos tentar a conexão passando parâmetros.
#
}

function TestaPPPd()
{
local lc_tty lc_tty_retorno

echo "usando porta:" $TTY >> $LOCAL_LOG

# Testando retorno do $TTY
lc_tty=$(pppd /dev/$TTY)

#Aqui tenta resolver meu problema de "modem não respondendo"
# fazendo isso funciona novamente.
# Tenho dúvidas se este processo é eficaz.
if [ ${lc_tty} ]; then
echo "pppd tty iniciado com sucesso" >> $LOCAL_LOG
lc_tty_retorno="[OK]"
else
echo "erro ao iniciar pppd /dev/tty, reiniciar o sistema" >> $LOCAL_LOG
lc_tty_retorno="[OFF]"

fi
echo ${lc_tty_retorno}

function Kill3g()
{
local lc_conection="$1"
# param1 = recebe o nome da conexão que deseja matar.
# Precisa estar rodando em root ou com sudo.
if [ ${lc_conection} == "wvdial" ]; then
echo "Matando processo wvdial" >> $LOCAL_LOG
killall wvdial >> $LOCAL_LOG 2>&1
fi
if [ ${lc_conection} == "pppd" ]; then
echo "Matando processo pppd" >> $LOCAL_LOG
killall pppd 1>> $LOCAL_LOG 2>&1
fi
if [ ${lc_conection} == "avahi-daemon" ]; then
echo "Matando avahi-daemon" >> $LOCAL_LOG
killall -9 avahi-daemon 1>> $LOCAL_LOG 2>&1 #andei matando esse processo tmb, junto com o pppd, daí conectava
fi
if [ ${lc_conection} == "ppp0" ]; then
echo "matando ppp0" >> $LOCAL_LOG
ifconfig ppp0 down 1>> $LOCAL_LOG 2>&1
fi

}

function help_me()
{
: # Envia um choque no note caso a conexão tenha morrido. kkkk brincadeira.
}

function ExecPSaux()
{
# Lida com o carregamento e filtro dos parâmetros dos processos.
local lc_name_processo lc_psaux
# Note que estou usando um processo qualquer. Não consigo simular o seu.
# Geralmente vai usar o nome do serviço, ex: wvdial
lc_psaux=$(ps auxc | grep -i "${lc_name_processo}" | wc -l )

# Retorna 0(zero) se não localizou o processo ativo.
# Não consigo testar esta parte porque não tenho o processo rodando.
if [ $lc_psaux == "1" ]; then
PSAUX=$lc_psaux # Retorno para ser usado no teste de atividade.
fi
# Debug 3 "Valor do lc_psaux: $lc_psaux [F:$FUNCNAME L:$LINENO]"
}

#gera um log para ver o comportamento do discador
function gerar_log()
{
# Toda vez que ele entra no discador ele deixa o arquivo com 100 registros ?
cp /etc/discador/discador.log /etc/discador/discador.log.tmp
sed -i '1,100d' /etc/discador/discador.log.tmp
cat /etc/discador/discador.log.tmp > /etc/discador/discador.log
}


#-----------------------------------------------------------------------------#
# INÍCIO >>> function Debug()
# PARAM:
# 1 - Nível de erro.
# 2 - Grava log ou mensagens para debug (precisa de ajustes)
#-----------------------------------------------------------------------------#
function Debug()
{

#-------------------------------------------------------------------------#
# Só vai mostrar o Debug se for maior que 0.
# Se no programa principal deixar o DEBUG com 1, mensagem de Debug que
# forem do grupo 2 não serão mostradas.
# Caso queira mesmo ver todas as mensagens, configure o DEBUG=9
#-------------------------------------------------------------------------#

DEBUG=${DEBUG:-0} # Caso não exista a variável.

[ "$1" -le ${DEBUG} ] || return

local prefixo arquivar

case "$1" in
1) prefixo="{TEXTO}33[33m-- $*{TEXTO}33[m";;
2) prefixo="{TEXTO}33[32m---- $*{TEXTO}33[m";;
3) prefixo="{TEXTO}33[31m------ $*{TEXTO}33[m";;
4) prefixo="{TEXTO}33[34m------ $*{TEXTO}33[m";;
5) prefixo="{TEXTO}33[41;33;1m---------- $*{TEXTO}33[m";;
*) echo -e "Mensagem não categorizada: {TEXTO}33[41;33;1m$*{TEXTO}33[m"; return;;
esac
shift
if [ "$1" == "DEBUG-" ]; then
set -x # Liga Debug de tudo.
trap read DEBUG # Aguarda comando do usuário [ENTER] para prosseguir.
shift
fi
if [ "$1" == "DEBUG+" ]; then
set +x # Desliga Debug de tudo.
trap "" DEBUG # Desativa necessidade do [ENTER] para prosseguir.
shift
fi

echo -e "$prefixo"


# Recebe parâmetros com os erros.
# 1 - Nível do erro.
# 1 - Mensagens genéricas de localização ("Estou neste local")
# 2 - Mensagens para localizar fluxo ("Entrei no loop")
# 3 - Mensagens com conteúdo de variáveis importantes.
# 4 - Mensagens com conteúdo de variáveis secundárias.
# 5 - Mensagens de conteúdo CRÍTICO e possíveis erros fatais.
# 2 - A sua mensagem digitada na linha do script.
# Você pode digitar várias mensagens.
# Esteja ciente que a saída do Debug irá mostrar todos juntas.

}
#-----------------------------------------------------------------------------#
#FIM >>> function Debug() RETORNA: NADA.
#-----------------------------------------------------------------------------#

function FN_control_c()
{
DEBUG=9
set +x
clear
echo
echo "#################################################"
echo "## Encerrando o DAEMON $(basename "$0") !!!! "
echo "#################################################"
echo
# Preciso gerar o arquivo de trava só para os serviços rodando.
DEBUG=0 # Se quiser saber o que está sendo encerrado deixe com 9.
# Se quiser apagar arquivos, aqui deve receber a função ou comandos.
if [ -f ${FILE_STOP_LOOP_DISCADOR} ]; then
rm ${FILE_STOP_LOOP_DISCADOR}
fi

exit 0
}


#-----------------------------------------------------------------------------#
# FIM da Área reservada às funções do script.
#-----------------------------------------------------------------------------#

#-----------------------------------------------------------------------------#
# Quando quiser encerrar o programa, pressione CTRL+C
#-----------------------------------------------------------------------------#
trap FN_control_c $USER_INTERRUPT TERM INT HUP SIGINT SIGTERM
#-----------------------------------------------------------------------------#

# Não está funcionando. Funções estão quase 100% preparadas.
# Deveremos ter 2 processos em while.
# Abaixo apenas uns exemplos de uso.
# Preciso agora da lógica, sequência escrita.
# Qual a primeira coisa a ser feita ? Qual comando ?
# Está faltando alguma função que ainda não está lá em cima ?
##############################################################################
QT_PORTAS=$(TestaPortas) # Retorna as portas.

Minha_Conexao=$(TestaConexao) # Recebe retorno positivo ou negativo.


# Matar conexões, exemplos. Falta alguma ?
Kill3g "wvdial"
Kill3g "pppd"
Kill3g "avahi-daemon"
Kill3g "ppp0"
##############################################################################



Wish List:
==========

1- Renovar arquivo de log.
2- Medir tempo médio que costuma perder a conexão.
3- Cutucar a conexão para evitar que fique Down por inatividade.
4- Viva o Linux kkk


[quote]
REFORÇANDO:
===========
na linha 73 já tá "modem não respondendo" daí quando tenta a 3a vez que não consegue conexão executa o pppd /dev/ttyUSB2, daí fica nesse loop, encerrando pppd, tentando conexão, não consegue, inicia pppd de novo, não consegue, daí fica pra sempre, mas se eu finalizo o discador, executo pppd /dev/ttyUSB2, aguardo os mesmos segundos que o script, depois tento discar, funciona, ou seja, to fazendo a mesma coisa que o script, só que ele mata o pppd disca e não consegue, eu faço exatamente a mesma coisa que ele e consigo conexão, é aí que nun entra na minha cabeça, se eu consigo ele tmb tinha que conseguir.


Preciso saber todas as fases do discador. Conexão e desconexão. Quais scripts fazem esta tarefa e seus comandos.



21. Re: script pppd

Lucas Doná Sfalcin
lucasdona

(usa Linux Mint)

Enviado em 02/05/2012 - 09:11h

Acho que é problema com o próprio modem, pois, nem resetar ele por comando AT eu consigo. Acho que vou entrar em contato com o fabricante e ver alguma coisa, se tem algum firmware de atualização ou algo parecido.


22. Re: script pppd

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 02/05/2012 - 09:43h

lucasdona escreveu:

Acho que é problema com o próprio modem, pois, nem resetar ele por comando AT eu consigo. Acho que vou entrar em contato com o fabricante e ver alguma coisa, se tem algum firmware de atualização ou algo parecido.


ok. Me avisa então para ver se vamos continuar desenvolvendo o script ou não. ;)

Tá na ponta da agulha é só vc me retornar o solicitado.







01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts