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/.

ddgr: busca en DuckDuckGo desde la terminal en Linux (comandos y ejemplos)

ddgr
ddgr es una utilidad de búsqueda en DuckDuckGo desde la terminal. En lugar de abrir un navegador, introduces palabras clave y ddgr consulta DuckDuckGo, muestra resultados en texto y (opcionalmente) puede abrir enlaces en tu navegador. Está pensado para usuarios que prefieren la consola o para integrar búsquedas rápidas en flujos de trabajo en Linux.

Cómo instalar ddgr en Ubuntu (Ubuntu MATE 22.04)

La instalación más sencilla suele ser con Snap.

  1. Instala Snapd:
    sudo apt update
    sudo apt install snapd
  2. Instala ddgr:
    sudo snap install ddgr
  3. Comprueba que funciona:
    ddgr --version

¿Para qué sirve?

ddgr sirve para:

  • Buscar en DuckDuckGo sin salir del terminal.
  • Ver resultados en texto de forma rápida.
  • Abrir enlaces directamente en el navegador (opcional).
  • Aplicar filtros: región, tiempo, sitios concretos, etc.
  • Integrarse en scripts (por ejemplo, con salida JSON).

Comandos rápidos

Búsqueda simple

ddgr "noticias España"

Más resultados por página

ddgr -n 25 "noticias España"

Con -n defines cuántos resultados por página mostrar. Si N=0, muestra el número real de resultados consultados por página.

Abrir el primer resultado en el navegador

ddgr --ducky "noticias España"

Buscar y salir (sin interacción)

ddgr --np "noticias España"

Mostrar URLs completas

ddgr -x "noticias España"

Buscar por región

ddgr -r us-en "weather"

Limitar por tiempo

ddgr -t w "economía"

Opciones habituales: d (días), w (semana), m (mes), y (año).

Limitar a un sitio

ddgr -w example.com "guía Linux"

Desactivar safe search (avanzado)

ddgr --unsafe "término"

Salida en JSON (útil para scripts)

ddgr --json "noticias España"

Teclas del modo interactivo (omniprompt)

Cuando ddgr te muestra resultados, puedes usar estas teclas:

  • n, p, f: siguiente, anterior o primera página.
  • index: abre el resultado asociado a ese índice.
  • o index/rango/a...: abre varios resultados.
  • O ...: como o, pero intentando abrir en navegador GUI.
  • c index: copia la URL al portapapeles.
  • x: alterna mostrar URL expandida.
  • q (o Ctrl+D / doble Enter): salir.
  • ?: muestra ayuda del omniprompt.
  • d keywords: inicia una nueva búsqueda manteniendo las opciones originales pero cambiando el texto.
  • Si escribes otro texto, se considera como una nueva búsqueda.

Ejemplos prácticos

Abrir el resultado nº 3

ddgr "noticias España"

(luego escribe 3 cuando aparezca el omniprompt)

Abrir varios resultados

ddgr "tecnología"

(por ejemplo, luego usa o 1 3 5)

Abrir el primer resultado directamente

ddgr --ducky "Linux Ubuntu MATE"

Buscar sin interacción y con URLs completas

ddgr --np -x "eventos Valencia"

📦 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»

🚨 URGENTE: Vulnerabilidad del kernel «Copy Fail» (CVE-2026-31431): Acción inmediata requerida

Adjunto una taducción al castellano del artículo del soporte de Nextcloud sobre la reciente vulnerabilidad del Kernel de Linux: Linux Kernel Vulnerability “Copy Fail” (CVE-2026-31431) — Immediate Action Required

Una vulnerabilidad crítica del kernel de Linux conocida como «Copy Fail» (CVE-2026-31431) está siendo activamente discutida y ya cuenta con código de explotación público y fiable disponible.

Esto no es teórico. Esto no es un caso aislado. Si tu sistema es vulnerable y un atacante obtiene cualquier forma de acceso local, el compromiso total como root es trivial.

