En el mundo de la ingeniería de confiabilidad del sitio (SRE) y DevOps, Linux no es solo una herramienta: es el terreno en el que vives. Ya sea desplegando infraestructura, resolviendo incidentes en producción o automatizando tareas repetitivas, dominar la línea de comandos es esencial.
Este artículo presenta una recopilación práctica de comandos utilizados día a día en operaciones reales. No se trata de una lista genérica: está basada en patrones comunes de troubleshooting, observabilidad, red, seguridad, automatización y administración del sistema.
Diagnóstico de Procesos y Sistema
Comando | Propósito | Ejemplo |
top / htop | Monitorear consumo de CPU/RAM | htop |
ps aux | Listar procesos activos | `ps aux |
uptime | Ver tiempo activo del sistema | uptime |
free -m | Ver uso de memoria | free -m |
vmstat 1 | Métricas de memoria/procesador | vmstat 1 |
dstat | Recurso combinados I/O, CPU, red | dstat -cdn |
Logs y Seguimiento de Archivos
Comando | Propósito | Ejemplo |
journalctl | Ver logs de systemd | journalctl -u docker --since today |
tail -f | Leer logs en tiempo real | tail -f /var/log/nginx/access.log |
grep | Buscar en logs | grep "timeout" /var/log/syslog |
awk | Procesar texto estructurado | awk '{print $1, $5}' logfile.log |
Red y Conectividad
Comando | Propósito | Ejemplo |
ping | Verificar conectividad | ping 1.1.1.1 |
traceroute | Rastrear ruta a host | traceroute google.com |
nc (netcat) | Diagnóstico de puertos | nc -zv 192.168.1.10 22 |
netstat / ss | Ver puertos en uso | ss -tuln |
ip a | Ver interfaces de red | ip a |
dig | Resolver nombres DNS | dig example.com |
curl | Probar endpoints HTTP | curl -i https://api.example.com/status |
Archivos y Almacenamiento
Comando | Propósito | Ejemplo |
df -h | Uso de disco por sistema de archivos | df -h |
du -sh | Tamaño de carpeta | du -sh /var/log |
ls -lh | Listar archivos con detalles legibles | ls -lh /etc/ssl |
find | Buscar archivos por nombre o fecha | find /var -name "*.log" |
lsof | Archivos abiertos por procesos | lsof -i :80 |
mount | Ver puntos de montaje | `mount |
Gestión de Servicios y Sistema
Comando | Propósito | Ejemplo |
systemctl | Controlar servicios con systemd | systemctl restart nginx |
service | Alternativa legacy para servicios | service ssh status |
reboot / shutdown | Reiniciar o apagar el sistema | reboot |
Permisos y Seguridad
Comando | Propósito | Ejemplo |
chmod | Modificar permisos | chmod 644 config.yaml |
chown | Cambiar propietario | chown root:nginx archivo.txt |
sudo | Ejecutar como superusuario | sudo systemctl restart docker |
Transferencia y Backup
Comando | Propósito | Ejemplo |
scp | Transferir archivos entre hosts | scp file.txt user@remote:/tmp/ |
rsync | Sincronización eficiente de archivos | rsync -av /etc/ user@backup:/etc_backup/ |
tar | Comprimir o descomprimir | tar -czvf logs.tar.gz /var/log |
Automatización y Alias
Comando | Propósito | Ejemplo |
alias | Crear alias personalizados | alias ll='ls -lah' |
crontab | Programar tareas | crontab -e |
watch | Ejecutar comando repetidamente | watch -n 5 df -h |
Esta lista no es solo un set de comandos: es un mapa de supervivencia. Aprenderlos te permite no solo resolver problemas, sino entender mejor el comportamiento del sistema operativo, la red y tus aplicaciones.
Como SRE o DevOps, dominar el shell es como aprender a leer los patrones del sistema. Cuanto más te familiarices con estos comandos, más rápido podrás resolver incidentes, optimizar procesos y construir soluciones más robustas.
Te invito a seguir explorando, preguntando, aprendiendo… y sí, cayendo más profundo en The Rabbit Hole.
Subscribe to my newsletter
Read articles from Dan directly inside your inbox. Subscribe to the newsletter, and don't miss out.