Guía de solución de problemas GNU/Linux General para principiantes

Guía de solución de problemas GNU/Linux General para principiantes

Solución de problemas de problemas de hardware

Cuando se inicia el núcleo, carga los controladores de hardware y módulos necesarios con todos los mensajes que incluyen detalles de falla de hardware. Pero los mensajes se desplazan demasiado rápido, y es imposible ver bien posibles problemas de hardware. Sin embargo, los mensajes que se muestran durante el proceso de arranque del núcleo se guardan en el búfer de anillo del núcleo.

A medida que el sistema se inicia, use el dmesg comandar escribir estos mensajes en un machista.TXT archivo.

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

Los mensajes guardados se pueden revisar más tarde o enviar a alguien para depurar el problema.

Otra forma de leer estos mensajes es verificar los archivos/var/log/dmesg o/var/log/mensajes si existen.

Algunos sistemas de Linux que admiten Systemd almacenan estos mensajes en la revista Systemd. Utilizar el Journalctl Comando para verificar los mensajes del núcleo:

ubuntu@ubuntu: ~ $ JournalCtl -k | menos

Verifique los mensajes que indiquen la falla de las características de hardware o no pudieron cargar controladores.

Sistema de arranque

Grub es un programa de software instalado por distribuciones que inicia el sistema operativo basado en el núcleo. Actualmente, todas las distribuciones de Linux están utilizando la versión Grub2. A veces es posible que cuando el BIOS inicie el Grub2, aterrice en el problema de no 'Sistema de archivos operativos' o "Sistema de archivos desconocido".

El error sugiere que la grub no puede encontrar el sistema operativo adecuado para cargar y localizar la comida.Archivo CFG en la partición incorrecta. Esto sucede cuando el usuario instala Windows después de Linux OS y BIOS identifica discos en el orden incorrecto, a medida que Windows inicia su gestor de arranque en el registro de arranque maestro (MBR).

El error aparece así:

Error: sistema de archivos desconocido.
Grub rescate> _

En esta sección, discutiremos dos formas de recuperar la distribución del rescate de Grub:

Método I

Introducir el LS Comando en la terminal de rescate de grub para enumerar todas las unidades y particiones disponibles.

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

Seleccione la partición que contiene la distribución instalada. En general, se inicia desde la primera partición; Si no, genera un mensaje de error. Ejecute los siguientes comandos para buscar el archivo de configuración de Grub en el directorio Grub2:

Grub> LS (HD0, MSDOS1)/
Grub> LS (HD0, MSDOS1)/Grub2
dispositivo.mapa de fuentes de mapa.comida cfg.CFG.1590068449.RPMSAVE GRUBENV I386-PC LECALLE

Tipo Establecer root = (HD0, MSDOS1) Para arrancar el sistema. Ahora usa el Establecer prefijo Comando para definir la ruta al directorio GRUB2. Tipo Insmod Normal comandar reiniciar el sistema. Después de reiniciar, abra el terminal para actualizar la comida.

ubuntu@ubuntu: ~ $ sudo update-grub

El último paso es instalar grub en MBR (registro de arranque maestro) ya que Windows inicia su gestor de arranque en él. Este paso requiere montar la partición raíz /dev /sda1 en el directorio /mnt.

ubuntu@ubuntu: ~ $ sudo monte /dev /sda1 /mnt
ubuntu@ubuntu: ~ $ sudo grub-install --Root-Directory =/mnt//dev/sda

El sistema puede no pasar por el Insmod Normal Comando, que puede suceder debido a un pésimo sistema de archivos de Falting Gub.archivo conf. El problema requiere que el usuario inicie en el sistema a través de un USB/CD en vivo de la distribución. Discutamos otra técnica ideal para rescatar a Grub2.

Método II

Boot-repara es una herramienta gráfica que ofrece una solución ideal para problemas de comida. Arrancar en el escritorio a través de un USB/CD extraíble en vivo. Asegúrese de que el dispositivo esté conectado a Internet y presione Ctrl+Alt+T para abrir el terminal. Ahora instale la herramienta de reparación de arranque:

ubuntu@ubuntu: ~ $ sudo add-apt-repository -y ppa: yannubuntu/boot-reparador
ubuntu@ubuntu: ~ $ sudo apt-get actualización
ubuntu@ubuntu: ~ $ sudo apt-get install -y boot-repare && boot-repar

Siga las opciones recomendadas para reparar el sistema. Reinicie su sistema después de que la reparación de arranque aplique todos los cambios. El sistema operativo se iniciará normalmente.

Solución de problemas de red

Para los usuarios regulares, la conectividad de red ocurre automáticamente tan pronto como el usuario conecta el cable Ethernet o proporciona credenciales de inicio de sesión para una red Wi-Fi. Sin embargo, la gestión de la red y la solución de problemas son un conjunto crucial de tareas para cualquier administrador del sistema. Por lo tanto, Linux ofrece herramientas de línea de comandos para lidiar con problemas de administración y conectividad.