🔥 Por qué es excepcionalmente peligrosa

  • Afecta a kernels de Linux con muchos años de antigüedad
  • La explotación es determinista (sin condiciones de carrera, sin suposiciones)
  • Funciona en múltiples distribuciones con escasas o ninguna modificación
  • No deja rastros en el disco (las comprobaciones de integridad de archivos no sirven de nada)

En la práctica equivale a: un exploit → root en casi cualquier sistema

Continuar leyendo «🚨 URGENTE: Vulnerabilidad del kernel «Copy Fail» (CVE-2026-31431): Acción inmediata requerida»

🐚Un pequeño script en Bash para decodificar URLs (direcciones web)

Dejo un pequeño script realizado en Bash (uso en GNU/Linux), para decodificar direcciones web, como por ejemplo los enlaces adjuntados en los correos electrónicos cuando accedes al servicio GMX vía webmail.

Recuerda que tienes que darle permisos de ejecución primero:

chmod +x decodeURL.sh

NOTA: El comando sudo al principio no es necesario, ya que el archivo es tuyo (lo acabas de crear) y por lo tanto tienes permisos para modificarlo sin necesidad de ser superusuario. Usar sudo innecesariamente es además una mala práctica que conviene no fomentar.

Luego lo ejecutas así:

./decodeURL.sh

Aquí va: Continuar leyendo «🐚Un pequeño script en Bash para decodificar URLs (direcciones web)»

Cómo instalar Doom Classic en Ubuntu

De vuelta en Indaga.net…

 

Doom tiene más de 30 años y todavía engancha. Si nunca lo has jugado o quieres revivirlo en tu PC con Linux, vamos a ver cómo instalarlo en Ubuntu es más sencillo de lo que parece, aunque el camino tiene alguna que otra trampa... En este post te explico paso a paso cómo dejarlo funcionando con GZDoom y Freedoom2, dos herramientas gratuitas y legales, sin necesidad de comprar nada ni tocar archivos del sistema.

Instalar GZDoom

sudo snap install gzdoom

Conseguir el WAD (datos del juego)

GZDoom necesita un archivo WAD para funcionar. La opción gratuita y legal es Freedoom2:

wget https://github.com/freedoom/freedoom/releases/download/v0.13.0/freedoom-0.13.0.zip
unzip freedoom-0.13.0.zip

Copiar el WAD al directorio correcto

El snap de GZDoom está aislado y solo puede acceder a su propia carpeta, así que hay que copiar el WAD ahí dentro:

mkdir -p ~/snap/gzdoom/current/.config/gzdoom/
cp freedoom-0.13.0/freedoom2.wad ~/snap/gzdoom/current/.config/gzdoom/

Confirma que se copió correctamente antes de continuar:

ls ~/snap/gzdoom/current/.config/gzdoom/

Lanzar el juego

gzdoom

Verás varios mensajes de advertencia sobre appmenu-gtk-module, canberra-gtk-module y Qt session — son completamente inofensivos, ignóralos.

Errores comunes

  • Los archivos .wad de chocolate-doom pueden ser directorios, no archivos reales — no sirven.
  • Siempre verifica con ls que el WAD se copió correctamente antes de lanzar el juego.
  • El snap no puede acceder a carpetas fuera de ~/snap/gzdoom/, así que no sirve de nada poner el WAD en otra carpeta.

Controles básicos

El movimiento se hace con WASD — cuatro teclas del teclado: W para avanzar, A para moverse a la izquierda, S para retroceder y D para moverse a la derecha. Es el esquema estándar en casi todos los juegos de PC.

Para el resto de acciones: el ratón apunta, el click izquierdo o Ctrl dispara, Space o E abre puertas y activa palancas, y Tab abre el mapa.

Para salir del primer nivel, busca el cartel EXIT y camina sobre el suelo marcado debajo de él.

