Open Source

Guida generale alla risoluzione dei problemi di GNU/Linux per principianti

Guida generale alla risoluzione dei problemi di GNU/Linux per principianti

Risoluzione dei problemi hardware

All'avvio del kernel, carica i driver e i moduli hardware necessari con tutti i messaggi che includono dettagli sull'errore hardware. Ma i messaggi scorrono troppo velocemente ed è impossibile dare un'occhiata ai potenziali problemi hardware. Tuttavia, i messaggi visualizzati durante il processo di avvio del kernel vengono salvati nel buffer circolare del kernel.

All'avvio del sistema, utilizzare il pulsante dmesg comando per scrivere questi messaggi in an msg.TXT file.

[email protected]:~$ dmesg > /tmp/msg.TXT
[email protected]:~$ less /tmp/kernel_msg.TXT

I messaggi salvati possono essere rivisti in seguito o inviati a qualcuno per eseguire il debug del problema.

Un altro modo per leggere questi messaggi è controllare i file /var/log/dmesg o /var/log/messages se esistono.

Alcuni sistemi Linux che supportano systemd memorizzano questi messaggi nel journal systemd. Usa il journalctl comando per controllare i messaggi del kernel:

[email protected]:~$ journalctl -k | Di meno

Controlla i messaggi che indicano il guasto delle funzionalità hardware o il caricamento dei driver non riuscito.

Salvataggio GRUB

GRUB è un programma software installato dalle distribuzioni che avvia il sistema operativo basato su kernel. Attualmente, tutte le distribuzioni Linux utilizzano la versione GRUB2. A volte è possibile che quando il BIOS avvia GRUB2, si verifica il problema di nessun "file system operativo" o "file system sconosciuto".

L'errore suggerisce che GRUB non riesce a trovare il sistema operativo giusto per caricare e individuare il grub.cfg nella partizione sbagliata. Ciò accade quando l'utente installa Windows dopo che il sistema operativo Linux e il BIOS identificano i dischi nell'ordine sbagliato, poiché Windows avvia il suo bootloader su Master Boot Record (MBR).

L'errore si presenta così:

errore: filesystem sconosciuto.
salvataggio di grub > _

In questa sezione, discuteremo due modi per recuperare la distribuzione da Grub Rescue:

METODO I

Inserisci il ls comando nel terminale di salvataggio di grub per elencare tutte le unità e le partizioni disponibili.

grub> ls
(hd0),(hd0,msdos1)(hd0,msdos2)

Seleziona la partizione che contiene la distribuzione installata. In genere, viene avviato dalla prima partizione; in caso contrario, emette un messaggio di errore. Esegui i seguenti comandi per cercare il file di configurazione di grub nella directory grub2:

grub > ls (hd0,msdos1)/
grub > ls (hd0,msdos1)/grub2
dispositivo.caratteri mappa grub.cfg grub.cfg.1590068449.rpmsave grubenv i386-pc locale

genere imposta root=(hd0,msdos1) per avviare il sistema. Ora usa il imposta il prefisso comando per definire il percorso della directory grub2. genere insmod normale comando per riavviare il sistema. Dopo il riavvio, apri il terminale per aggiornare GRUB.

[email protected]:~$ sudo update-grub

L'ultimo passaggio è installare GRUB su MBR (Master Boot Record) mentre Windows avvia il suo bootloader su di esso. Questo passaggio richiede il montaggio della partizione di root /dev/sda1 nella directory /mnt.

[email protected]:~$ sudo mount /dev/sda1 /mnt
[email protected]:~$ sudo grub-install --root-directory=/mnt/ /dev/sda

Il sistema potrebbe non avviarsi tramite il insmod normale comando, che può accadere a causa di un file system scadente di grub mancante.conf file. Il problema richiede che l'utente si avvii nel sistema tramite un USB/CD live della distribuzione. Discutiamo di un'altra tecnica ideale per salvare GRUB2.

METODO II

