# Perguntas e Respostas

&reporting.bugs;

## Dúvidas acerca da Ligação

Não consigo pôr o &kppp; a funcionar. O &kppp; diz-me que o pppd morreu ou que um tempo-limite qualquer expirou. O que se passa?

Você leu este manual cuidadosamente? Aqui estão algumas das problemáticas mais comuns:

- Carregue no botão Detalhes. O &kppp; dar-lhe-á um excerto das mensagens de registo do PPP (poderá não funcionar nos sistemas não-&Linux; ou mesmo em algumas distribuições de &Linux;). O registo ajudá-lo-á a localizar o erro.

- Certifique-se que o pppd é o executável pppd real, e não um 'script'.

- Certifique-se que o pppd está 'setuid' para o `root`. Você poderá colocá-lo neste modo se fizer ``chmod` `u+s pppd`` como `root`.

- Confirme se o ficheiro `/etc/ppp/options` existe e se não contém nenhumas opções em conflito. Se tiver dúvidas, deixe este ficheiro em branco.

- Confirme que você não usa a opção `lock` como argumento do pppd (o &kppp; já está ele próprio a tratar do bloqueio do dispositivo).

- Remova a opção `lock` em ambos os seus ficheiros `/etc/ppp/options` e `˜/.ppprc`!

- Usando a ligação simbólica `/dev/modem` poderá causar alguns conflitos. Elimine esta fonte de problemas, usando o dispositivo real, &ie; o `/dev/cuaX` ou o `/dev/ttySX`.

  COM1 equivale a `ttyS0`, COM2 é `ttyS1` e assim por diante.

- Certifique-se que define as permissões correctas. Em caso de problemas, você poderá querer correr como 'root' e só então, quando tudo estiver a funcionar bem, dê-lhe menos permissões se não puder correr o &kppp; estando 'setuid' como `root`. A forma correcta de proceder seria a criação de um grupo `modem`.

- Você poderá estar a lançar o pppd demasiado cedo, &ie; antes de o servidor estar pronto para negociar uma ligação PPP. Se você estiver a usar um programa de autenticação, você deverá usar o terminal incorporado para verificar o seu procedimento de autenticação. Alguns fornecedores poderão obrigá-lo a enviar um simples `Send` ou um `Send ppp` para lançar o PPP. Alguns utilizadores disseram ainda que tiveram de adicionar `Pause 1` ou `Pause 2` ao programa para resolver os conflitos de tempo.

Se nada disto ajudar, você poderá obter alguma informação de depuração dos registos do seu sistema se executar:

    # tail /var/log/messages

O 'pppd' morreu - O sistema remoto necessita de se autenticar ...

A mensagem de erro típica no registo do sistema (em inglês):

    pppd[699]: The remote system is required to authenticate itself
    pppd[699]: but I couldn't find any suitable secret (password) for it to use to do so.
    pppd[699]: (None of the available passwords would let it use an IP address.)

Tanto quanto se sabe existem duas causas para este problema:

- O `/etc/ppp/options` contém a opção `auth`. Basta pôr um comentário com o `#` antes e tentar de novo.

- O seu sistema já tem uma rota ou encaminhamento por omissão. Será que configurou uma rede local? Neste caso, as versões recentes do 'pppd' comportar-se-ão como se a opção `auth` tivesse sido indicada. Para ignorar isto, você poderá adicionar a opção `noauth` aos argumentos do 'pppd' na janela de configuração do &kppp;. Em alternativa, você poderá desactivar a rede local antes de se ligar. Agradece-se que alguém possa dar instruções sobre como combinar pacificamente as duas ligações de rede.

pppd more com o kernel Linux 2.4.x

Mensagens de erro típicas no registo de sistema:

    pppd[1182]: pppd 2.3.11 started by user, uid 500
    pppd[1182]: ioctl(PPPIOCGFLAGS): Invalid argument
    pppd[1182]: tcsetattr: Invalid argument
    pppd[1182]: Exit.

