Cheatsheet de uso diario del sysadmin Linux¶
Este módulo reúne los comandos, flujos y patrones que un sysadmin usa a diario, no para memorizar, sino para trabajar mejor y más rápido.
No es una lista exhaustiva de comandos: es una cheatsheet mental y práctica, orientada al daily use real en servidores Linux.
Introducción¶
En el día a día de un sysadmin:
- El 80 % del tiempo usas el 20 % de los comandos
- Los problemas suelen repetirse
- La diferencia está en qué miras primero
Esta cheatsheet está pensada para responder preguntas como:
- ¿Por dónde empiezo?
- ¿Qué comando uso ahora?
- ¿Qué reviso antes de tocar nada?
Flujo mental diario (antes de comandos)¶
Antes de ejecutar nada, piensa:
- ¿Es sistema, servicio o red?
- ¿Cuándo empezó?
- ¿Hay logs?
- ¿Ha cambiado algo?
- ¿Impacto y riesgo?
💡 Los buenos comandos sin contexto generan malos resultados.
Estado rápido del sistema¶
Cuando entras a un servidor, casi siempre miras esto primero:
uptime
hostname
who
df -h
free -h
Esto te da salud general en segundos.
Procesos (lo que más falla)¶
Ver qué está consumiendo¶
top
O directamente:
ps aux --sort=-%cpu | head
ps aux --sort=-%mem | head
Encontrar un proceso¶
ps aux | grep nginx
pgrep nginx
Matar (con cabeza)¶
kill PID
Último recurso:
kill -9 PID
⚠️ Si no sabes qué proceso es, no lo mates.
Servicios (systemd)¶
Estado¶
systemctl status nginx
Arrancar / parar / reiniciar¶
systemctl start nginx
systemctl stop nginx
systemctl restart nginx
Ver si arranca con el sistema¶
systemctl is-enabled nginx
Logs (siempre logs)¶
Ver logs de un servicio¶
journalctl -u nginx -e
En tiempo real:
journalctl -u nginx -f
Logs clásicos¶
less /var/log/syslog
less /var/log/auth.log
Buscar errores:
grep -i error /var/log/syslog | tail
💡 Si no miras logs, estás adivinando.
Red (cuando “no conecta”)¶
Ver IPs¶
ip addr
Ver rutas¶
ip route
Conectividad básica¶
ping 8.8.8.8
ping google.com
Puertos abiertos¶
ss -tuln
ss -tulnp
Archivos y permisos¶
Ver permisos¶
ls -l
Cambiar permisos (típicos)¶
chmod 644 archivo
chmod 755 script.sh
Propietario¶
chown user:group archivo
⚠️ 777 casi nunca es la solución.
Usuarios¶
Ver quién eres¶
whoami
id
Cambiar de usuario¶
su - usuario
Ejecutar como root¶
sudo comando
Paquetes¶
Actualizar info¶
apt update
Instalar¶
apt install paquete
Ver si está instalado¶
dpkg -l | grep paquete
Búsqueda rápida (muy usada)¶
grep texto archivo
grep -R texto /ruta
find /ruta -name "*.log"
Comandos de “salvavidas”¶
history
Ctrl + r
!!
!$
Estos ahorran horas al mes.
Alias típicos de daily use¶
Ejemplos reales:
alias ll='ls -lah'
alias dfh='df -h'
alias freeh='free -h'
alias psa='ps aux'
alias ports='ss -tulnp'
Mini‑checklist de troubleshooting¶
Cuando algo falla:
- ✅ ¿Servicio activo?
- ✅ ¿Logs?
- ✅ ¿Red?
- ✅ ¿Permisos?
- ✅ ¿Disco lleno?
- ✅ ¿CPU/RAM?
El orden importa.
Errores comunes¶
Errores habituales:
- Reiniciar sin mirar logs
- Matar procesos a ciegas
- Tocar permisos “para probar”
- Confundir red con servicio
- No usar historial
- No documentar lo que pasó
Consejo: si lo solucionas, anótalo.
Ejercicios prácticos¶
1. Entrada diaria a un servidor¶
Ejecuta, en este orden:
uptime
df -h
free -h
ps aux --sort=-%cpu | head
2. Diagnóstico rápido de servicio¶
systemctl status ssh
journalctl -u ssh -e
3. Red básica¶
ip addr
ip route
ping 8.8.8.8
Mentalidad¶
Un sysadmin eficiente:
- No memoriza todo, sabe dónde mirar
- Sigue patrones, no impulsos
- Usa siempre el mismo flujo
- Piensa antes de ejecutar
- Optimiza el trabajo diario
Esta cheatsheet es una forma de pensar, no solo comandos.
Resumen¶
- El daily use se basa en pocos comandos clave
- Logs, procesos y red son lo más habitual
- systemctl y journalctl son centrales
- Alias e historial multiplican productividad
- El orden de diagnóstico importa
- Menos improvisación, más patrón
Siguiente paso¶
En el siguiente módulo entrarás en:
Laboratorios prácticos (laboratorios.md)
Donde verás:
- Escenarios reales de sysadmin
- Problemas simulados
- Ejercicios completos de troubleshooting
- “Esto pasa en producción”