Mini guía de comandos esenciales de Linux

mini guia comandos linux

Valencia, 23/08/2026, G.B.
¿Cuántos comandos de Linux crees que necesitas saber de memoria para manejarte bien en una terminal? La respuesta probablemente sea muchos menos de los que imaginas.

Cuando empiezas con Linux es fácil pensar que necesitas memorizar una lista interminable de comandos, opciones y parámetros. Pero la terminal no funciona como un examen de memoria: la clave está en saber qué quieres hacer y conocer las herramientas que pueden ayudarte a conseguirlo.

En esta (mini) guía he reunido algunos de los comandos que más vas a utilizar, organizados por categorías.

Antes de entrar en materia conviene tener clara una idea: cada comando puede tener atributos, también llamados opciones o flags, que modifican su comportamiento. Suelen escribirse precedidos de un guion (-l) o de doble guion (--long), y pueden combinarse entre sí, como en ls -la. No hace falta memorizarlos: basta con consultar la ayuda del propio comando siempre que la necesites, con man nombre_del_comando para ver el manual completo o con nombre_del_comando --help para un resumen rápido de sus opciones. Por ejemplo, man ls o ls --help te mostrarán todos los atributos disponibles para listar archivos.

Aquí la tenéis:

📍 Orientarte

ComandoUsoEjemplo
pwdSaber dónde estáspwd
lsListar archivos y directoriosls -la
cdMoverte por el sistemacd /var/www/html
treeVer la estructura de carpetas en árboltree -L 2

📁 Trabajar con archivos

ComandoUsoEjemplo
touchCrear archivostouch index.html
mkdirCrear directoriosmkdir -p proyecto/css
cpCopiarcp -r sitio/ sitio_backup/
mvMover o renombrarmv borrador.txt final.txt
rmEliminarrm -rf carpeta_temporal/
chmodCambiar permisoschmod 644 config.php
chownCambiar propietariochown www-data:www-data index.php

👀 Consultar información

ComandoUsoEjemplo
catMostrar el contenido completocat wp-config.php
lessVisor paginado y navegableless error.log
headPrimeras líneas de un archivohead -n 20 access.log
tailÚltimas líneas, útil en tiempo realtail -f error.log
wcContar líneas, palabras o caractereswc -l access.log

🔎 Buscar

ComandoUsoEjemplo
findLocalizar archivos por criteriosfind /home -name "*.txt"
grepBuscar texto dentro de archivosgrep -r "TODO" ./src
locateBúsqueda rápida usando índice del sistemalocate httpd.conf

⚙️ Sistema y procesos

