Guia de solução de problemas gerais GNU/Linux para iniciantes

Guia de solução de problemas gerais GNU/Linux para iniciantes

Solucionar problemas de hardware

Quando o kernel começa, ele carrega os drivers e módulos de hardware necessários com todas as mensagens que incluem detalhes de falha de hardware. Mas as mensagens rolem muito rapidamente, e é impossível dar uma boa olhada em possíveis problemas de hardware. No entanto, as mensagens exibidas durante o processo de inicialização do kernel são salvas no buffer de anel do kernel.

À medida que o sistema aumenta, use o DMESG comando para escrever essas mensagens em um msg.TXT arquivo.

ubuntu@ubuntu: ~ $ dmesg> /tmp /msg.TXT
ubuntu@ubuntu: ~ $ menos /tmp /kernel_msg.TXT

As mensagens salvas podem ser revisadas posteriormente ou enviadas a alguém para depurar o problema.

Outra maneira de ler essas mensagens é verificar os arquivos/var/log/dmesg ou/var/log/mensagens.

Alguns sistemas Linux que suportam o SystemD armazenam essas mensagens no Systemd Journal. Use o JournalCtl comando para verificar as mensagens do kernel:

ubuntu@ubuntu: ~ $ journalctl -k | menos

Verifique as mensagens que indicam a falha dos recursos de hardware ou falharam em carregar drivers.

Resgate do grub

Grub é um programa de software instalado por distribuições que inicializam o sistema operacional baseado em kernel. Atualmente, todas as distribuições Linux estão usando a versão Grub2. Às vezes, é possível que, quando o BIOS iniciar o Grub2, ele chega ao problema de nenhum 'sistema de arquivos operacionais' ou “sistema de arquivos desconhecido”.

O erro sugere que o grub não pode encontrar o sistema operacional correto para carregar e localizar o grub.arquivo CFG na partição errada. Isso acontece quando o usuário instala o Windows após o Linux OS e o BIOS identifica discos na ordem errada, pois o Windows inicia seu carregador de inicialização no Master Boot Record (MBR).

O erro aparece assim:

Erro: sistema de arquivos desconhecido.
resgate do grub> _

Nesta seção, discutiremos duas maneiras de recuperar a distribuição do Grub Rescue:

Método i

Introduzir o ls Comando no terminal de resgate do GRUB para listar todas as unidades e partições disponíveis.

Grub> ls
(HD0), (HD0, MSDOS1) (HD0, MSDOS2)

Selecione a partição que contém a distribuição instalada. Geralmente, é inicializado da primeira partição; Caso contrário, ele gera uma mensagem de erro. Execute os seguintes comandos para pesquisar o arquivo de configuração do GRUB no diretório GRUB2:

grub> ls (hd0, msdos1)/
Grub> LS (HD0, MSDOS1)/GRUB2
dispositivo.Mapa Fontes Grub.CFG Grub.cfg.1590068449.RPMSAVE GRUBENV I386-PC LOCALE

Tipo set root = (hd0, msdos1) Para inicializar o sistema. Agora use o Definir prefixo comando para definir o caminho para o diretório GRUB2. Tipo INSMOD NORMAL comando para reiniciar o sistema. Após a reinicialização, abra o terminal para atualizar o grub.

ubuntu@ubuntu: ~ $ sudo update-grub

A última etapa é instalar o Grub no MBR (Master Boot Record), pois o Windows inicia seu carregador de inicialização. Esta etapa requer montagem da partição raiz /dev /sda1 no diretório /mnt.

ubuntu@ubuntu: ~ $ sudo monte /dev /sda1 /mnt
ubuntu@ubuntu: ~ $ sudo grub-install --root-diretório =/mnt//dev/sda

O sistema pode deixar de inicializar através do INSMOD NORMAL comando, que pode acontecer devido a um sistema de arquivo ruim de falta de grub.arquivo conf. O problema exige que o usuário inicialize no sistema através de um USB/CD ao vivo da distribuição. Vamos discutir outra técnica ideal para resgatar Grub2.

Método II

REPAIRO DE BOOT é uma ferramenta gráfica que oferece uma solução ideal para problemas de larpagem. Inicialize na área de trabalho através de um USB/CD removível ao vivo. Verifique se o dispositivo está conectado à Internet e pressione Ctrl+Alt+T para abrir o terminal. Agora instale a ferramenta de reparo de inicialização:

ubuntu@ubuntu: ~ $ sudo add-prot-repository -y ppa: yannubuntu/boot-répair
ubuntu@ubuntu: ~ update APT-Get Apt-Get
ubuntu@ubuntu: ~ $ sudo apt-get install -y boot-repair && boot-repair

Siga as opções recomendadas para reparar o sistema. Reinicie seu sistema após o reparo da inicialização aplicar todas as alterações. O sistema operacional será inicializado normalmente.

Solução de problemas de rede