Instale o pppd 2.4.0b1 ou superior. Veja `Documentation/Changes` no código do kernel para mais informações.

Porque é que o &kppp; me diz Incapaz de aceder ao modem?

Isto significa que o &kppp; não tem permissões para aceder ao dispositivo do modem ou que você seleccionou um dispositivo de modem na página Modem que não é válido. Primeiro, certifique-se que seleccionou o dispositivo de modem correcto. Logo que tenha a certeza que seleccionou o dispositivo correcto, você precisa de dar ao &kppp; as permissões correctas para aceder ao dispositivo do modem e para modificar o ficheiro `/etc/resolv.conf`, no caso de você querer que o &kppp; configure o DNS correctamente para si. Se você puder executar o &kppp; 'setuid' para `root`, isto deverá resolver todos os problemas de acesso para si, se não tiver de descobrir quais as permissões correctas necessárias para os seus fins. Para poder dar permissões de 'setuid' `root` ao &kppp;, faça o seguinte:

    % su root
    # chown root:root $KDEDIR/bin/kppp
    # chmod +s $KDEDIR/bin/kppp
    # exit

Porque é que o &kppp; me diz que não consegue criar um ficheiro de bloqueio do modem?

Isto significa, na maior parte das vezes, que você instalou o &kppp; sem o 'bit' do SETUID activo, enquanto que você, a pessoa que está a executar o &kppp;, não tem permissões de escrita para a pasta do ficheiro de bloqueio que é, por omissão, a `/var/lock`. Este é, por exemplo, o caso dos sistemas &RedHat;. Verifique a janela do modem para a localização exacta que escolheu. A solução é fácil -- execute o &kppp; SETUID se o puder fazer, ou dê permissões aos utilizadores normais para a pasta `/var/lock` ou crie um grupo do mdemo que terá acesso ao ficheiro em `/var/lock`.

Porque é que o &kppp; está instalado com o bit SETUID activo?

para >Não existe necessidade para o 'bit' SETUID, se você souber um pouco de administração de sistemas &UNIX;. Basta criar um grupo `modem` e adicionar todos os utilizadores que queira dar acesso ao modem a esse grupo, dando ao dispositivo do modem as permissões de leitura e escrita para esse grupo. Se quiser também que a configuração do DNS funcione com o &kppp;, então o ficheiro `/etc/resolv.conf` também deverá ter permissões de leitura e escrita para os membros desse grupo. O mesmo se aplica ao `/etc/ppp/pap-secrets` e ao `/etc/ppp/chap-secrets`, se quiser usar o suporte incorporado de PAP ou de CHAP, respectivamente.

A equipa do &kppp; teve algum trabalho recente para tornar o &kppp; seguro em relação ao SETUID. Mas parte de si decidir se deseja instalar e como.

Você poderá também querer ler a secção sobre Segurança.

O que é que faço quando o &kppp; simplesmente pára com a mensagem: `À Espera de OK`

Já mexeu na configuração do CR/LF? Tente o CR, o LF ou o CR/LF.

Em alternativa, o seu modem poderá necessitar de algum tempo para responder à sua inicialização. Abra a janela dos Comandos do Modem da página Modem e ajuste os tempos de Pré-Inicialização e Pós-Inicialização. Veja se você tem sucesso se aumentar drasticamente esses valores, e fazendo de seguida algum ajuste fino posteriormente.

A ligação funciona perfeitamente, mas não consigo iniciar nenhuma aplicação!

Você provavelmente seleccionou a opção Auto-Configurar o Nome da Máquina, e o servidor X tem alguns problemas a ligar-se à sua nova máquina. Se você realmente precisa desta opção (e é provável que não queira, de facto), você está infelizmente por sua conta para configurar as autorizações apropriadas. Se executar ``xhost` `+`` antes de iniciar a ligação, ficará com o problema resolvido, mas tenha em atenção os riscos de segurança envolvidos, dado que isto dará de facto a toda a gente o acesso ao seu servidor X.

