Todos los cheatsheets
devops · Intermedio

Terminal Linux: Comandos Vitales

Pierde el miedo a la pantalla negra. Navega por carpetas, gestiona archivos y controla el servidor sin tocar el ratón. Lo básico de la supervivencia.

6 secciones · 30 snippets

Gestión de Archivos

Comandos fundamentales para navegar y manipular archivos y directorios en Linux.

Listar archivos detallados

Lista todos los archivos, incluidos los ocultos, con detalles de permisos, tamaño y fecha

BASH
ls -lah

Cuándo usar: Cuando necesitas visualizar todos los archivos con información detallada, incluidos los archivos ocultos (que empiezan con .)

Copiar archivos recursivamente

Copia directorios y su contenido de forma recursiva preservando atributos

BASH
cp -r /origem /destino

Cuándo usar: Para copia de seguridad de directorios completos o duplicación de estructuras de carpetas

Mover o renombrar archivos

Mueve archivos/directorios o renombra si el destino está en el mismo directorio

BASH
mv arquivo.txt /novo/caminho/mv arquivo_antigo.txt arquivo_novo.txt

Cuándo usar: Para organizar archivos o renombrarlos directamente desde la terminal

Buscar archivos por nombre

Localiza archivos en el sistema de forma recursiva usando patrones glob

BASH
find /caminho -name "*.log"find . -type f -name "config*"

Cuándo usar: Cuando necesitas localizar archivos específicos en grandes estructuras de directorios

Crear directorios anidados

Crea múltiples niveles de directorios a la vez

BASH
mkdir -p /projeto/src/components/ui

Cuándo usar: Para crear estructuras de carpetas complejas rápidamente sin necesidad de crear cada nivel manualmente

Permisos y Propiedad

Control de acceso a archivos y directorios usando chmod, chown y umask.

Cambiar permisos numéricamente

Define permisos usando notación octal (rwx = 7, rw- = 6, r-x = 5)

BASH
chmod 755 script.shchmod 644 arquivo.txt

Cuándo usar: 755 para ejecutables (rwxr-xr-x), 644 para archivos de datos (rw-r--r--)

Cambiar permisos simbólicamente

Modifica permisos usando notación simbólica (u=user, g=group, o=others)

BASH
chmod u+x script.shchmod go-w arquivo.txt

Cuándo usar: Cuando quieres modificar permisos específicos sin alterar los otros

Cambiar propietario recursivamente

Cambia el propietario y grupo de archivos/directorios recursivamente

BASH
chown -R usuario:grupo /var/www/html

Cuándo usar: Para corregir permisos después de un deployment o configuración de servidores web

Ver permisos en octal

Muestra los permisos de archivos en formato numérico

BASH
stat -c '%a %n' arquivo.txt

Cuándo usar: Para verificar rápidamente el valor numérico de los permisos actuales

Gestión de Procesos

Monitoreo, control y manipulación de procesos en ejecución en el sistema.

Listar procesos del usuario

Muestra todos los procesos del usuario actual con detalles de CPU y memoria

BASH
ps aux | grep usuariops -ef | grep nginx

Cuándo usar: Para identificar PIDs de procesos específicos o diagnosticar el uso de recursos

Monitorizar procesos en tiempo real

Interfaz interactiva con actualización en tiempo real de procesos

BASH
tophtop

Cuándo usar: Para monitorización continua de CPU, memoria e identificar procesos problemáticos

Matar proceso por PID

Termina un proceso usando diferentes niveles de señal

BASH
kill 1234kill -9 1234kill -SIGTERM 1234

Cuándo usar: kill para terminación elegante, kill -9 para forzar terminación inmediata

Matar proceso por nombre

Termina todos los procesos que corresponden al nombre

BASH
pkill nginxkillall node

Cuándo usar: Cuando conoces el nombre del proceso pero no el PID

Ejecutar proceso en background

Inicia un proceso en segundo plano liberando la terminal

BASH
npm run dev &nohup python3 script.py &

Cuándo usar: Para ejecutar scripts largos sin bloquear la terminal (nohup mantiene la ejecución después del logout)

