Skip to content

Guía de Diagnóstico de Congelamientos en Arch Linux

Terminal window
# Listar todos los arranques disponibles
sudo journalctl --list-boots
  • -1 = arranque anterior al actual
  • -2 = penúltimo, etc.
  • 0 = arranque actual

Terminal window
# Solo errores graves
sudo journalctl -b -1 -p 3 -xe
# Todos los logs (sin filtro)
sudo journalctl -b -1 -xe

Cambiar -1 por -2, -3, etc. según el arranque a revisar.


Terminal window
sudo journalctl -b -1 | grep -i "hardware\|fault\|error\|fail"
Terminal window
sudo journalctl -b -1 | grep -i "oom\|kill\|out of memory\|memory pressure"
Terminal window
sudo journalctl -b -1 | grep -i "nvidia\|amdgpu\|i915\|nouveau\|gpu\|drm\|xorg\|wayland"
Terminal window
sudo journalctl -b -1 | grep -i "i/o error\|ata\|sd.\|nvme\|buffer I/O\|offline device"
Terminal window
sudo journalctl -b -1 | grep -i "usb\|xhci\|ehci\|ohci"
Terminal window
sudo journalctl -b -1 | grep -i "panic\|bug\|oops\|kernel BUG"
Terminal window
sudo journalctl -b -1 | grep -i "failed\|segfault\|core dumped"
Terminal window
# Ver logs de temperatura
sudo journalctl -b -1 | grep -i "temp\|thermal\|throttle"
# Ver temperaturas actuales
sensors

Terminal window
sudo journalctl -b -1 | tail -n 100

Buscar la línea -- Reboot --. Todo lo que está justo encima ocurrió antes del cuelgue.


Terminal window
# Estado de los discos
lsblk -f
# Verificar si hay sistemas de archivos montados como readonly
mount | grep "ro,"
# Verificar integridad del sistema de archivos raíz (desmontado o desde live USB)
sudo fsck -f /dev/sdaX # CAMBIAR sdaX por tu partición raíz

Terminal window
dmesg | grep -i "error\|fail\|warn\|bug\|panic"

7. Monitorización en tiempo real (fallos intermitentes)

Section titled “7. Monitorización en tiempo real (fallos intermitentes)”
Terminal window
# Dejar corriendo en una terminal
sudo journalctl -f -p 4
  • -p 4 = warnings y errores
  • Cuando se congele, se verán los últimos mensajes antes del crash

8. Información del sistema para buscar ayuda

Section titled “8. Información del sistema para buscar ayuda”
Terminal window
# Kernel y arquitectura
uname -a
# Distribución
cat /etc/os-release
# Hardware
lspci -v | grep -i "vga\|usb\|ata"
lsusb
sudo dmidecode -t memory
# Carga de memoria y swap
free -h
# Espacio en disco
df -h

9. Si no hay logs (cuelgue total sin escritura)

Section titled “9. Si no hay logs (cuelgue total sin escritura)”

Revisar manualmente:

  • Temperaturas (sensors)
  • Fuente de alimentación (¿tiene suficiente potencia?)
  • Discos mecánicos (ruidos, SMART)
  • Memoria RAM (prueba con memtest86+ desde el arranque)
  • Condensadores de la placa base (hinchados)

Terminal window
# 1. Últimos errores del arranque anterior
sudo journalctl -b -1 -p 3 -xe | tail -n 50
# 2. Buscar problemas de GPU
sudo journalctl -b -1 | grep -i "gpu\|nvidia\|amdgpu\|i915"
# 3. Buscar problemas de disco
sudo journalctl -b -1 | grep -i "i/o error\|offline"
# 4. Buscar OOM
sudo journalctl -b -1 | grep -i "oom\|kill"
# 5. Buscar pánico del kernel
sudo journalctl -b -1 | grep -i "panic\|kernel BUG"
# 6. Ver el final del log (antes del reboot)
sudo journalctl -b -1 | tail -n 50

Síntoma Posible causa
GPU errors en logs Driver NVIDIA/AMD problemático, sobrecalentamiento
I/O errors + offline device Disco USB defectuoso, cable o puerto dañado
OOM Killer en logs Falta de RAM o swap mal configurada
kernel BUG / panic Bug en kernel, hardware incompatible
xHCI dead / USB errors Puerto USB dañado, controlador defectuoso
Temperaturas altas Ventiladores sucios, pasta térmica seca
Sin errores en logs Fuente de alimentación, placa base, RAM defectuosa

Terminal window
# Guardar el log completo del arranque anterior
sudo journalctl -b -1 > logs_fallo.txt
# Comprimir para compartir
gzip logs_fallo.txt

  • Actualizar el sistema puede solucionar bugs: sudo pacman -Syu
  • Probar con otro kernel (LTS) si el problema es recurrente:
    Terminal window
    sudo pacman -S linux-lts
  • Los fallos más comunes en Arch suelen ser por: GPU, USB defectuoso, falta de RAM, discos NVMe o kernel reciente con regresiones.

Si no encuentras la causa, publica la salida de sudo journalctl -b -1 -p 3 -xe y sudo journalctl -b -1 | tail -n 100 en foros como Arch Linux Forums, r/archlinux o Unix Stack Exchange.