En esta sección, discutimos los problemas de conexión de red salientes y entrantes y cubrimos las herramientas de Linux para proporcionarles soluciones de una manera conveniente.

Conexiones salientes

Ofertas de Linux IP El comando como una utilidad de red general para configurar la red y resolver problemas de conectividad. Manipula todos los objetos de red, como direcciones IP, rutas y enlaces, etc.

Antes de comenzar, use el IP Comando para ver la interfaz de red de trabajo.

ubuntu@ubuntu: ~ $ ip complement show

En caso de que no hay interfaz disponible, verifique si el hardware está deshabilitado. Sin embargo, si está arriba y aún está conectado al host, use el ruta comandar para verificar el host.

ubuntu@ubuntu: ~ $ ruta

La línea predeterminada representa la puerta de enlace predeterminada (enrutador) accedida por la máquina a través de una tarjeta de interfaz de trabajo. Ofertas de Linux silbido utilidad para probar la conectividad entre su dispositivo y enrutador.

ubuntu@ubuntu: ~ $ ping -c 5

El error sugiere que el enrutador no está físicamente conectado o apagado. Sin embargo, si el ping es exitoso, intente alcanzar una dirección más allá del enrutador, por ejemplo, el servidor Global Google DNS 8.8.8.8.

ubuntu@ubuntu: ~ $ ping -c 5 8.8.8.8

Un ping exitoso sugiere que el problema es con la resolución del nombre de host a la dirección. El servidor DNS utilizado por el sistema se agrega manual o automáticamente desde el servidor DHCP cuando se inicia la interfaz de red. Verifique los detalles (nombres y direcciones IP) del servidor DNS desde /etc /resolve.archivo conf.

servidor de nombres 192.168.11.12
servidor de nombres 192.168.11.253

Podemos resolver los problemas del nombre de host de la siguiente manera:

Es posible que el servidor esté inactivo o se le asigne al usuario la dirección del servidor DNS incorrecta. Nota la nombre del servidor direcciones del resolver.confusión Archivo y verifique si es accesible a través de un comando de ping.

ubuntu@ubuntu: ~ $ ping -c 3 192.168.11.253

Utilice la utilidad de la información de información de dominio (DIG) para verificar si el DNS está funcionando. Es decir, verifique si la dirección del servidor DNS 192.168.11.253 resuelve el nombre de host a una dirección IP.

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

Corregir un servidor DNS es un poco complicado. Si el Administrador de red es responsable de administrar la tarea de conectividad, anula las entradas del servidor de nombres en /etc /resolve.archivo conf. CD en el directorio/etc/sysconfig/network-scripts para agregar la siguiente línea en el archivo ifcfg para resolver el problema.

ubuntu@ubuntu: ~ $ sudo vim/etc/sysconfig/network-scripts/ifcfg
Peerdns = no
Dns1 =

En el caso de un servicio de red separado, agregue el peerdns = sin línea para resolver.archivo conf.

Conexiones entrantes

Para un sistema de Linux configurado como un servidor Apache, el cliente debe acceder al servidor web. Si el cliente no puede comunicarse con el servidor a través de un navegador web, puede usar los comandos de ping, excavación o traceroute discutidos anteriormente desde fuera del servidor para rastrear problemas. Algunas de las otras formas de solucionar problemas de conexiones entrantes incluyen:

Usar nmap Para verificar la disponibilidad del servicio a través de puertos abiertos en el servidor. Use el comando nmap con el nombre de host/dirección IP para inspeccionar los puertos abiertos.

ubuntu@ubuntu: ~ $ nmap

El estado de puerto abierto 80/443 sugiere que la conectividad de la red está bien. Si no, el firewall no acepta paquetes de esos puertos. Además, no se filtra y el estado está cerrado, lo que significa que el servicio no está configurado correctamente, o no está escuchando en puertos 80/443.

Si el sistema usa UFW y se establece en la política de firewall predeterminada, bloqueará cada conexión entrante. Establezca el firewall para habilitar el acceso a los clientes a los puertos TCP 80/443:

ubuntu@ubuntu: ~ $ sudo Ufw Permitir 80
ubuntu@ubuntu: ~ $ sudo Ufw Permitir 443

Si todavía está bloqueando las conexiones entrantes, use el estado de sudo UFW Comando para buscar los hosts denegados y acceder a ellos a través del siguiente comando.

ubuntu@ubuntu: ~ $ sudo Ufw Permitir de

Si el acceso a los puertos 80/443 está habilitado y todas las redes entrantes pueden acceder al servidor. Es hora de verificar el estado del servidor:

ubuntu@ubuntu: ~ $ sudo systemctl status httpd

Por último, verifique si el servidor está escuchando interfaces y puertos adecuados. Por lo tanto, para los servicios como httpd que escuchan las solicitudes en las interfaces. Edite el archivo de configuración principal para habilitar el servicio para escuchar en el puerto 80 para una dirección específica o todas las direcciones.

