Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Resolucao de problemas

Colaboração: Daniel Duclos

Data de Publicação: 06 de Dezembro de 2001

Aqui vao algumas dicas simples e truques de resolucao de problemas em informatica que aprendi e me ajudam todos os dias. Espero que seja util. Se nao for, flames para <daniduc (a) cybershark net>.

1. Leia os logs, leia os erros

Principal: na maioria dos casso o computador te diz qual é o problema!! Serio! Entao, leia os logs e leia as mensagens de erro! Elas ajudam muito a ter uma nocao do que esta ocorrendo! Leia a saida do comando no shell, entre no /var/log e leia os logs que estao la. Veja, a maioria das vezes isso te ajuda muito!

Exemplo:

Situacao: eu tenho um servidor conectiva linux e resolvi atualizar meu bind! A atualizacao ocorreu, mas notei que meu bind nao mais respondia!!!

Resolvi executar o script de incializacao na mao e ver o que acontecia:

  [root@ace init.d]# ./named start
  Iniciando named: named: -u not supported on Linux kernels older than
  2.3.99-pre3 when using threads
  [FALHOU]
  [root@ace init.d]#

Opa, o erro me diz claramente o que aconteceu! A opcao de incializacao -u do named nao é suportada com meu kernel. Abri o script e editei a opcao de inicializacao, que estava assim:

  daemon named -u named $CHROOT

para

  daemon named $CHROOT

<eu sei que isso incia o named como root e nao é o certo, é so um exemplo>

E reiniciei o rapaz:

  [root@ace init.d]# ./named start
  Iniciando named:                                           [  OK  ]
  [root@ace init.d]#

Mas ele ainda nao resolvia os nomes... opa! algo errado! Vamos verificar:

  [root@ace init.d]# ./named status
  named inativo mas seus subsistemas trancados
  [root@ace init.d]#

Arra! Mais um erro! E agora??? Ler os logs! =)

  [root@ace init.d]# tail -f /var/log/messages
  Nov 24 16:43:23 ace named[3829]: couldn't open pid file
  '/var/run/named/named.pid': Permission denied
  Nov 24 16:43:23 ace named[3829]: exiting (due to early fatal error)

Ahhhhh... erro de permissao nao permite o named inciar corretamente! ele tentou criar o arquivo named.pid no diretorio '/var/run/named/ e nao conseguiu!!

Mudamos o dono do diretorio para root e pronto:

  chown root: /var/run/named/

O named levanta direitinho:

  [root@ace init.d]# ./named start
  Iniciando named:                                           [  OK  ]
  [root@ace init.d]# ./named status
  named (pid 4215 4220 4219 4214 4210) está rodando...
  [root@ace init.d]#

2. Leia a documentacao. Serio. Leia. De novo.

Todos sabem que existem FAQ's, README's e manuais. Quando nos viravamos no DOS e no windows, ler manual era coisa de coxinhas <sim, eu era um moleque>. Clique em next e pronto, o programa esta instalado, e ninguem lia os readme.

Mas agora somos profissionais da area, usamos Linux && UNICES, os programas sao complexos e ja nao tao facil assim.

Voce teve problemas com um programa? *va ate o site do programa* e leia os docs dele. Sim, parece obvio, mas isso salva muitas vidas e nem todo mundo faz. Duvida de sendmail? www.sendmail.org! Apache?? www.apache.org! La tem toneladas de documentacao, exemplos, FAQ's e o escambau. Nada melhor do que ir direto aa fonte!!

Exemplo:

Eu recem instalei um postfix. Meu chefe quer que os mails sejam fulano@dominio como 99% dos mails, e nao fulano@maquina.dominio. Putz, nao sei fazer isso! E agora? Vamos ver o que o site da postfix me diz <http://www.postfix.org/> Chego la e tem um link chamado: Documentation, Howtos and FAQs. esse mesmo! Clico la. Encontro o link:

  * Configuration. Postfix configuration, basic and advanced.

Esse mesmo. *click*. Lendo a pagina, encontro logo no comeco um link:

;What domain to use in outbound mail - Cliquemos.

  "The myorigin parameter specifies the domain that appears in mail that is
  posted on this machine. The default is to use the local machine name,
  $myhostname, which defaults to the name of the machine. Unless you
  are runninga really small site, you probably want to change that into
  $mydomain, which defaults to the parent domain of the machine name.

Examples:

  myorigin = $myhostname (default)
  myorigin = $mydomain (probably desirable)"

Problema resolvido!!

Ah, e use o search engine do site!!!! Muitas vezes o programa contem README's, leia-os! Serio mesmo =)

3. Use o google. google is your friend.

E se a mensagem de erro nao faz nenhum sentido pra voce? E se eu nao sei o site do desenvolvedor do programa? E se a FAQ nao resolve meu problema?? Google is the answer. Google é o melhor search engine que ja encontrei! Ele tem um sistema de rankeamento muito bom, e em geral o que voce quer esta no comeco. Nao deixe a aparencia simples dele enganar voe <http://www.google.com>

Exemplo 1:

Quero ir no site do bind... e *nao* é www.bind.org <nesse tem um link pro site de verdade, mas suponhamos que nao tem>. Jogue simplesmente "bind" no google e o site correto vira <http://www.isc.org/products/BIND/>

Exemplo 2:

Jogue o erro no google! Sim, copie e cole o erro e faca uma busca! Isso muitas vezes retorna a solucao! elimne da mensagem as partes especificas, como o numero do pid, ou o nome da maquina, isso a torna mais geral e facilita. Ja vi o google achar respostas no site do fabricante que nem o proprio search engine do fabricante acha!!

4. Documente os problemas

Resolveu um problema? Documente! Anote de alguma forma, guarde o mail com a solucao, escreva no vi, no word, no ed, como for. Anote eum caderno. Imprima. Nao tem importancia. Mas confie em mim: o problema vai voltar <pode ser em outra maquina, pode ser em outro emprego> e voce nao vai lembrar como resolveu! Anote e depois *consulte* o que anotou <ja vi pessoas quebrarem a cabeca resolvendo um problema e depois descobrir que ja tinham resolvido e *notado*, era so ter lido a propria documentacao). crie um dir de documentacao. Sim, da preguica. Mas salva vidas! Ah, e se quiser, depois, divulgue e compartilhe as suas dicas =)

5. Aprenda ingles

Essa é a mais dificil e a menos especifica das minhas dicas, mas nao tem jeito: o conhecimento humano esta, na usa maioria, em ingles. Hoje em dia a lingua universal é o ingles. =/ Cada um tem um metodo para isso, entao vou ficar na minha. =//

6. Listas

Claro, ler as listas ajuda. Perguntar nas listas tambem. Ler o historico da lista tambem. Mas uma coisa que ajuda é tentar realmente resolver os problemas dos outros, mesmo que voce nao saiba a resposta. Leia o mail do outro e entre no site do fabricante, procure a FAQ q responde aquela duvida, enfim, gaste um tempo <o quanto vc puder, claro. Eu dedico muito de fim de semana pra fazer isso, por exemplo> em um problema que vc nao sabe a resposta e nao é seu. Isso é util de varias maneiras. Voce pratica resolver problemas, e como tudo na vida, a capacidade de resolucao de problemas melhora com a pratica. E voce se beneficia. Outra coisa: voce aprende coisas novas que voce pode precisar! Alem de ajudar os outros, o que é bom ;) E, de novo, compartilhe o que aprendeu!

do touch 200112$n.SRC done

Veja a relação completa dos artigos de Daniel Duclos

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.99/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1212 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script

Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Programando o Android