Comandos básicos de Linux: Tu caja de herramientas diaria
Anteriormente analizamos cómo empezar con Linux y sus distribuciones. El siguiente paso lógico, y el más importante si trabajas en tecnología, es dominar la interfaz de línea de comandos (CLI).
La terminal es el estándar de la industria para administrar servidores, construir pipelines de CI/CD y diagnosticar problemas en producción. Entender estos comandos básicos te permite interactuar con el sistema de manera rápida, reproducible y escalable.
A continuación, presento una referencia estructurada de los comandos fundamentales, agrupados por su caso de uso técnico, para que puedas integrarlos inmediatamente a tu flujo de trabajo.
1. Navegación y Gestión de Archivos
La interacción más frecuente en la terminal es moverse por el sistema de archivos y manipular directorios.
-
ls(List)
Muestra el contenido de un directorio.ls -la: Lista todos los archivos (incluyendo los ocultos que comienzan con.) en formato largo, mostrando permisos, propietario y tamaño.ls -lh: Muestra el tamaño de los archivos en un formato legible para humanos (ej. “5.2M” en lugar de bytes).
-
cd(Change Directory)
Cambia tu ubicación actual en el sistema de archivos.cd /var/log: Navega a una ruta absoluta.cd -: Regresa al directorio inmediatamente anterior.cd ~: Te lleva al directorio home del usuario actual.
-
pwd(Print Working Directory)
Imprime la ruta absoluta del directorio en el que te encuentras, útil cuando trabajas en scripts. -
mkdir(Make Directory)mkdir -p infra/config/nginx: El parámetro-pcrea la jerarquía completa de directorios si no existen, previniendo errores.
-
cpymv(Copy / Move)cp -r conf/ /backup/conf/: Copia directorios de manera recursiva.mv config.yml config.yml.bak: Se usa tanto para mover archivos como para renombrarlos en el mismo directorio.
-
rm(Remove)rm -rf tmp/: Elimina directorios recursivamente y fuerza el borrado sin pedir confirmación. Úsalo con precaución extrema, especialmente si operas comoroot.
2. Monitoreo y Procesos
Diagnosticar el rendimiento del sistema es el día a día de cualquier ingeniero de infraestructura.
-
top/htop
Muestra los procesos en tiempo real, consumo de CPU y RAM.htopes una alternativa más visual que permite filtrar y matar procesos fácilmente. -
df(Disk Free) ydu(Disk Usage)df -h: Muestra el espacio disponible en las particiones montadas.du -sh /var/log/*: Muestra cuánto espacio ocupa un directorio o archivo específico.
-
psykillps aux | grep nginx: Lista todos los procesos y filtra para encontrar el ID del proceso (PID) denginx.kill -9 1234: Fuerza la terminación del proceso con PID 1234 enviando la señal SIGKILL.
3. Procesamiento de Texto y Análisis de Logs
Los servidores hablan en archivos de texto. Estas herramientas te permiten extraer la aguja del pajar.
-
grep(Global Regular Expression Print)grep -i "error" /var/log/syslog: Busca la palabra “error” ignorando mayúsculas/minúsculas.grep -r "TODO" src/: Busca recursivamente dentro del código fuente.
-
cat,lessytailcat config.json: Imprime todo el archivo de golpe.less application.log: Abre un visor paginado para leer archivos grandes sin sobrecargar la memoria.tail -f /var/log/auth.log: Imprime las últimas líneas del archivo y se queda “escuchando” en tiempo real. Indispensable para depurar durante un despliegue.
4. Redes y Conectividad
-
pingycurlping 8.8.8.8: Verifica la latencia y si hay pérdida de paquetes a nivel de red (ICMP).curl -I https://emiliocastro.com.mx: Realiza una petición HTTP y devuelve únicamente las cabeceras de respuesta. Útil para verificar certificados SSL o códigos de estado.
-
ssh(Secure Shell)ssh -i ~/.ssh/id_rsa user@10.0.0.5: Accede de manera segura a un servidor remoto utilizando un par de llaves criptográficas en lugar de contraseña.
-
scp(Secure Copy)scp dump.sql db-admin@192.168.1.100:/tmp/: Transfiere archivos de tu máquina local al servidor remoto a través del protocolo SSH.
5. Privilegios y Administración
-
sudo(SuperUser DO)
Ejecuta comandos con privilegios elevados. En lugar de iniciar sesión permanentemente comoroot(lo cual es un riesgo de seguridad), usassudopara acciones administrativas puntuales como instalar paquetes (sudo apt update) o reiniciar servicios (sudo systemctl restart docker). -
chmodychownchmod +x script.sh: Otorga permisos de ejecución a un script.chown www-data:www-data /var/www/html: Cambia el usuario y grupo propietario de un directorio.
Conclusión
No necesitas memorizar cada parámetro o flag de cada comando. Si tienes dudas sobre cómo opera una herramienta, ejecuta man [comando] (por ejemplo, man grep) para abrir el manual técnico integrado en el sistema operativo.
La fluidez en la terminal no se adquiere leyendo, se adquiere usándola. Integra gradualmente estas herramientas en tus tareas diarias y notarás cómo tu velocidad y control sobre la infraestructura aumentan drásticamente.