Respuestas:
En MacOS X, el usuario root está deshabilitado de manera predeterminada, por su
lo tanto , no funcionará. Como otros han dicho, es mejor usarlo sudo
.
Si se debe permitir que el usuario root, consulte la nota técnica de Apple: Activación y utilizando el usuario "root" en Mac OS X .
sudo su
, ¿cuál es el punto de inhabilitación su
entonces?
su
", es evitar el inicio de sesión de root . Al no permitir el inicio de sesión como root
, evita un montón de posibles problemas de seguridad. No permitir que alguien pueda sudo
hacerlo su
es un poco tonto. Básicamente, su
solo cambia el ID de usuario actual y ejecuta un comando (un shell, si no se especifica). Si el ID de usuario ya es 0 (raíz), como cuando se ejecuta con sudo
, no hay nada que pueda hacer, por lo que solo ejecuta el shell. Puede obtener un efecto similar haciendo sudo bash
.
Tienes dos opciones. Lo primero es usar sudo -s
: esto le dará acceso de superusuario, pero seguirá siendo 'usted mismo' (por así decirlo), por lo que cosas como este ~
seguirán siendo su directorio de inicio. Alternativamente, puede usar sudo su
, lo que le proporciona un shell como el usuario raíz real de su Mac.
sudo
para ejecutar comandos que requieren privilegios elevados, no para cambiar a un shell raíz y trabajar desde eso.
sudo
ethos al extremo. Pero lo que sea: semántica. No use shells de raíz en OS X.
Por ejemplo, si necesita mover archivos o usar git usando la CLI, entonces, en ese caso, la mejor solución será usar el sudo -s
comando. Después de ese comando, no tiene que seguir ingresando la contraseña una y otra vez.
Creo que no puedes hacer esto como un usuario "normal" ...
Si hay otra cuenta de usuario con derechos de administrador, debe usar esta.
restricted user$ su
Password:(the root password here)
Sorry!
restricted user$ su - (an admin account here)
password:(the admin account password)
$ su - root
Password:(The root password here)
# -> You are root user now
sudo -u
Para ejecutar como otro uso, use sudo -u
.
Por ejemplo, para ejecutar un editor de texto como nano :
sudo -u someuser nano
... e ingrese su contraseña de usuario administrador de Mac cuando se le solicite. En este momento, es el usuario administrador de Mac quien está invocando sudo
, no el someuser
usuario, por lo que no debe ingresar la someuser
contraseña.
sudo
significa ejecutar algo usando privilegios de superusuario.-u
significa "ejecutar un comando especificado como este usuario especificado".someuser
debe reemplazarse con su nombre de usuario deseado.Para simular un inicio de sesión inicial como un usuario en particular, incluida la ejecución de sus scripts de inicio, use -I
.
sudo -u someuser -i nano
Esto ejecuta la nano
aplicación como usuario, someuser
pero solo después de haber ejecutado los scripts de inicio para ese usuario.
Si optamos por no especificar un comando o aplicación para ejecutar, obtenemos un shell interactivo que se ejecuta como ese usuario.
sudo -u someuser -i
sudo su someuser
Otro enfoque utiliza el su
comando en combinación con el sudo
. El su
comando significa "cambiar de usuario".
sudo su someuser
O, para incluir la ejecución de los scripts de inicio del usuario, agregue el guión.
sudo su - someuser
root
usuarioEl root
usuario en los sistemas operativos relacionados con Unix tiene un poder absoluto para hacer cualquier cosa.
Apple ha optado por desactivar la root
cuenta en macOS, para evitar vulnerabilidades de seguridad y para evitar que te dispares en el pie. Apple creó la idea de las cuentas de usuario Administrador que tienen muchos poderes, más poderes que una cuenta de usuario Estándar , pero no poder absoluto como el que root
tiene. Vea esta nota de soporte de Apple para discusión.
Si es necesario, puede habilitar al root
usuario en macOS y luego cambiar a ese usuario. Esto está fuertemente desaconsejado. Seguiría este camino solo como un último recurso desesperado.
Para una discusión sobre esto dentro del contexto del postgres
usuario que ejecuta el sistema de base de datos Postgres en macOS, vea esta Pregunta en el sitio hermano, DBA Stack Exchange .
sudo su
todavía funciona, por lo que no está realmente deshabilitado. Simplemente no tiene contraseña.