El comando sudo en Linux es una poderosa herramienta que permite a los usuarios autorizados ejecutar comandos con privilegios elevados.
Está diseñado para proporcionar un enfoque controlado y seguro para las tareas administrativas, lo que reduce la necesidad de un acceso raíz constante y mitiga los riesgos asociados con las capacidades de superusuario sin restricciones.
Comando Sudo en Linux
El comando sudo en Linux significa superusuario do, es una poderosa utilidad que permite a los usuarios ejecutar comandos con privilegios elevados.

De forma predeterminada, los sistemas Linux tienen una cuenta raíz o de superusuario, que posee acceso sin restricciones a todos los recursos del sistema.
El uso de la cuenta raíz para tareas regulares puede ser riesgoso, ya que otorga un poder sin restricciones que potencialmente puede conducir a modificaciones accidentales del sistema o violaciones de seguridad.
- El comando sudo proporciona un enfoque seguro y más controlado para ejecutar comandos privilegiados. Permite a los usuarios autorizados ejecutar comandos específicos con privilegios elevados temporalmente.
- Esto significa que los usuarios pueden ejecutar tareas administrativas sin necesidad de iniciar sesión como usuario raíz.
- Cuando se ejecuta un comando con sudo, generalmente requiere que el usuario proporcione su propia contraseña, en lugar de la contraseña de root.
- Este paso de autenticación agrega una capa adicional de seguridad y garantiza que solo los usuarios autorizados puedan acceder a las capacidades de superusuario.
- Sudo ofrece flexibilidad para otorgar acceso a comandos específicos o grupos de comandos a usuarios individuales o grupos.
Cómo usar el comando Sudo en Linux
Para usar el comando sudo en Linux, siga las consideraciones de uso del comando sudo como se muestra a continuación.
- Principio de Mínimo Privilegio.
- El comando sudo funciona según el principio de privilegio mínimo, lo que significa que a los usuarios solo se les otorgan los privilegios necesarios para realizar tareas específicas.
- Configuración.
- La configuración del comando sudo se administra a través del archivo sudoers, que normalmente se encuentra en /etc/sudoers.
- El comando visudo se utiliza para editar de forma segura este archivo, realizando comprobaciones de sintaxis para evitar errores.
- Autenticacion de usuario.
- Cuando se usa sudo, los usuarios generalmente deben autenticarse ingresando su propia contraseña de usuario o contraseña de root.
- Especificación del usuario.
- El comando sudo admite diferentes opciones para especificar el usuario de destino al ejecutar comandos. La opción -u o –user permite ejecutar comandos como un usuario específico, lo que brinda flexibilidad en la ejecución de tareas.
- Ejecución de Comandos.
- Los usuarios de sudo pueden ejecutar una amplia gama de comandos con privilegios elevados. El comando sudo permite realizar estas operaciones de forma segura y controlada.
- Variables de entorno.
- El comando sudo restablece las variables de entorno y establece un conjunto limitado de variables para el comando ejecutado. La opción -E o –preserve-env conserva las variables de entorno del usuario.
Usar el comando sudo en Linux es relativamente sencillo. Veamos ahora cómo usar los comandos sudo en Linux.
Verifique también: Cómo eliminar un directorio en Linux usando GUI y líneas de comando
Cómo otorgar acceso a Sudo a los usuarios
Otorgar acceso sudo a los usuarios en Linux implica configurar el archivo sudoers para definir los privilegios de los usuarios y especificar qué comandos pueden ejecutar con permisos elevados.
- Abra una terminal.
- Edite el archivo sudoers.
- Utilice un editor de texto, como nano o vim, para abrir el archivo sudoers. Se recomienda utilizar el comando visudo.
- sudo visudo
- Utilice un editor de texto, como nano o vim, para abrir el archivo sudoers. Se recomienda utilizar el comando visudo.
- Localice la sección Especificación de privilegios de usuario.
- Otorga acceso a Sudo.
- nombre de usuario TODO=(TODO:TODO) TODO
- Reemplace ‘nombre de usuario’ con el nombre de usuario real del usuario.
- Esta línea permite al usuario ejecutar el
apt
comando con privilegios elevados.
- Guarde y salga del archivo sudoers.
- Verifique el acceso a sudo.
- Para verificar, abra una nueva ventana de Terminal y ejecute un comando con sudo.
- comando sudo
- Reemplace ‘comando’ con cualquier comando, como
sudo apt update
.
Comando Sudo: sintaxis y opciones
El comando sudo en Linux viene con varias opciones y variaciones de sintaxis para personalizar su comportamiento y brindar funcionalidad adicional.
Nombre de sintaxis | Descripción | comando sudo |
---|---|---|
Sintaxis básica | La sintaxis básica para el comando sudo. | sudo [opciones] comando Reemplace [opciones] con cualquiera de las opciones disponibles y ‘comando’ con el comando real. |
-u, –usuario=usuario | Esta opción le permite especificar el usuario. Le permite ejecutar comandos como un usuario que no sea el superusuario predeterminado (raíz). La sintaxis es la siguiente. | sudo -u nombre de usuario comando Reemplace ‘nombre de usuario’ y ‘comando’ con los detalles reales. |
-i, –iniciar sesión | Utilice esta opción para iniciar un shell de inicio de sesión como usuario de destino. | sudo -i comando Reemplace `comando` con el comando que desea ejecutar. |
-s, –cáscara | Esta opción le permite ejecutar el shell especificado por la variable de entorno SHELL o el shell definido para el usuario de destino. | sudo -s shell Reemplace ‘shell’ con el shell deseado, como /bin/bash o /usr/bin/zsh . |
-E, –preservar-env | sudo restablece el entorno y solo conserva algunas variables. La opción -E conserva las variables de entorno del usuario al ejecutar el comando. Puede ser útil si necesita conservar una configuración de entorno específica. | sudo -E comando Reemplace ‘comando’ con el comando que desea ejecutar. |
-l, –lista | La opción -l le permite enumerar los comandos o privilegios que el usuario actual o el usuario especificado puede ejecutar con sudo. Es útil verificar el acceso a sudo o revisar los comandos disponibles. | sudo -1 Esto mostrará una lista de comandos o privilegios asociados con el usuario actual. |
Estos son solo algunos ejemplos de las opciones disponibles para el comando sudo.
Lea también: Cómo abrir un archivo EPS en diferentes programas
Comando Sudo en Linux Ejemplos
Algunos ejemplos que muestran el uso del comando sudo en Linux.
Nombre de sintaxis | Descripción | comando sudo |
---|---|---|
Instalación de paquetes con apt | Este comando instala el paquete especificado utilizando el administrador de paquetes apt con privilegios elevados. | sudo apt install nombre_paquete Reemplace ‘nombre_paquete’ con el nombre del paquete que desea instalar. |
Edición de archivos de configuración del sistema | Este comando abre el archivo nginx.conf para editarlo usando el editor de texto nano con privilegios de superusuario. | sudo nano /etc/nginx/nginx.conf Reemplace /etc/nginx/nginx.conf con la ruta a cualquier archivo de configuración del sistema que necesite modificar. |
Administrar los servicios del sistema con systemctl | Este comando inicia el servicio del sistema especificado utilizando el comando systemctl con privilegios elevados. | sudo systemctl start service_name Reemplace ‘service_name’ con el nombre del servicio que desea iniciar. |
Creación de cuentas de usuario | Este comando crea una nueva cuenta de usuario con el nombre de usuario especificado usando el comando useradd con privilegios de superusuario. | sudo useradd nombre de usuario Reemplace ‘nombre de usuario’ con el nombre de usuario deseado para la nueva cuenta. |
Modificación de permisos de archivo | Este comando cambia los permisos del archivo especificado a lectura y escritura para el propietario y solo lectura para el grupo y otros. | sudo chmod 644 file_name Reemplace ‘file_name’ con el nombre del archivo que desea modificar. |
Actualización del sistema | Este comando actualiza las listas de paquetes y actualiza todos los paquetes instalados en el sistema utilizando el administrador de paquetes apt con privilegios de superusuario. | sudo apt actualizar && sudo apt actualizar |
Ejecutar un comando como usuario raíz
Para ejecutar un comando como usuario raíz en Linux usando el comando sudo, simplemente puede anteponer el comando con sudo.
Ejemplo:-
comando sudo
Reemplace “comando” con el comando real que desea ejecutar.
Cuando ejecuta el comando con sudo, ingrese su propia contraseña, su cuenta de usuario está configurada con acceso sudo.
Ejecutar un comando como un usuario diferente
Para ejecutar un comando como un usuario diferente en Linux usando el comando sudo, puede utilizar la opción -u o -user.
Ejemplo: –
Comando sudo -u nombre de usuario
Reemplace ‘nombre de usuario’ con el nombre de usuario del usuario.
Ejecutar un programa en segundo plano
Para ejecutar un programa en segundo plano en Linux, puede usar el símbolo & al final del comando.
ejemplo:-
dominio &
Cuando ejecuta un programa en segundo plano, su salida aún puede aparecer en la terminal.
Para evitar que el programa muestre la salida, puede redirigir tanto la salida estándar como el error estándar a /dev/null usando el siguiente comando.
miprograma >/dev/null 2>&1 &
Solución de problemas de comandos básicos de Sudo
Cuando trabaje con el comando sudo en Linux, puede encontrar algunos escenarios comunes de solución de problemas. Pocos pasos básicos de solución de problemas para superar los problemas.
- Entrada de sudoers no válida
- Si recibe un mensaje de error que indica una entrada sudoers no válida, significa que hay un error de sintaxis en el archivo sudoers.
- Para solucionar esto, abra el archivo sudoers con el comando visudo y revise cuidadosamente y corrija cualquier error de sintaxis.
- Configuración incorrecta de Sudo
- Si sudo no funciona como se esperaba, podría deberse a ajustes de configuración incorrectos. Utilice el comando visudo para abrir el archivo sudoers y revise las entradas de configuración.
- Sudo acceso denegado
- Si recibe un error de acceso denegado o permiso denegado al ejecutar un comando con sudo, podría deberse a que los privilegios de sudo son insuficientes.
- Variables de entorno
- Puede utilizar la opción -E o –preserve-env con sudo para conservar las variables de entorno del usuario que realiza la invocación.
- Espacio en disco insuficiente
- A veces, un comando ejecutado con sudo requiere espacio en disco para archivos temporales u otras operaciones.
Prácticas recomendadas del comando Sudo
Al usar el comando sudo en Linux, es importante seguir las mejores prácticas para una administración del sistema segura y efectiva. Algunas prácticas recomendadas del comando sudo.
- Otorgar privilegios mínimos: siga el principio de privilegios mínimos otorgando acceso a sudo solo a usuarios de confianza y limitando sus privilegios a comandos específicos.
- Use Visudo para editar el archivo sudoers: use siempre el comando visudo para editar el archivo sudoers. El comando visudo comprueba si hay errores de sintaxis antes de guardar el archivo, lo que evita errores de configuración accidentales.
- Valide los cambios del archivo sudoers: después de realizar los cambios, valide las modificaciones con el comando sudo -l.
- Proteja su contraseña: proteja su contraseña de sudo y evite compartirla con otros.
- Habilitar la autenticación de dos factores (2FA)
- Revisar regularmente el archivo sudoers
- Tenga cuidado con los argumentos de comando
- Supervisar la actividad de sudo