Boot-Repair è uno strumento grafico che offre una soluzione ideale per i problemi di GRUB. Avvia il desktop tramite un USB/CD live rimovibile. Assicurati che il dispositivo sia connesso a Internet e premi Ctrl+Alt+T per aprire il terminale. Ora installa lo strumento di riparazione di avvio:

[email protected]:~$ sudo add-apt-repository -y ppa:yannubuntu/boot-repair
[email protected]:~$ sudo apt-get update
[email protected]:~$ sudo apt-get install -y boot-repair && boot-repair

Segui le opzioni consigliate per riparare il sistema. Riavvia il sistema dopo che Boot Repair ha applicato tutte le modifiche. Il sistema operativo si avvierà normalmente.

Risoluzione dei problemi di rete

Per gli utenti regolari, la connettività di rete si verifica automaticamente non appena l'utente collega il cavo Ethernet o fornisce le credenziali di accesso per una rete Wi-Fi. Tuttavia, la gestione della rete e la risoluzione dei problemi sono un insieme di attività cruciali per qualsiasi amministratore di sistema. Quindi, Linux offre strumenti da riga di comando per affrontare problemi di gestione e connettività.

In questa sezione, discutiamo i problemi di connessione di rete in entrata e in uscita e trattiamo gli strumenti Linux per fornire soluzioni ad essi in modo conveniente.

Connessioni in uscita

Offerte Linux IP comando come un'utilità di rete completa per configurare la rete e risolvere i problemi di connettività. Manipola tutti gli oggetti di rete come indirizzi IP, percorsi e collegamenti, ecc.

Prima di iniziare, usa il IP comando per visualizzare l'interfaccia di rete funzionante.

[email protected]:~$ ip addr show

In caso di interfaccia non disponibile, verificare se l'hardware è disabilitato. Tuttavia, se è attivo e ancora connesso all'host, usa il pulsante itinerario comando per controllare l'host.

[email protected]:~$ route

La linea predefinita rappresenta il gateway predefinito (router) a cui accede la macchina tramite una scheda di interfaccia funzionante. Offerte Linux ping utility per testare la connettività tra il dispositivo e il router.

[e-mail protetta]:~$ ping -c 5

L'errore suggerisce che il router non è fisicamente connesso o è spento. Tuttavia, se il ping ha esito positivo, prova a raggiungere un indirizzo oltre il router, ad esempio il server DNS globale di Google 8.8.8.8.

[e-mail protetta]:~$ ping -c 5 8.8.8.8

Un ping riuscito suggerisce che il problema riguarda la risoluzione da nome host a indirizzo. Il server DNS utilizzato dal sistema viene aggiunto manualmente o automaticamente dal server DHCP all'avvio dell'interfaccia di rete. Controlla i dettagli (nomi e indirizzi IP) del server DNS da /etc/resolve.conf file.

server dei nomi 192.168.11.12
server dei nomi 192.168.11.253

Possiamo risolvere i problemi relativi al nome host come segue:

È possibile che il server non sia attivo o che all'utente sia stato assegnato l'indirizzo del server DNS errato. Notare la server dei nomi indirizzi dal risolvere.conf file e controlla se è accessibile tramite un comando ping.

[e-mail protetta]:~$ ping -c 3 192.168.11.253

Utilizzare l'utilità Domain Information groper (DIG) per verificare se il DNS funziona is. Cioè, controlla se l'indirizzo del server DNS 192.168.11.253 risolve il nome host in un indirizzo IP.

[email protected]:~$ dig @115.186.188.3 www.Google.come

La correzione di un server DNS è un po' complicata. Se il gestore della rete è responsabile della gestione dell'attività di connettività, sovrascrive le voci del server dei nomi in /etc/resolve.conf file. Cd nella directory /etc/sysconfig/network-scripts per aggiungere la seguente riga nel file ifcfg per risolvere il problema.

