Cómo obtener permisos de root reales en OS X

Cómo obtener permisos de root reales en OS X

Soy un novato con OSX (10.8.5) y quiero instalar homebrew en un Airbook.

La instalación de homebrew falla de inmediato porque no puede mkdir /usr/local. Entonces lo intento con sudo, el mismo problema. Intentar sudo mkdir /usr/local directamente también falla, por supuesto.

Mi usuario 'mjb' tiene derechos de administrador (bueno, de acuerdo con la interfaz GUI de Usuarios/Grupos) pero no sé cómo hacer nada útil.

Como mi usuario 'admin' mjb, al escribir id se muestra "uid=502(mjb) gid=20(staff) ..." al escribir sudo id se muestra "uid=503(root) gid=1000 ..."

He buscado y todas las soluciones que veo implican editar algún archivo (root.plist) directamente o usar visudo... ¡y por supuesto no tengo los permisos para hacerlo!

Solo quiero acceso sudo "real" para poder instalar cosas en la línea de comandos (boot2docker).

Gracias por cualquier sugerencia

Actualizar:

dscl. ls /Users proporciona muchos resultados:

_amavisd
_appleeventos
_propietario de la aplicación
_servidor de aplicaciones
_ard
_assetcache
_atsserver
_avbdevice
_calendario
_ces
_clamav
_coreaudiod
_cvmsroot
_cvs
_Ciro
_devdocs
_devicemgr
_palomar
_dovenull
_dpaudio
_eppc
_ftp
_geod
_asistente de instalación
_instalador
_farfullar
_kadmin_admin
_kadmin_changepw
_krb_anonimo
_krb_changepw
_krb_kadmin
_krb_kerberos
_krb_krbtgt
_krbtgt
_lda
_ubicado
_lp
_cartero
_mcxalr
_mdnsresponder
_mysql
_netbios
_netestadísticas
_red
_sufijo
_postgres
_qtss
_salvadera
_protector de pantalla
_scsd
_agente de seguridad
_número de serie
_actualización de software
_destacar
_sshd
_svn
_taskgated
_servidor de equipos
_zona horaria
_tokend
_agente de evaluación de confianza
_desconocido
_actualizar_compartir
_usbmuxd
_uucp
_cálido
_webauthserver
_servidor de ventanas
_www
demonio
mjb
nadie
paulina
raíz

dscl. leer /Usuarios/raíz

Ubicación de AppleMetaNode: /Local/Predeterminado
UID generado: FFFFEEEE-DDDD-CCCC-BBBB-AAAA00000000
NFSHomeDirectory: /Local/Usuarios/raíz
Contraseña: *
Opciones de política de contraseña: <?xml versión="1.0" codificación="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "apple.com/DTDs/PropertyList-1.0.dtd">;
<plist versión="1.0">
<dictar>
    <key>Conteo de inicios de sesión fallidos</key>
    <entero>0</entero>
    <key>marca de hora de inicio de sesión fallida</key>
    <fecha>2001-01-01T00:00:00Z</fecha>
    <key>última marca de tiempo de inicio de sesión</key>
    <fecha>2001-01-01T00:00:00Z</fecha>
    <clave>contraseñaLastSetTime</key>
    <fecha>2015-06-09T18:48:49Z</fecha>
</dict>
</plist>
ID de grupo primario: 1000
Nombre real:
 Mike brillante
Nombre del registro:
 raíz
 CONSTRUIDO\Sistema local
Tipo de registro: dsRecTypeEstándar: Usuarios
SMBSID: S-1-5-18
ID único: 503
Shell de usuario: /bin/bash

Respuesta1

La cuenta raíz del superusuario real siempre es SIEMPRE UID 0. No entiendo cómo obtuvo una cuenta llamada "root" en su sistema con UID 503.

Es posible que necesites arreglar manualmente tu almacén de datos de Servicios de Directorio (tu base de datos de usuarios y grupos) con Directory Utility o dscl.

open /System/Library/CoreServices/Directory\ Utility.app

Creo que ese era el camino en 10.8.5, pero ha pasado mucho tiempo. Hoy en día es…

open /System/Library/CoreServices/Applications/Directory\ Utility.app

Esa aplicación tiene un Editor de directorios que deberías poder usar para ver qué sucede con los detalles internos de las cuentas en tu máquina.

Alternativamente, ver el resultado de los dos comandos siguientes me ayudaría a ver qué está pasando:

dscl . ls /Users
dscl . read /Users/root

información relacionada