Atajos de teclado o shortcuts en Linux

Aunque esto lo he publicado en una intranet de mi trabajo, quiero publicarlo aquí también, en Indaga.net. ¿Y por qué? Porque esa intranet es privada y la información solo llegará a los usuarios de la misma. Aquí llegará a todos los que quieran… Así pues, veamos los atajos de teclado (shortcuts) más comunes y útiles en Linux:

Atajos generales

  • Ctrl + Alt + T: Abre una terminal.
  • Ctrl + C: Cancela el comando actual en la terminal.
  • Ctrl + Z: Suspende el comando actual en la terminal.
  • Ctrl + D: Cierra la terminal o finaliza la entrada en la terminal.
  • Ctrl + A: Mueve el cursor al inicio de la línea en la terminal.
  • Ctrl + E: Mueve el cursor al final de la línea en la terminal.

Navegación en la terminal

  • Ctrl + R: Busca en el historial de comandos.
  • Ctrl + L: Limpia la pantalla de la terminal.
  • Tab: Autocompleta nombres de archivos y comandos.

Gestión de ventanas

  • Alt + Tab: Cambia entre aplicaciones abiertas.
  • Super (Tecla de Windows) + D: Muestra el escritorio.
  • Super + L: Bloquea la pantalla.

Atajos en el entorno de escritorio

  • Ctrl + Shift + N: Crea una nueva carpeta en el explorador de archivos.
  • Ctrl + P: Imprime el documento actual (en aplicaciones compatibles).
  • Ctrl + S: Guarda el documento actual.

Navegación en el navegador

  • Ctrl + T: Abre una nueva pestaña.
  • Ctrl + W: Cierra la pestaña actual.
  • Ctrl + Shift + T: Reabre la última pestaña cerrada.

Edición de texto

  • Ctrl + X: Corta el texto seleccionado.
  • Ctrl + C: Copia el texto seleccionado.
  • Ctrl + V: Pega el texto copiado o cortado.
  • Ctrl + Z: Deshace la última acción.
  • Ctrl + Y: Rehace la última acción.

Estos atajos pueden variar ligeramente dependiendo del entorno de escritorio que estés utilizando (como GNOME, KDE, XFCE, etc.), pero en general, muchos de ellos son estándar en la mayoría de las distribuciones de Linux.

¿Por qué tras instalar la aplicación Autofirma en Ubuntu Mate no puedo abrirla?

autofirma

Pero al final, sí he podido…

Lo primero, porque en mi opinión, la Administración Pública del Gobierno de España parece ser que tan solo piensa en el sistema operativo de Microsoft Windows. Eso es un grave error que vamos (estamos) pagando ya en la Unión Europea. Y si no, tiempo al tiempo…

Bueno, tras instalar la aplicación Autofirma en mi Ubuntu Mate 24.04.02 LTS (un excelente sistema operativo…), he comprobado que no se ejecutaba en mi distro Ubuntu Mate 22.04 y ver que no se ejecutaba. he hecho una búsqueda rápida y he podido dar conuna solución: instalarr el paquete openjdk-11-jre. Con eso, todo resuelto. aquí lo dejo:

sudo apt-get install openjdk-11-jre

Si eso no te funcionara (a mí sí), mira lo siguiente: Continuar leyendo «¿Por qué tras instalar la aplicación Autofirma en Ubuntu Mate no puedo abrirla?»

Cómo utilizar el archivo fstab para montar un nuevo disco en Linux

ssd

Y otorgar permisos de lectura y escritura al usuario

Montar un nuevo disco en Linux y configurarlo para que se monte automáticamente al iniciar el sistema es una tarea común que se puede realizar utilizando el archivo fstab (aunque también hay formas ‘gráficas’ de hacerlo, como por ejemplo, utilizando la aplicación Discos (Disks) de la distro Ubuntu). Nota: este enlace te será útil al respecto: https://help.ubuntu.com/stable/ubuntu-help/disk.html.es