[email protected]:~$ sudo vim /etc/sysconfig/network-scripts/ifcfg
PEERDNS=no
DNS1=

Nel caso di un servizio di rete separato, aggiungere la riga PEERDNS=no da risolvere.conf file.

Connessioni in entrata

Per un sistema Linux configurato come server Apache, il client deve accedere al server web. Se il client non può raggiungere il server tramite un browser Web, è possibile utilizzare i comandi ping, dig o traceroute sopra discussi dall'esterno del server per tenere traccia dei problemi. Alcuni degli altri modi per risolvere i problemi di connessione in entrata includono:

Uso nmap per verificare la disponibilità del servizio tramite porte aperte sul server. Usa il comando nmap con il nome host/indirizzo IP per ispezionare le porte aperte.

[email protected]:~$ nmap

La porta aperta 80/443 STATE suggerisce che la connettività di rete va bene. In caso contrario, il firewall non accetta pacchetti da quelle porte. Inoltre, non è filtrato e lo stato è chiuso, il che significa che il servizio non è configurato correttamente o non è in ascolto sulle porte 80/443.

Se il sistema utilizza ufw e imposta la politica del firewall predefinita, bloccherà ogni connessione in entrata. Imposta il firewall per consentire ai client l'accesso alle porte tcp 80/443:

[email protected]:~$ sudo ufw allow 80
[email protected]:~$ sudo ufw allow 443

Se sta ancora bloccando le connessioni in entrata, usa il sudo ufw status comando per cercare gli host negati e accedervi tramite il seguente comando.

[email protected]:~$ sudo ufw allow from

Se l'accesso alle porte 80/443 è abilitato e tutte le reti in entrata possono accedere al server. È ora di controllare lo stato del server:

[email protected]:~$ sudo systemctl status httpd

Infine, controlla se il server sta ascoltando interfacce e porte adatte. Quindi, per i servizi come httpd che ascoltano le richieste sulle interfacce. Modifica il file di configurazione principale per consentire al servizio di ascoltare sulla porta 80 un indirizzo specifico o tutti gli indirizzi.

[e-mail protetta]:~$ sudo cd /etc/httpd/conf/httpd.conf
Ascolta 80
Ascolta 192.168.11.10:80

Risoluzione dei problemi di caricamento del sistema

Linux viene fornito con molte utility che controllano le attività del sistema e risolvono problemi che non hanno ragioni apparenti. Cioè, il sistema funziona bene ma inizia a rallentare e inizia a mandare in crash le applicazioni. Queste varie utilità Linux aiutano a scoprire i processi che consumano risorse di memoria e prosciugano la macchina del suo spazio su disco, processori e larghezza di banda di rete.

Alcuni dei motivi alla base dell'instabilità del sistema includono la capacità limitata, i.e., memoria insufficiente, spazio su disco, capacità di rete e potenza di elaborazione, con applicazioni configurate in modo errato. Tuttavia, le utility offrono modi per gestire, manipolare e risolvere tali problemi. Risolviamo i problemi di memoria limitata e consumo eccessivo della CPU.

Utilizzo della memoria

Corri il superiore comando con maiuscola M per classificare i dettagli del processo in base all'utilizzo della memoria. L'output del comando fornisce informazioni generali seguite dalla RAM, dallo spazio di swap e dal consumo della CPU. Se sembra che il sistema sia spazio fuori memoria (OOM), cerca queste cose:

  • Nota lo spazio libero nella riga Mem: deve essere zero o vicino ad esso.
  • Controlla lo spazio di swap utilizzato: deve essere diverso da zero o in crescita.
  • Dal momento che superiore il comando rivisualizza le informazioni ogni 5 secondi, cerca il processo con una perdita di memoria, ovvero controlla se la memoria RES continua a crescere.
  • Il kernel inizia a terminare il processo quando lo spazio di swap si esaurisce.

Il modo possibile per risolvere tali problemi è:

Uccidere il processo