ubuntu@ubuntu: ~ $ sudo cd/etc/httpd/conf/httpd.confusión
Escucha 80
Escucha 192.168.11.10:80

Solución de problemas de carga del sistema

Linux viene con muchas utilidades que observan actividades del sistema y descubren problemas que no tienen razones aparentes. Es decir, el sistema funciona bien, pero comienza a reducir la velocidad y comienza a bloquear aplicaciones. Estas diversas empresas de servicios públicos de Linux ayudan a encontrar procesos que consumen recursos de memoria y drenan la máquina de su espacio en disco, procesadores y ancho de banda de red.

Algunas de las razones detrás de la inestabilidad del sistema incluyen capacidad limitada, i.mi., Baja memoria, espacio en disco, capacidad de red y potencia de procesamiento, con aplicaciones mal configuradas. Sin embargo, los servicios públicos ofrecen formas de administrar, manipular y solucionar tales problemas. Solucionemos problemas de memoria limitada y problemas excesivos de consumo de CPU.

Uso de memoria

Ejecutar el arriba comando con capital METRO Para clasificar los detalles del proceso por uso de la memoria. La salida del comando produce información general seguida de la RAM, el espacio de intercambio y el consumo de CPU. Si parece que el sistema es un espacio fuera de memoria (OOM), busque estas cosas:

  • Observe el espacio libre en la línea MEM: debe ser cero o cerca de él.
  • Verifique el espacio de intercambio usado: debe ser distinto de cero o crecer.
  • Desde el arriba El comando reemplaza la información cada 5 segundos, busque el proceso con una filtración de memoria, es decir, verifique si la memoria de RES continúa creciendo.
  • El núcleo comienza a matar el proceso cuando se agota el espacio de intercambio.

La posible forma de solucionar tales problemas es:

Matar el proceso

El comando matar envía una señal de matar para terminar un proceso. Las señales más utilizadas para solucionar problemas son Sigkill y Sigterm. Sin embargo, diferentes procesos responden de manera diferente a las señales.

Por ejemplo, tenga en cuenta el PID y use el matar Comando para enviar la señal Sigterm.

ubuntu@ubuntu: ~ $ kill -15 pid

La señal SigterM/-15 tiene como objetivo terminar el proceso, pero ocasionalmente no mata el proceso. Por lo tanto, esto puede requerir que la señal Sigkill/-9 mate el proceso inmediatamente.

ubuntu@ubuntu: ~ $ kill -sigkill pid

Capejar los cachés de la página

Para limpiar la memoria por el momento, suelte las páginas de caché inactivos. Dejar caer páginas en caché, escriba algunas páginas de memoria en el disco, ya que el sistema puede querer recuperarlo más tarde mientras descarta el resto.

Deje el comando superior ejecutándose en el terminal y ejecute el comando dado en otro terminal para ver el cambio de línea MEM:

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

Use Alt+Sysrq Keystroke

El agotamiento de la memoria a veces puede hacer que la GUI o el caparazón no respondan por completo. Este escenario requiere el uso de la tecla de tecla Alt+SYSRQ en un sistema que no responde. Tal que el núcleo procesa su solicitud antes de cualquier otro proceso.

Ejecute el siguiente comando para verificar si está habilitado:

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

El valor '0' muestra que la pulsación de tecla no está habilitada. Para habilitar esta pulsación de tecla, vaya a /etc /sysctl.archivo conf y establecer el núcleo.sysrq = 1. O establecer núcleo.sysrq = 1 usando el siguiente comando.

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

En la mayoría de los teclados, el SYSRQ es una tecla 'PRTSC'.

Presione ALT+SYSRQ+F de la interfaz basada en texto para matar el proceso con la puntuación OOM más alta. Sigue presionando estas teclas hasta que el sistema vuelva a su estado utilizable normal.

Carga de la CPU

Las técnicas discutidas anteriormente también pueden verificar y corregir el proceso que consume recursos excesivos de CPU e privando el sistema de su funcionalidad. Sin embargo, Linux ofrece otro método que limita los procesos del sistema de alimentar los recursos de la CPU.

Renice el proceso

Use el comando superior para producir todos los detalles y anote la ID de proceso (PID) solicitando más recursos de CPU. Escriba el siguiente comando que establece el excelente valor entre -20 a 19, yo.mi., Cuanto mayor sea el valor, menor será el proceso de acceso a la CPU.

ubuntu@ubuntu: ~ $ nice +18 pid

O observe el valor de Ni (agradable) del pid. Para un valor de NI bajo, disminuya los privilegios de acceso a la CPU de ese proceso en particular revocando el excelente valor utilizando el comando Renice:

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

Conclusión

El artículo cubre todas las utilidades de Linux necesarias para permitir a los principiantes solucionar problemas de Linux relevantes para la carga del sistema, problemas de hardware, comida y redes.