Para usuários regulares, a conectividade de rede ocorre automaticamente assim que o usuário plugue o cabo Ethernet ou fornece credenciais de login para uma rede Wi-Fi. No entanto, o gerenciamento de rede e a solução de problemas são um conjunto crucial de tarefas para qualquer administrador do sistema. Portanto, o Linux oferece ferramentas de linha de comando para lidar com problemas de gerenciamento e conectividade.

Nesta seção, discutimos problemas de conexão de rede e cubramos as ferramentas do Linux para fornecer soluções para eles de uma maneira conveniente.

Conexões de saída

Ofertas Linux IP comando como um utilitário de rede geral para configurar a rede e resolver problemas de conectividade. Ele manipula todos os objetos de rede, como endereços IP, rotas e links, etc.

Antes de começar, use o IP comando para visualizar a interface de rede de trabalho.

ubuntu@ubuntu: ~ $ ip addr show

Em caso de interface disponível, verifique se o hardware está desativado. No entanto, se estiver acordado e ainda conectado ao host, use o rota comando para verificar o host.

ubuntu@ubuntu: ~ rota

A linha padrão representa o gateway padrão (roteador) acessado pela máquina por meio de uma placa de interface de trabalho. Ofertas Linux ping utilidade para testar a conectividade entre o seu dispositivo e o roteador.

ubuntu@ubuntu: ~ $ ping -c 5

O erro sugere que o roteador não está fisicamente conectado ou desligado. No entanto, se o ping for bem -sucedido, tente alcançar um endereço além do roteador, por exemplo, o Global Google DNS Server 8.8.8.8.

ubuntu@ubuntu: ~ $ ping -c 5 8.8.8.8

Um ping bem-sucedido sugere que o problema é com a resolução do nome do host-address. O servidor DNS usado pelo sistema é adicionado manual ou automaticamente do servidor DHCP quando a interface de rede inicia. Verifique os detalhes (nomes e endereços IP) do servidor DNS do /etc /resolver.arquivo conf.

NameServer 192.168.11.12
NameServer 192.168.11.253

Podemos resolver os problemas do nome do host da seguinte forma:

É possível que o servidor esteja inativo ou o usuário esteja atribuído o endereço do servidor DNS errado. Note o nome do servidor endereços do resolver.conf Arquive e verifique se é acessível através de um comando ping.

ubuntu@ubuntu: ~ $ ping -c 3 192.168.11.253

Use o utilitário Groper (DIG) Information Information (DIG) para verificar se o DNS está funcionando. Isto é, verifique se o endereço do servidor DNS 192.168.11.253 resolve o nome do host em um endereço IP.

ubuntu @ubuntu: ~ $ dig @115.186.188.3 www.Google.com

Corrigir um servidor DNS é um pouco complicado. Se o gerente de rede for responsável por gerenciar a tarefa de conectividade, ele substituirá as entradas do servidor de nomes em /etc /resolver.arquivo conf. CD no diretório/etc/sysconfig/ntecwork-scripts para adicionar a seguinte linha no arquivo ifcfg para resolver o problema.

ubuntu@ubuntu: ~ sudo vim/etc/sysconfig/network-scripts/ifcfg
Peerdns = não
Dns1 =

No caso de um serviço de rede separado, adicione os peerdns = nenhuma linha para resolver.arquivo conf.

Conexões recebidas

Para um sistema Linux configurado como um servidor Apache, o servidor da web precisa ser acessado pelo cliente. Se o cliente não conseguir alcançar o servidor por meio de um navegador da web, você poderá usar os comandos de ping, escavação ou traceroute acima de fora do servidor para rastrear problemas. Algumas das outras maneiras de solucionar problemas de entrada incluem:

Usar NMAP Para verificar a disponibilidade do serviço por meio de portas abertas no servidor. Use o comando NMAP com o endereço do host/IP para inspecionar portas abertas.

ubuntu@ubuntu: ~ $ nmap

O estado da porta aberta 80/443 sugere que a conectividade de rede está bem. Caso contrário, o firewall não está aceitando pacotes dessas portas. Além disso, não é filtrado e o estado está fechado, o que significa que o serviço não está configurado corretamente, ou não está ouvindo em portas 80/443.

Se o sistema usar ufw e configura para a política de firewall padrão, ela bloqueará todas as conexões recebidas. Defina o firewall para permitir que os clientes tenham acesso às portas TCP 80/443:

ubuntu@ubuntu: ~ $ sudo ufw permitir 80
ubuntu@ubuntu: ~ $ sudo ufw permitir 443

Se ainda estiver bloqueando as conexões recebidas, use o status sudo ufw comando para procurar os hosts negados e acessá -los através do seguinte comando.

ubuntu@ubuntu: ~ $ sudo ufw permitir

Se o acesso a portas 80/443 estiver ativado e todas as redes de entrada podem acessar o servidor. É hora de verificar o status do servidor:

ubuntu@ubuntu: ~ status systemctl httpd

Por fim, verifique se o servidor está ouvindo interfaces e portas adequadas. Portanto, para serviços como HTTPD que ouvem solicitações em interfaces. Edite o arquivo de configuração principal para permitir que o serviço ouça na porta 80 para um endereço específico ou em todos os endereços.