Il comando kill invia un segnale kill per terminare un processo. I segnali più comunemente usati per risolvere i problemi di memoria esaurita sono SIGKILL e SIGTERM. Tuttavia, processi diversi rispondono in modo diverso ai segnali.

Ad esempio, annota il PID e usa il uccidere comando per inviare il segnale SIGTERM.

[email protected]:~$ kill -15 PID

Il segnale SIGTERM/-15 mira a terminare il processo, ma occasionalmente non interrompe il processo. Quindi, questo potrebbe richiedere il segnale SIGKILL/-9 per interrompere immediatamente il processo.

[email protected]:~$ kill -SIGKILL PID

Rilascia cache delle pagine

Per pulire la memoria per il momento, rilascia le pagine della cache inattive. Eliminando le pagine memorizzate nella cache, scrivi alcune pagine di memoria sul disco poiché il sistema potrebbe volerlo recuperare in seguito mentre scarta il resto.

Lascia il comando in alto in esecuzione nel terminale ed esegui il comando dato in un altro terminale per visualizzare la modifica della riga MEM:

[email protected]:~$ echo 3 > /proc/sys/vm/drop_caches

Usa la sequenza di tasti Alt+SysRq

L'esaurimento della memoria a volte può rendere la GUI o la shell completamente insensibile. Questo scenario richiede l'uso della sequenza di tasti Alt+SysRq su un sistema che non risponde. In modo tale che il kernel elabori la sua richiesta prima di qualsiasi altro processo.

Esegui il seguente comando per verificare se è abilitato:

[email protected]:~$ cat /proc/sys/kernel/sysrq
076

Il valore '0' mostra che la sequenza di tasti non è abilitata. Per abilitare questa sequenza di tasti, vai su /etc/sysctl.conf e imposta il file kernel.sysrq=1. o impostare kernel.sysrq=1 usando il seguente comando.

[email protected]:~$ sudo echo "1" >/proc/sys/kernel/sysrq

Nella maggior parte delle tastiere, SysRq è un tasto 'PrtSc'.

Premi Alt+SysRq+f dall'interfaccia testuale per terminare il processo con il punteggio OOM più alto. Continua a premere questi tasti fino a quando il sistema non torna al suo normale stato utilizzabile.

Carico CPU CPU

Le tecniche sopra discusse possono anche controllare e correggere il processo consumando risorse CPU eccessive e privando il sistema della sua funzionalità. Tuttavia, Linux offre un altro metodo che limita i processi di sistema dall'alimentazione delle risorse della CPU.

Rinnova il processo

Usa il comando top per ottenere tutti i dettagli e annotare l'ID del processo (PID) che richiede più risorse della CPU. Digita il seguente comando che imposta il valore eccellente tra -20 e 19, i.e., maggiore è il valore, minore è il processo di accesso alla CPU.

[email protected]:~$ bello +18 PID

Oppure nota il valore NI (bello) del PID. Per un valore NI basso, diminuire i privilegi di accesso alla CPU di quel particolare processo revocando il valore eccellente utilizzando il comando renice:

[email protected]:~$ renice -n +18 PID

Conclusione

L'articolo copre tutte le utilità Linux necessarie per consentire ai principianti di risolvere i problemi di Linux relativi al carico del sistema, problemi hardware, GRUB e rete.

I 5 migliori giochi arcade per Linux
Al giorno d'oggi, i computer sono macchine serie utilizzate per i giochi. Se non riesci a ottenere il nuovo punteggio più alto, saprai cosa intendo. I...
Battaglia per Wesnoth 1.13.6 Sviluppo rilasciato
Battaglia per Wesnoth 1.13.6 rilasciato il mese scorso, è la sesta versione di sviluppo nella 1.13.x e offre una serie di miglioramenti, in particolar...
Come installare League Of Legends su Ubuntu 14.04
Se sei un fan di League of Legends, questa è un'opportunità per testare League of Legends. Nota che LOL è supportato su PlayOnLinux se sei un utente L...