ComandoUsoEjemplo
dfEspacio en disco por particióndf -h
duEspacio usado por carpetadu -sh /var/www/*
freeMemoria RAM disponiblefree -h
unameInformación del sistemauname -a
psProcesos en ejecuciónps aux
topMonitor de procesos en tiempo realtop
killTerminar un proceso por PIDkill -9 1234
systemctlGestionar servicios del sistemasystemctl status apache2

🌐 Red

ComandoUsoEjemplo
ipConfiguración de redip a
pingComprobar conectividadping -c 4 8.8.8.8
ssConexiones y puertos activosss -tulpn
curlHacer peticiones a URLs, probar APIscurl -I https://indaga.net

🆘 Ayuda

ComandoUsoEjemplo
manManual completo de un comandoman grep
--helpResumen rápido de opcionesrsync --help
whatisDescripción de una línea de un comandowhatis tail

Combinaciones útiles

Encadenar comandos con el símbolo | (pipe) multiplica su potencia, por ejemplo:

ps aux | grep firefox

permite localizar procesos relacionados con Firefox, mientras que:

find /home -name "*.txt"

busca archivos .txt dentro de /home.

Conclusión

Lo más importante es que no necesitas aprenderlo todo de golpe. Aprende primero para qué sirve cada herramienta y úsala cuando realmente la necesites. Con la práctica, los comandos que más utilizas acabarán saliendo solos.

Comandos su y sudo en Linux: qué son, en qué se diferencian y cómo usarlos bien

sudo su

Valencia, 16/08/2026, G.B.
Si administras un sistema Linux, tarde o temprano necesitas ejecutar algo con privilegios de administrador. Para eso existen dos comandos clásicos: su y sudo. Se confunden a menudo porque hacen «cosas parecidas», pero funcionan de forma bastante distinta y esa diferencia importa, sobre todo en seguridad.

Qué hace su

su (substitute user) cambia de usuario dentro de la misma sesión de terminal, sin cerrar la sesión actual. Si lo ejecutas sin argumentos, intenta convertirte en root:

su

Te pedirá la contraseña de root. El problema en distribuciones como Ubuntu es que, por defecto, la cuenta root no tiene contraseña establecida (está bloqueada), así que su a secas no funciona salvo que la actives manualmente con sudo passwd root.

Un matiz importante que mucha gente pasa por alto: su sin el guión no carga el entorno completo del usuario destino (variables de entorno, PATH, etc.), lo que puede provocar errores de «orden no encontrada». La forma correcta es:

su -

Esto sí simula un login completo como root, con su propio entorno.

También puedes cambiar a otro usuario que no sea root:

su - nombreusuario

Y ejecutar un único comando como ese usuario sin abrir una sesión interactiva completa:

su nombreusuario -c 'whoami'

Qué hace sudo

sudo (superuser do) no cambia de usuario: ejecuta un comando puntual con privilegios elevados, pidiendo tu propia contraseña, no la de root.

sudo apt update
sudo systemctl restart nginx

Esto es justo lo que hace que Ubuntu y macOS desactiven la contraseña de root por defecto: en vez de compartir una contraseña maestra entre varios administradores, cada uno usa la suya y sudo decide, según el fichero /etc/sudoers, qué puede hacer cada cual.

Si necesitas una sesión completa como root en lugar de un comando suelto, existe el equivalente moderno:

sudo -i

Es prácticamente lo mismo que su -, pero pasando por el mecanismo de autenticación de sudo.

Diferencias clave (resumen práctico)

susudo
Contraseña que pideLa del usuario destino (root)La tuya propia
Uso típicoAbrir una sesión completaEjecutar un comando puntual
Registro de auditoríaLimitadoRegistra en /var/log/auth.log quién ejecutó qué y cuándo
Granularidad de permisosTodo o nadaSe puede limitar por comando, usuario o grupo
Estado en UbuntuRoot bloqueado por defectoHabilitado y recomendado

Este último punto es la razón real por la que sudo se ha impuesto: permite dar acceso administrativo limitado (por ejemplo, solo a systemctl restart nginx, no a todo el sistema), mientras que su es binario: o tienes la contraseña de root, o no tienes nada.

Configurar quién puede usar sudo

Los permisos se definen en /etc/sudoers, pero nunca se edita directamente con un editor de texto normal: un error de sintaxis ahí puede dejarte sin forma de recuperar privilegios de administrador. Se usa siempre:

sudo visudo

visudo bloquea el archivo, valida la sintaxis antes de guardar y evita dejar el sistema en un estado roto.

Hoy en día se recomienda no tocar /etc/sudoers en sí, sino añadir ficheros propios en /etc/sudoers.d/, por ejemplo:

sudo visudo -f /etc/sudoers.d/miusuario

Con una línea como esta le das a un usuario acceso completo:

miusuario ALL=(ALL:ALL) ALL

O, de forma mucho más segura, acceso solo a un comando concreto sin pedir contraseña (útil para scripts automatizados o tareas programadas):

deploy ALL=(root) NOPASSWD: /usr/bin/systemctl restart nginx

Añadir a un usuario al grupo sudo (en Ubuntu/Debian) tiene el mismo efecto que la primera línea, y suele ser más práctico que editar ficheros a mano:

sudo usermod -aG sudo nombreusuario

Comandos de sudo que conviene conocer

  • sudo -l — lista qué comandos puede ejecutar tu usuario con sudo.
  • sudo -k — invalida la caché de autenticación, así el próximo sudo te vuelve a pedir contraseña.
  • sudo -v — refresca el «ticket» de sudo sin ejecutar ningún comando.
  • sudo !! — repite el último comando pero con sudo delante (muy útil cuando olvidas anteponerlo).

Sobre este último: por defecto, tras autenticarte con sudo, el sistema no vuelve a pedir contraseña durante 15 minutos. Es cómodo, pero también un riesgo si dejas la terminal desatendida. Se puede ajustar (o eliminar) ese margen con Defaults timestamp_timeout=0 en /etc/sudoers.d/.

sudo su: el atajo que todo el mundo usa

Es habitual ver esta combinación:

sudo su

Aquí pides tu propia contraseña (vía sudo) para lanzar una sesión de root (vía su), sin necesidad de activar nunca la contraseña de root. Es el método recomendado si de verdad necesitas una shell interactiva como root en un sistema Ubuntu moderno, en lugar de activar la cuenta root manualmente.

Alternativa más moderna: doas

En distribuciones más minimalistas (OpenBSD, y disponible también en Debian/Ubuntu vía paquete) existe doas, pensado como una alternativa ligera a sudo, con una configuración mucho más simple en /etc/doas.conf. No ha desplazado a sudo en el mundo Ubuntu/Debian, pero es una opción a tener en cuenta en entornos donde se prioriza minimizar la superficie de ataque.

Buenas prácticas

  1. Evita trabajar como root de forma continua; usa sudo comando a comando.
  2. Nunca edites /etc/sudoers sin visudo.
  3. Da permisos específicos por comando (NOPASSWD con ruta exacta) en vez de acceso total cuando sea posible, especialmente para cuentas de automatización.
  4. Revisa /var/log/auth.log periódicamente si gestionas un servidor con varios administradores; ahí queda constancia de cada uso de sudo.
  5. Ten en cuenta que sudo -s abre un shell que no registra los comandos que escribas dentro de él, a diferencia de invocaciones individuales de sudo comando. Si te importa la auditoría, evita ese patrón.

En resumen

su cambia de identidad; sudo presta privilegios para una acción concreta sin dejar de ser tú mismo. En cualquier sistema Ubuntu o Debian actual, la recomendación sigue siendo la misma que hace más de una década: usa sudo para el día a día, reserva sudo -i o sudo su para cuando de verdad necesites una shell completa como root, y controla los permisos finos vía visudo y /etc/sudoers.d/.

📦 Script de copia de seguridad en Linux de tu carpeta home con rsync

Ya tengo un script para copias de seguridad en mi PC con Linux, pero utilizo el comando cp.  El problema es que cp no tiene opción –exclude nativa, por lo que la solución más limpia es sustituirlo por rsync, que es su equivalente mejorado y acepta exclusiones. El resultado es idéntico en cuanto a la copia, pero con control total sobre lo que se incluye.

Las rutas de caché a excluir (en mi caso particular, aunque no son todas)  son:

  • Chromium: .cache/chromium
  • Brave: .cache/BraveSoftware
  • Firefox: .cache/mozilla

NOTA: Ojo, que en mi caso Chromium y Firefox están instalados con snap!

Aquí está el script con bash en miaso particular -copiando a un disc duro externo SSD denominado 224GB : Continuar leyendo «📦 Script de copia de seguridad en Linux de tu carpeta home con rsync»

El Comando `lastb` en Linux: ¿Qué es y para qué sirve?

lastb

En el mundo de Linux, la administración y la seguridad del sistema son aspectos fundamentales que todo administrador debe dominar. Uno de los comandos que puede ser de gran utilidad en este contexto es `lastb`. Veamos para qué se utiliza y sus atributos más relevantes.

¿Qué es `lastb`?

El comando `lastb` es una herramienta de línea de comandos en sistemas Linux que se utiliza para mostrar una lista de los intentos de inicio de sesión fallidos en el sistema. Esta información se extrae del archivo de registro `/var/log/btmp`, que almacena los registros de los intentos de acceso no autorizados. Al igual que el comando `last`, que muestra los inicios de sesión exitosos, `lastb` se centra en aquellos que no lograron acceder al sistema. Continuar leyendo «El Comando `lastb` en Linux: ¿Qué es y para qué sirve?»

Comando rsync en Linux

sincronizacion

De vuelta de nuevo por Indaga…

El comando rsync (que significa remote synchronization o sincronización remota) es una herramienta poderosa y versátil para sincronizar archivos y directorios entre dos ubicaciones. rsync se puede usar para replicar datos, realizar copias de seguridad incrementales, copiar archivos entre sistemas y como reemplazo de los comandos scp, sftp y cp.

rsync emplea un algoritmo que reduce la cantidad de datos transferidos al copiar únicamente las partes de los archivos que han sido modificadas. También puede reanudar transferencias interrumpidas y ofrece opciones para excluir archivos, comprimir datos durante la transferencia y mucho más…

Veamos las opciones más comunes y algunos ejemplos de uso. Al final, dejo un pequeño script que estoy utilizando para hacer copias de seguridad recursivas de mi usuario a 2 discos duros externos, excluyendo la caché de Firefox y Edge. Pero ahora, veamos las opciones más comunes de rsync y algunos pequeños ejemplos: Continuar leyendo «Comando rsync en Linux»

Descomprimir archivos .tar en Linux, cambiar su ubicación y darles permisos

comprimir archivos

Adjunto los pasos para descomprimir archivos .tar en Linux, moverlos y cambiar sus permisos en Linux:. También un breve resumen sobre los comandos chmod y chown. Aquí va:

Descomprimir archivos: Para descomprimir un archivo, puedes usar el comando tar. Por ejemplo, si tienes un archivo llamado archivo.tar.gz, puedes descomprimirlo con el siguiente comando:
tar -xzf archivo.tar.gz

Mover archivos: Para mover archivos, puedes usar el comando mv. Por ejemplo, si quieres mover el archivo archivo.txt al directorio /home/usuario/directorio, puedes hacerlo con el siguiente comando:
mv archivo.txt /home/usuario/directorio

Cambiar permisos de archivos: Para cambiar los permisos de un archivo, puedes usar el comando chmod. Por ejemplo, si quieres dar permisos de lectura, escritura y ejecución al propietario del archivo archivo.txt, puedes hacerlo con el siguiente comando:
chmod 700 archivo.txt

Este comando dará permisos de lectura, escritura y ejecución (rwx) al propietario del archivo, y ningún permiso a los demás. Continuar leyendo «Descomprimir archivos .tar en Linux, cambiar su ubicación y darles permisos»

Preparando un pequeño tutorial de comandos Linux

debian

Tras una larga pausa sin publicar nada en este viejo blog, he decidido que voy a crear una mini sección en Indaga (creo que de nuevo…) de comandos Linux. Iba a hacerlo en un wiki (con DokuWiki) que me he creado en un subdominio de Puntocomunica. Pero Indaga ya asumió la mayoría de entradas de Know-How y Linuxall (ambas webs ya desaparecidas, extintas como los dinosaurios, o evolucionadas, como las aves son de los dinosaurios…), por lo que creo que ‘toca’ hacerlo aquí.

¿Y cuál es el motivo, la razón? Pues simplemente aprender. Y la mejor forma de aprender, además dela experiencia, es enseñando, en mi opinión.

¿Y en qué me basaré, cuál será la bibliografía? Además de las páginas oficiales, iré dejando los enlaces al respecto (ver al final).

En breve lo pongo en marcha (eso espero!). Hasta pronto!

Material inicial (se irá ampliando):
https://www.systutorials.com/
https://francisconi.org/linux/comandos

Averiguar la clave de Windows desde la terminal Linux

averiguar clave windows

Si tienes instalado un Windows 10/11 en una partición de tu disco duro, y si además tienes instalado Linux en otra partición, puedes averiguar rápidamente la clave de tu Windows con el siguiente comando:

sudo strings /sys/firmware/acpi/tables/MSDM

Ejemplo:
guillermo@guillermo-HP-ProOne-600-G2-21-5-in-Non-Touch-AiO:
~$ sudo strings /sys/firmware/acpi/tables/MSDM

[sudo] contraseña para guillermo:
MSDMU
HPQOEMSLIC-BPC
HP
AQUÍ SE VISUALIZARÁ TU CLAVE DE WINDOWS
guillermo@guillermo-HP-ProOne-600-G2-21-5-in-Non-Touch-AiO:~$

Habilitar la vista previa rápida de archivos con Nautilus, el gestor ‘clásico’ de archivos de Gnome

sushi-gnome

sushi-gnomeLa vista previa rápida es una característica bastante útil para un gestor de archivos. El gestor de archivos Dolphin de KDE la ofrece como una característica integrada.

Puedes previsualizar archivos como PDF, texto, imágenes, audio, etc. También puedes desplazarte por los documentos mientras estás en la vista previa.

En Nautilus, el ‘clásico’ gestor de archivos del escritorio Gnome, necesitas instalar gnome-sushi para obtener esta característica:

sudo apt install gnome-sushi

Si no funciona a la primera, ejecuta sudo apt-get update.

Una vez ejecutada la orden apt install gnome-sushi en la terminal, cierra todas las instancias del gestor de archivos y ábrelo de nuevo. Para ver la vista previa, seleccione un archivo, pulsa la tecla Espacio y listo!