O &kppp; indica uma ligação bem sucedida, mas o &konqueror; só diz Máquina desconhecida `máquina`, e o &Netscape; diz O servidor não tem um item de DNS.

Tente comunicar com outro servidor pelo seu número IP, ⪚ ``ping` `195.0.254.76``. Se isso funcionar, então você poderá tentar o seguinte:

- Verifique se indicou ao &kppp; pelo menos um endereço de DNS.

- Verifique o conteúdo do `/etc/host.conf`. Deverá existir uma linha que diz algo semelhante a `order hosts, bind`. A palavra-chave `bind` diz à biblioteca de resolução de nomes para incluir uma pesquisa no servidor de nomes ao efectuar a procura de um endereço. Se não existir essa linha, tente adicioná-la.

Como é que faço o &kppp; enviar um \n ou um \r

Basta enviar uma mensagem em branco como a do programa seguinte:

    Send                            # envia um texto em branco
    Expect           ID:
    Send             eu
    Expect           word:
    Send             esqueci
    Expect           granted
    Send             ppp

Como é que faço o &kppp; parar de se queixar: Não é possível criar um ficheiro de bloqueio?

Isso acontece porque você não tem permissões para criar um ficheiro de bloqueio. Se optou por criar um, você precisa de ter permissões de escrita na pasta respectiva (normalmente é a `/var/lock`). Isto não é de certeza nenhum problema se você deu permissões SETUID ao &kppp;. Verifique por favor a secção sobre os Ficheiros de bloqueio.

Porque é que o meu modem está a fazer tanto barulho quando se liga?

Carregue em Configurar, e de seguida em Modem. Você poderá configurar o volume do modem em três níveis: Desligado, médio e alto. Para a maioria dos modems, o médio e o alto resultam no mesmo volume. Se a alteração desta opção não funcionar, verifique se as configurações correctas do seu modem estão indicadas em Configurar, Modem, Comandos do Modem.

Eu coloquei o volume do modem como Desligado e verifiquei os comandos do modem, mas continuo a ouvir aquele barulho horrível durante a ligação. Porquê?

O texto de inicialização do volume pode não ser processado se o seu modem não reagir bem à velocidade com que está a receber os comandos do &kppp;. Aumente o valor do Atraso de Pós-Inicialização em Configurar, Modem, Comandos do Modem.

O &kppp; continua a indicar valores estranhos de velocidades como o 115200 ou o 57600

Muitos dos modems só comunicam a velocidade da linha série e não a velocidade da linha telefónica, por omissão. Você precisa de configurar estes modems para darem a velocidade verdadeira da linha, adicionando alguns comandos às mensagens de inicialização ou de marcação do modem. Para muitos modems, este comando é o `ATW2`. Se o quiser adicionar ao texto de marcação (o qual começar normalmente por `ATD`), a nova mensagem de marcação ficaria `ATW2D`.

Porque é que o &kppp; diz Velocidade desconhecida

Os novos modems normalmente têm mensagens de ligação muito complexas como por exemplo `CONNECT LAP.M/V42.bis/115000:RX/31200:TX`, e o &kppp; não consegue processar esta mensagem correctamente. Ligue a opção Mostrar o Relatório para que veja a velocidade da ligação.

Eu estou com uma ligação lenta

Se você não estiver satisfeito com a velocidade do modem, certifique-se que configurou a velocidade da ligação (você poderá aceder a ela se carregar em Configurar, Dispositivo, Velocidade da Ligação) e configurá-la para 57600 ou mais ainda. Certifique-se que as suas portas série suportam velocidades mais elevadas. Muitos dos sistemas mais antigos baseados no 'i486' não funcionam correctamente se você configurar a velocidade como 115200. Se tiver uma UART 8250 antiga, esta não irá funcionar. Se tiver uma 16550 ou uma 16550A, deverá funcionar perfeitamente.

Para além disso, você deverá consultar o manual do seu modem para procurar pelas mensagens de inicialização que activam uma velocidade alta.

Eu estou com uma ligação MESMO lenta!

