4Aug

¿Cuál es la diferencia entre Sudo y Su en Linux?

click fraud protection

Si usted es un usuario de Linux, probablemente haya visto referencias a sudo y su. Los artículos aquí en How-To Geek y en otros lugares ordenan a los usuarios de Ubuntu que usen sudo y otros usuarios de distribuciones de Linux para usar su, pero ¿cuál es la diferencia?

Sudo y su son dos formas diferentes de obtener privilegios de root. Cada uno funciona de forma diferente, y diferentes distribuciones de Linux usan diferentes configuraciones por defecto.

El usuario raíz

Tanto su como sudo se utilizan para ejecutar comandos con permisos de raíz. El usuario raíz es básicamente equivalente al usuario administrador en Windows: el usuario raíz tiene permisos máximos y puede hacer cualquier cosa con el sistema. Los usuarios normales en Linux se ejecutan con permisos reducidos; por ejemplo, no pueden instalar software ni escribir en los directorios del sistema.

Para hacer algo que requiera estos permisos, deberá adquirirlos con su o sudo.

Su vs. Sudo

El comando su cambia al superusuario, o usuario raíz, cuando lo ejecuta sin opciones adicionales. Tendrá que ingresar la contraseña de la cuenta raíz. Sin embargo, esto no es todo lo que hace el comando su: puede usarlo para cambiar a cualquier cuenta de usuario. Si ejecuta el comando

instagram viewer
su bob , se le pedirá que ingrese la contraseña de Bob y el shell cambiará a la cuenta de usuario de Bob.

Una vez que haya terminado de ejecutar los comandos en el shell raíz, debe escribir exit para salir del shell raíz y volver al modo de privilegios limitados.

Sudo ejecuta un solo comando con privilegios de administrador. Cuando ejecuta el comando sudo , el sistema le solicita la contraseña de su cuenta de usuario actual antes de ejecutar el comando como usuario raíz. De forma predeterminada, Ubuntu recuerda la contraseña durante quince minutos y no volverá a pedir una contraseña hasta que hayan transcurrido los quince minutos.

Esta es una diferencia clave entre su y sudo. Su te cambia a la cuenta de usuario raíz y requiere la contraseña de la cuenta raíz. Sudo ejecuta un solo comando con privilegios de administrador: no cambia al usuario raíz o requiere una contraseña de usuario root por separado.

Ubuntu vs. Otras distribuciones de Linux

El comando su es la forma tradicional de adquirir permisos de raíz en Linux. El comando sudo ha existido durante mucho tiempo, pero Ubuntu fue la primera distribución popular de Linux en sudo-only por defecto. Cuando instala Ubuntu, se crea la cuenta raíz estándar, pero no se le asigna ninguna contraseña. No puede iniciar sesión como root hasta que asigne una contraseña a la cuenta raíz.

Existen varias ventajas al usar sudo en lugar de su por defecto. Los usuarios de Ubuntu solo tienen que proporcionar y recordar una sola contraseña, mientras que Fedora y otras distribuciones requieren que usted cree contraseñas raíz y cuenta de usuario por separado durante la instalación.

Otra ventaja es que desanima a los usuarios a iniciar sesión como usuario root( o usar su para obtener un shell raíz) y mantener el shell raíz abierto para hacer su trabajo normal. Ejecutar menos comandos como root aumenta la seguridad y previene cambios accidentales en todo el sistema. Distribuciones

basadas en Ubuntu, incluyendo Linux Mint, también usan sudo en lugar de su por defecto.

Algunos trucos

Linux es flexible, por lo que no requiere mucho trabajo hacer que su trabajo sea similar al sudo, o viceversa.

Para ejecutar un solo comando como el usuario raíz con su, ejecute el siguiente comando:

su -c 'comando'

Esto es similar a ejecutar un comando con sudo, pero necesitará la contraseña de la cuenta raíz en lugar de su usuario actualcontraseña de la cuenta

Para obtener un shell raíz completo e interactivo con sudo, ejecute sudo -i.

Deberá proporcionar la contraseña de su cuenta de usuario actual en lugar de la contraseña de la cuenta raíz.

Habilitación del usuario raíz en Ubuntu

Para habilitar la cuenta de usuario raíz en Ubuntu, use el siguiente comando para establecer una contraseña para ello. Tenga en cuenta que Ubuntu recomienda no hacerlo.

sudo passwd root

Sudo le solicitará la contraseña de su cuenta de usuario actual antes de poder establecer una nueva contraseña. Use su nueva contraseña para iniciar sesión como root desde un indicador de inicio de sesión de la terminal o con el comando su. Nunca debe ejecutar un entorno gráfico completo como usuario root: esta es una práctica de seguridad muy pobre, y muchos programas se negarán a funcionar.

Agregar usuarios al archivo Sudoers

Solo las cuentas de administrador en Ubuntu pueden ejecutar comandos con sudo. Puede cambiar el tipo de una cuenta de usuario desde la ventana de configuración Cuentas de usuario.

Ubuntu designa automáticamente la cuenta de usuario creada durante la instalación como una cuenta de administrador.

Si está utilizando otra distribución de Linux, puede otorgar a un usuario permiso para usar sudo ejecutando el comando visudo con privilegios de administrador( así que ejecute primero su o utilice su -c ).

Agregue la siguiente línea al archivo, reemplazando usuario con el nombre de la cuenta de usuario:

usuario ALL =( ALL: ALL) ALL

Presione Ctrl-X y luego Y para guardar el archivo. También puede agregar un usuario a un grupo especificado en el archivo. Los usuarios de los grupos especificados en el archivo tendrán automáticamente privilegios sudo.

Las versiones gráficas de Su

Linux también admiten versiones gráficas de su, que le piden su contraseña en un entorno gráfico. Por ejemplo, puede ejecutar el siguiente comando para obtener una solicitud de contraseña gráfica y ejecutar el explorador de archivos Nautilus con permisos de raíz. Presione Alt-F2 para ejecutar el comando desde un diálogo de ejecución gráfica sin iniciar un terminal.

gksu nautilus

El comando gksu también tiene algunos otros trucos en la manga: conserva la configuración actual del escritorio, por lo que los programas gráficos no se verán fuera de lugar cuando los inicie como un usuario diferente. Los programas como gksu son la forma preferida de iniciar aplicaciones gráficas con privilegios de administrador.

Gksu utiliza un back-end su o sudo, dependiendo de la distribución de Linux que esté utilizando.

¡Ahora debería estar preparado para encontrar su y sudo! Te encontrarás con ambos si usas diferentes distribuciones de Linux.