Comandos básicos de Linux para administradores de sistemas
Bienvenido al mundo de la administración de sistemas Linux. Si estás empezando, la terminal puede parecer un lugar oscuro y lleno de código, pero en realidad es tu mejor aliada para tener control total sobre tu servidor. No necesitas ser un hacker para manejarla; solo necesitas conocer los comandos adecuados y practicar un poco.
En esta guía, vamos a recorrer los comandos linux básicos que todo sysadmin debería conocer. Piensa en esto como tu manual de supervivencia para el día a día. Desde navegar entre carpetas hasta revisar el rendimiento del sistema, cubriremos lo esencial para que te sientas seguro en la linux terminal.
Vamos a empezar con lo más básico: moverse y explorar. Si no sabes dónde estás, difícilmente podrás administrar algo.
Navegación y exploración del sistema
Antes de tocar archivos o procesos, debes saber cómo moverte. Linux organiza todo en un árbol de directorios. La raíz es /, y desde ahí cuelgan todo: /home, /etc, /var, etc.
¿Dónde estoy? pwd
El comando pwd (print working directory) te dice exactamente en qué carpeta te encuentras. Es tu GPS personal.
pwd
Te devolverá algo como /home/usuario. Siempre que te sientas perdido, escríbelo.
Listar contenido: ls
El comando ls (list) muestra los archivos y carpetas de tu ubicación actual. Por sí solo es útil, pero con opciones se vuelve poderoso.
ls -l: Muestra una lista detallada (permisos, propietario, tamaño, fecha).ls -a: Muestra archivos ocultos (los que empiezan con punto, como.bashrc).ls -lh: Muestra tamaños en formato legible para humanos (KB, MB).
ls -lh /var/log
Verás los archivos de log del sistema con sus tamaños.
Cambiar de directorio: cd
cd (change directory) te permite moverte. Es intuitivo.
cd /ruta/completa: Te lleva a una ruta absoluta.cd ..: Sube un nivel (al directorio padre).cd ~: Te lleva a tu carpeta de usuario (home).cd -: Te lleva al directorio anterior en el que estabas.
[TIP] Si escribes
cdsin argumentos, también te lleva a tu home. Es un atajo rápido.
Explorar el árbol: tree
No viene instalado por defecto en todas las distribuciones, pero es muy visual. Muestra la estructura de carpetas como un árbol.
tree /etc
Si no lo tienes, instálalo con sudo apt install tree (en Debian/Ubuntu).
Gestión de archivos y directorios
Ahora que sabes moverte, toca crear, copiar, mover y eliminar. Aquí tienes los comandos estrella.
Crear directorios: mkdir
mkdir (make directory) crea carpetas.
mkdir nueva_carpeta: Crea una carpeta en el directorio actual.mkdir -p ruta/larga/con/subcarpetas: Crea toda la estructura de una vez, sin errores si ya existe.
mkdir -p proyectos/2025/backups
Crear archivos vacíos: touch
touch crea un archivo vacío o actualiza la fecha de modificación de uno existente.
touch notas.txt
Copiar archivos: cp
cp (copy) duplica archivos o directorios.
cp origen destino: Copia un archivo.cp -r origen_carpeta destino_carpeta: Copia una carpeta y todo su contenido (recursivo).cp -i origen destino: Pide confirmación antes de sobrescribir.
cp /etc/nginx/nginx.conf /home/usuario/backup_nginx.conf
Mover o renombrar: mv
mv (move) sirve para mover archivos o renombrarlos. Es como cortar y pegar.
mv origen destino: Mueve o renombra.mv -i origen destino: Pide confirmación si el destino existe.
mv notas.txt documentos/notas_viejas.txt
Eliminar archivos: rm
rm (remove) borra. Cuidado: en Linux no hay papelera de reciclaje.
rm archivo.txt: Elimina un archivo.rm -r carpeta: Elimina una carpeta y todo su contenido (recursivo).rm -f archivo: Forza la eliminación sin preguntar.
[WARNING] Nunca ejecutes
rm -rf /a menos que quieras destruir todo el sistema. Es el equivalente a formatear el disco duro desde la terminal.
Visualización y edición de archivos
A veces solo necesitas ver qué hay dentro de un archivo, no editarlo. Para eso existen comandos ligeros.
Ver contenido: cat, less, head, tail
cat archivo: Muestra todo el contenido de golpe. Útil para archivos pequeños.less archivo: Muestra el contenido página por página. Presionaqpara salir,fpara avanzar,bpara retroceder.head -n 10 archivo: Muestra las primeras 10 líneas.tail -n 10 archivo: Muestra las últimas 10 líneas.tail -f archivo: Sigue el archivo en tiempo real (ideal para logs).
tail -f /var/log/syslog
Verás cómo se actualiza el log del sistema mientras ocurren eventos.
Buscar texto: grep
grep busca patrones dentro de archivos. Es el buscador de la terminal.
grep "error" archivo.log: Muestra las líneas que contienen "error".grep -i "error" archivo.log: Ignora mayúsculas/minúsculas.grep -r "config" /etc: Busca recursivamente en todo/etc.
grep -r "listen" /etc/nginx/
Encontrarás todas las líneas donde se define el puerto de escucha en Nginx.
Gestión de usuarios y permisos
Como sysadmin, controlar quién hace qué es clave. Linux maneja permisos con usuarios, grupos y niveles.
Saber quién eres: whoami
whoami
Te dice el nombre del usuario actual.
Cambiar de usuario: su y sudo
su usuario: Cambia al usuario indicado (te pide su contraseña).sudo comando: Ejecuta un comando con permisos de superusuario (root).sudo -i: Abre una sesión como root (cuidado).
[INFO] En servidores modernos se prefiere
sudoen lugar de loguearse directamente como root. Es más seguro porque deja registro de quién ejecutó qué.
Permisos de archivos: chmod, chown, chgrp
Los permisos se representan con letras (rwx) o números (755, 644).
chmod 755 script.sh: Da permisos de lectura, escritura y ejecución al dueño; solo lectura y ejecución al grupo y otros.chown usuario:grupo archivo: Cambia el propietario y grupo.chgrp grupo archivo: Cambia solo el grupo.
chmod +x instalar.sh
Hace que el archivo instalar.sh sea ejecutable.
Monitoreo del sistema
Un buen sysadmin siempre vigila. Aquí tienes los comandos para ver qué está pasando.
Procesos: ps, top, htop
ps aux: Lista todos los procesos en ejecución.top: Muestra procesos en tiempo real, ordenados por uso de CPU.htop: Versión mejorada de top (más visual, con colores). Instálalo consudo apt install htop.
htop
Verás una tabla interactiva con barras de CPU, memoria y la lista de procesos.
Espacio en disco: df y du
df -h: Muestra el espacio libre y usado de todos los discos, en formato legible.du -sh carpeta: Muestra el tamaño total de una carpeta.du -h --max-depth=1: Muestra el tamaño de cada subcarpeta de primer nivel.
df -h
Te dirá algo como: /dev/sda1 50G 30G 20G 60% /
Memoria RAM: free
free -h: Muestra memoria RAM y swap.
free -h
Verás total, usado, libre, buffers/cache.
Tiempo de actividad: uptime
uptime
Te dice desde cuándo está encendido el servidor y la carga promedio.
Red y conectividad
La red es el corazón de cualquier servicio. Estos comandos te ayudan a diagnosticar.
Ver interfaces de red: ip a
Reemplazó al antiguo ifconfig. Muestra todas las interfaces IP.
ip a
Verás direcciones IPv4, IPv6, estado (UP/DOWN).
Hacer ping: ping
Prueba conectividad con un host.
ping -c 4 google.com
Envía 4 paquetes y muestra si hay respuesta.
Ver conexiones activas: ss
Reemplazó a netstat. Muestra sockets abiertos.
ss -tuln: Muestra puertos en escucha TCP y UDP.
ss -tuln
Verás qué servicios están escuchando en qué puertos (por ejemplo, el puerto 80 para HTTP).
Descargar archivos: wget y curl
wget url: Descarga un archivo.curl -O url: También descarga, pero más flexible para APIs.
wget https://wordpress.org/latest.tar.gz
Gestión de servicios y procesos
En un servidor, los servicios (Apache, MySQL, Nginx) se inician, detienen y reinician.
Systemctl (systemd)
La mayoría de distribuciones modernas usan systemd.
sudo systemctl start servicio: Inicia un servicio.sudo systemctl stop servicio: Lo detiene.sudo systemctl restart servicio: Lo reinicia.sudo systemctl status servicio: Muestra su estado.sudo systemctl enable servicio: Lo habilita para que arranque con el sistema.sudo systemctl disable servicio: Lo deshabilita.
sudo systemctl status nginx
Verás si Nginx está corriendo, su PID, y las últimas líneas de log.
Matar un proceso: kill
Si un proceso se cuelga, puedes terminarlo.
kill PID: Envía señal de terminación.kill -9 PID: Lo mata a la fuerza (señal SIGKILL).pkill nombre: Mata procesos por nombre.
Primero encuentra el PID con ps aux | grep nombre.
Comprimir y descomprimir
Ahorrar espacio y transferir archivos es pan de cada día.
Tar
tar -czvf archivo.tar.gz carpeta/: Comprime una carpeta en tar.gz.tar -xzvf archivo.tar.gz: Descomprime.tar -tzvf archivo.tar.gz: Lista el contenido sin extraer.
Las opciones: c (crear), x (extraer), z (gzip), v (verbose), f (archivo).
Zip
zip -r archivo.zip carpeta/: Comprime.unzip archivo.zip: Descomprime.
Consejos de productividad y atajos
La linux terminal tiene atajos que te ahorrarán segundos preciosos.
Historial de comandos
history: Muestra los últimos comandos ejecutados.!n: Ejecuta el comando número n del historial.!!: Repite el último comando.Ctrl + r: Busca en el historial (escribe parte del comando).
Autocompletado con Tab
Presiona Tab mientras escribes un comando, ruta o archivo. Se autocompletará o te mostrará opciones.
Combinaciones de teclas
Ctrl + c: Cancela el comando actual.Ctrl + d: Cierra la terminal.Ctrl + l: Limpia la pantalla (como escribirclear).Ctrl + a: Va al inicio de la línea.Ctrl + e: Va al final de la línea.
Preguntas frecuentes (FAQ)
¿Qué hago si no recuerdo un comando?
Usa man comando (manual) para ver la documentación. Por ejemplo, man ls. Presiona q para salir.
¿Cómo salgo de un comando que se quedó pegado?
Presiona Ctrl + c para interrumpirlo. Si no funciona, prueba Ctrl + z para suspenderlo y luego kill %1 para matarlo.
¿Cuál es la diferencia entre sudo y su?
sudo ejecuta un solo comando como root (o como otro usuario) y pide tu contraseña. su cambia completamente de usuario (normalmente a root) y pide la contraseña del usuario destino. Syspanel (el panel de control que mencionaste) usa sudo internamente para tareas administrativas, y su acceso web es por el puerto 2106.
¿Cómo veo los logs del sistema?
Los logs principales están en /var/log/. Los más comunes son syslog, auth.log, nginx/access.log. Usa tail -f para verlos en tiempo real.
¿Qué es un proceso zombie?
Un proceso que ha terminado pero cuyo padre no ha recogido su estado de salida. Aparece en ps aux con estado Z. Normalmente se resuelve reiniciando el proceso padre o el sistema.
¿Cómo reinicio el servidor de forma segura?
Usa sudo reboot o sudo shutdown -r now. Asegúrate de haber notificado a los usuarios y de que no haya procesos críticos en ejecución.
Conclusión
Dominar estos comandos linux básicos te convertirá en un sysadmin más eficiente y seguro. No se trata de memorizar todos los flags, sino de entender la lógica detrás de cada comando. La práctica constante en la linux terminal hará que todo fluya.
Recuerda: ante la duda, consulta el manual (man), usa --help (por ejemplo, ls --help) y no temas experimentar en un entorno de pruebas. Con el tiempo, estos comandos se volverán una extensión natural de tu trabajo diario.
Ahora, abre tu terminal y empieza a probar. ¡El servidor te está esperando!