ubuntu@ubuntu: ~ sudo cd/etc/httpd/conf/httpd.conf
Ouça 80
Ouça 192.168.11.10:80

Solucionar problemas de carga do sistema

O Linux vem com muitos utilitários que assistem às atividades do sistema e descobrem questões que não têm razões aparentes. Ou seja, o sistema está funcionando bem, mas começa a desacelerar e começa a travar aplicativos. Esses vários utilitários do Linux ajudam a descobrir processos que consomem recursos de memória e drenando a máquina de seu espaço em disco, processadores e largura de banda de rede.

Algumas das razões por trás da instabilidade do sistema incluem capacidade limitada, i.e., Memória baixa, espaço em disco, capacidade de rede e energia de processamento, com aplicativos mal configurados. No entanto, os utilitários oferecem maneiras de gerenciar, manipular e corrigir esses problemas. Vamos solucionar a memória limitada e problemas excessivos de consumo de CPU.

Uso de memória

Execute o principal comando com capital M Para classificar os detalhes do processo por uso da memória. A saída de comando gera informações gerais seguidas pela RAM, espaço de troca e consumo de CPU. Se parece que o sistema está fora do espaço fora da memória (OOM), procure essas coisas:

  • Observe o espaço livre na linha MEM: deve ser zero ou próximo a ela.
  • Verifique o espaço de troca usado: deve ser diferente de zero ou crescer.
  • Desde o principal command redisplays informações a cada 5 segundos, procure o processo com um vazamento de memória, ou seja, verifique se a memória res continua a crescer.
  • O kernel começa a matar o processo quando a troca de espaço acaba.

A maneira possível de solucionar esses problemas é:

Matando o processo

O comando Kill envia um sinal de morte para encerrar um processo. Os sinais mais usados ​​para solucionar problemas fora da memória são Sigkill e Sigterm. No entanto, diferentes processos respondem de maneira diferente a sinais.

Por exemplo, observe o PID e use o matar comando para enviar o sinal sigterm.

ubuntu@ubuntu: ~ $ kill -15 pid

O sinal Sigterm/-15 visa encerrar o processo, mas ocasionalmente não mata o processo. Portanto, isso pode exigir o sinal Sigkill/-9 para matar o processo imediatamente.

ubuntu@ubuntu: ~ $ kill -sigkill pid

Soltar caches da página

Para limpar a memória no momento, solte as páginas de cache inativas. Dropping páginas em cache, escreva algumas páginas de memória no disco, pois o sistema pode querer recuperá -lo mais tarde enquanto descarta o resto.

Deixe o comando superior em execução no terminal e execute o comando fornecido em outro terminal para visualizar a alteração da linha do MEM:

ubuntu@ubuntu: ~ $ echo 3>/proc/sys/vm/Drop_caches

Use Alt+Sysrq Keystoke

A exaustão da memória às vezes pode tornar a GUI ou a concha completamente sem resposta. Este cenário exige o uso de pressionamento de tecla Alt+Sysrq em um sistema que não responde. De modo que o kernel processa sua solicitação antes de qualquer outro processo.

Execute o seguinte comando para verificar se está ativado:

ubuntu@ubuntu: ~ $ cat/proc/sys/kernel/sysrq
076

O valor '0' mostra que o pressionamento de teclas não está ativado. Para ativar esse pressionamento de tecla, vá para o /etc /sysctl.arquivo conf e definir o núcleo.sysrq = 1. Ou definido núcleo.sysrq = 1 usando o seguinte comando.

ubuntu@ubuntu: ~ $ sudo echo "1">/proc/sys/kernel/sysrq

Na maioria dos teclados, o SYSRQ é uma tecla 'PrTSC'.

Pressione ALT+SYSRQ+F da interface baseada em texto para matar o processo com a maior pontuação OOM. Continue pressionando essas teclas até que o sistema retorne ao seu estado utilizável normal.

Carga da CPU

As técnicas acima discutidas também podem verificar e corrigir o processo que consome recursos excessivos de CPU e privando o sistema de sua funcionalidade. No entanto, o Linux oferece outro método que limita os processos do sistema de alimentar os recursos da CPU.

Renice o processo

Use o comando superior para produzir todos os detalhes e observar o ID do processo (PID) solicitando mais recursos da CPU. Digite o seguinte comando que define o excelente valor entre -20 a 19, eu.e., Quanto maior o valor, menor o processo de acesso chegar à CPU.

ubuntu@ubuntu: ~ $ nice +18 pid

Ou observe o valor ni (bom) do PID. Para um baixo valor de Ni, diminua os privilégios de acesso à CPU desse processo específico, revogando o excelente valor usando o comando Renice:

ubuntu@ubuntu: ~ $ Renice -n +18 pid

Conclusão

O artigo abrange todos os utilitários de Linux necessários para permitir que os iniciantes solucionem problemas de linux relevantes para a carga do sistema, problemas de hardware, grub e networking.