Red y Conectividad

Herramientas para diagnóstico de red, transferencia de archivos y pruebas de conectividad.

Probar conectividad

Envía paquetes ICMP para verificar si el host está accesible

BASH
ping -c 4 google.comping 192.168.1.1

Cuándo usar: Para verificar conectividad de red y latencia (-c limita la cantidad de paquetes)

Descarga de archivos

Descarga archivos de la web vía HTTP/HTTPS

BASH
wget https://example.com/file.zipcurl -O https://example.com/file.tar.gz

Cuándo usar: wget para descargas simples, curl para APIs y peticiones más complejas

Ver puertos en uso

Lista todos los puertos TCP/UDP abiertos y procesos asociados

BASH
netstat -tulpnss -tulpn

Cuándo usar: Para identificar conflictos de puerto o verificar si un servicio está escuchando

Transferencia segura (SCP)

Copia archivos entre máquinas vía SSH

BASH
scp arquivo.txt user@servidor:/path/scp -r /pasta user@servidor:/destino

Cuándo usar: Para transferir archivos de forma segura entre servidores (usa -r para directorios)

Verificar IP externo

Descubre la dirección IP pública de la máquina

BASH
curl ifconfig.mewget -qO- ifconfig.me

Cuándo usar: Para saber tu IP pública al trabajar remotamente o configurar firewalls

Gestión de Paquetes

Instalación, actualización y eliminación de software usando gestores de paquetes (APT/YUM).

Actualizar lista de paquetes (Debian/Ubuntu)

Sincroniza la lista de paquetes disponibles con los repositorios

BASH
sudo apt update

Cuándo usar: Siempre antes de instalar nuevos paquetes para garantizar versiones actualizadas

Instalar paquete (Debian/Ubuntu)

Descarga e instala paquete con todas las dependencias

BASH
sudo apt install nginx -y

Cuándo usar: Para instalar software a través de los repositorios oficiales (-y confirma automáticamente)

Actualizar sistema (Debian/Ubuntu)

Actualiza todos los paquetes instalados a versiones más recientes

BASH
sudo apt update && sudo apt upgrade -y

Cuándo usar: Mantenimiento regular del sistema para parches de seguridad y mejoras

Eliminar paquete (Debian/Ubuntu)

Desinstala paquete manteniendo archivos de configuración

BASH
sudo apt remove pacotesudo apt purge pacote

Cuándo usar: remove mantiene configs, purge elimina todo (útil para reinstalación limpia)

Buscar paquetes (Debian/Ubuntu)

Busca paquetes disponibles en los repositorios

BASH
apt search python3apt-cache search nodejs

Cuándo usar: Para descubrir el nombre exacto del paquete antes de instalar

Información del Sistema

Comandos para obtener información sobre hardware, sistema operativo y uso de recursos.

Uso de disco

Muestra el espacio usado y disponible en todas las particiones montadas

BASH
df -h

Cuándo usar: Para verificar si hay suficiente espacio en disco (-h muestra en formato legible)

Tamaño de directorios

Calcula el tamaño total de directorios y archivos

BASH
du -sh /var/logdu -h --max-depth=1 /home

Cuándo usar: Para identificar qué directorios están consumiendo más espacio

Uso de memoria

Muestra el uso de RAM y swap en formato legible

BASH
free -h

Cuándo usar: Para diagnosticar problemas de memoria o verificar si se está usando swap

Información de la CPU

Muestra detalles del procesador (modelo, cores, frecuencia)

BASH
lscpucat /proc/cpuinfo

Cuándo usar: Para verificar especificaciones del hardware antes de optimizaciones

Tiempo de actividad del sistema

Muestra cuánto tiempo lleva el sistema funcionando y la carga promedio

BASH
uptime

Cuándo usar: Para verificar la estabilidad del servidor y el load average

Versión del sistema

Identifica distribución Linux y versión del kernel

BASH
uname -acat /etc/os-release

Cuándo usar: Para documentar el entorno o verificar la compatibilidad del software