Se os seus dados fluem a uma taxa de apenas alguns bytes por segundo, você deverá verificar a configuração do seu 'hardware'. Se a movimentação do seu rato acelera aa transmissão, isto é de certeza um problema de 'hardware'!

Você poderá obter algumas informações sobre a sua porta série com o comando ``setserial` `-a `/dev/ttySx``` e verificar os conflitos de interrupções com os outros componentes do seu sistema. O módulo Informação do &kcontrol; poderá também ser útil aqui.

A minha linha telefónica precisa de marcação por impulsos em vez de marcação por tons (ou vice-versa). Como é que altero isso?

Você precisa de modificar o comando de marcação do seu modem. Quase todos os modems suportam os seguintes comandos AT:

`ATDT`

- Selecciona a marcação por tons

`ATDP`

- Selecciona a marcação por impulsos

## Perguntas sobre as Regras dos Custos Telefónicos

Como é que eu crio um ficheiro de regras de custos telefónicos?

Basta seguir o ficheiro regras `TEMPLATE` que vem com o &kppp;. Você deverá ser capaz de encontrar uma cópia em `$KDEDIR/doc/HTML/`a_sua_lingua`/kppp/`. Use a opção `-r` da linha de comandos do &kppp; para verificar a sintaxe do seu ficheiro de regras proposto.

Criei um ficheiro com as regras dos custos telefónicos da minha região. Onde é que o posso submeter para que os outros possam tirar partido dele?

Será que o meu ficheiro de regras dos custos telefónicos poderá conter unidades fraccionárias de tempo como por exemplo "(0.17, 45.5)"?

Sim, isto é possível. Mas você não deverá usar unidades demasiado pequenas, que estejam abaixo de um décimo de segundo, dado que isto irá resultar numa maior carga de CPU, ainda que você possa não notar nada num CPU moderno.

O meu país contém outros feriados móveis para além da Páscoa.

Nesse caso, você terá de criar novo código que permita o cálculo desse feriado. Por favor dê uma vista de olhos no ficheiro `ruleset.cpp` e emule o exemplo easter (páscoa). Envie depois as alterações!.

## Perguntas acerca dos Registos do Sistema

Eu vejo uma mensagem que diz Serial line is looped back (a linha série está com um nó local). O que é que isto significa?

Resposta curta: O utilizador não iniciou o software de PPP no sistema remoto.

Os registos mostram Signal 15 (Sinal 15)

Se você ver as seguintes linhas, provavelmente recebeu um erro de expiração de tempo-limite do &kppp;. O &kppp; estava à espera que a interface PPP ficasse activa e acabou por desistir ao fim do tempo-limite estipulado. O pppd foi notificado para se desligar, com o sinal número 15, &ie; SIGTERM.

    pppd[26921]: pppd 2.3.5 started by me, uid 500
    pppd[26921]: Using interface ppp0
    pppd[26921]: Connect: ppp0 <--> /dev/ttyS0
    pppd[26921]: Terminating on signal 15.
    pppd[26921]: Connection terminated.
    pppd[26921]: Exit.

E a mensagem Receive serial link is not 8-bit clean (A linha de recepção série não funciona correctamente a 8 bits)

O servidor do PPP é notificado pelo facto que todos os dados que vai recebendo vêm com o bit 8 sempre a zero. Na maioria dos casos, isto simplesmente significa que o servidor PPP remoto ainda não está a correr. Você poderá à mesma ser confrontado com uma linha de comandos de autenticação que manda de volta todos os dados enviados pelo seu pppd.

e o can't locate module ppp-compress (não é possível localizar o módulo ppp-compress)? O que é isto?

Vê alguma das mensagens seguinte?

    modprobe: can't locate module ppp-compress-21
    modprobe: can't locate module ppp-compress-26
    modprobe: can't locate module ppp-compress-24

Adicione as linhas:

    alias ppp-compress-21 bsd_comp
    alias ppp-compress-24 ppp_deflate
    alias ppp-compress-26 ppp_deflate

ao seu ficheiro `/etc/conf.modules`.