Vamos a ver cómo hacerlo con fstab. Además, vamos también a ver cómo otorgar permisos de lectura y escritura a un usuario específico.

Paso 1: Identificar el nuevo disco

Antes de modificar el archivo fstab, necesitas identificar el nuevo disco que deseas montar. Puedes hacerlo utilizando el comando `lsblk` o `fdisk -l`. Abre una terminal y ejecuta:

lsblk

Esto mostrará una lista de todos los dispositivos de bloque conectados. Busca el nuevo disco, que generalmente se mostrará como /dev/sdX (donde `X` es una letra que representa el disco, como `a`, `b`, etc.).

Paso 2: Crear un sistema de archivos (si es necesario)

Si el disco es nuevo y no tiene un sistema de archivos, necesitarás crear uno. Por ejemplo, para crear un sistema de archivos ext4, utiliza el siguiente comando (reemplaza /dev/sdX1 con la partición correcta):

sudo mkfs.ext4 /dev/sdX1

Nota: Este comando borrará todos los datos en la partición, así que asegúrate de que no haya información importante en ella.

Paso 3: Crear un punto de montaje

El siguiente paso es crear un directorio donde se montará el disco. Por ejemplo, puedes crear un directorio en /mnt:

sudo mkdir /mnt/nuevo_disco

Paso 4: Editar el archivo fstab

Ahora, necesitas editar el archivo fstab para que el sistema monte automáticamente el disco al iniciar. Abre el archivo con un editor de texto, como `nano` o ‘gedit:

sudo nano /etc/fstab

Agrega una línea al final del archivo con la siguiente sintaxis:

/dev/sdX1 /mnt/nuevo_disco ext4 defaults 0 2

Reemplaza /dev/sdX1 con la ruta de tu disco y `ext4` con el tipo de sistema de archivos que hayas creado. La opción `defaults` establece las opciones de montaje predeterminadas.

Paso 5: Montar el disco

Para montar el disco sin reiniciar, ejecuta el siguiente comando:

sudo mount -a

Esto montará todos los sistemas de archivos listados en fstab.

Paso 6: Otorgar permisos de lectura y escritura

Para otorgar permisos de lectura y escritura a un usuario específico, primero necesitas saber el nombre de usuario. Supongamos que el nombre de usuario es `usuario`. Cambia la propiedad del directorio montado al usuario:
sudo chown usuario:usuario /mnt/nuevo_disco

Luego, puedes ajustar los permisos para asegurarte de que el usuario tenga acceso completo:

sudo chmod 755 /mnt/nuevo_disco

Esto otorgará permisos de lectura y ejecución a todos, y permisos de escritura al propietario.

Paso 7: Verificar el montaje

Para asegurarte de que el disco se ha montado correctamente y que los permisos son los adecuados, puedes ejecutar:

df -h

Esto mostrará todos los sistemas de archivos montados y su uso. También puedes verificar los permisos con:

ls -l /mnt

Siguiendo estos pasos, habrás montado un nuevo disco en Linux utilizando el archivo fstab y otorgado permisos de lectura y escritura a un usuario específico. Recuerda hacer siempre una copia de seguridad de tus datos antes de realizar cambios en el sistema de archivos.

fstab

Pasos para instalar ollama y deepseek-r1 15b en Linux

ollama_installing

Para instalar Ollama y DeepSeek-R1 15B en Linux necesitarás algunas herramientas como `python3` y `curl`. En mi caso, con un PC I3, 8 GB de RAM y sin GPU.

La instalación es posible porque el modelo deepseek-r1 15b consume menos recursos y solo ocupa 1.1 GB. Me gusta porque puedes utilizar el modelo de inteligencia artificial en modo local, sin conexión a Internet. Vamos a verlo: Continuar leyendo «Pasos para instalar ollama y deepseek-r1 15b en Linux»