Como obter permissões de root reais no OS X

Como obter permissões de root reais no OS X

Sou um novato no OSX (10.8.5) e quero instalar o homebrew em um Airbook.

A instalação do homebrew falha imediatamente porque não é possível mkdir/usr/local. Então eu tento com o sudo - mesmo problema. Tentar sudo mkdir /usr/local diretamente também falha, é claro.

Meu usuário 'mjb' tem direitos de administrador (de acordo com a interface GUI de Usuários/Grupos), mas não consigo descobrir como fazer algo útil!

Como meu usuário 'administrador' mjb, digitar id mostra "uid=502(mjb) gid=20(staff) ...." digitar sudo id mostra "uid=503(root) gid=1000 ...."

Pesquisei e todas as soluções que vejo envolvem editar algum arquivo (root.plist) diretamente ou usar visudo... e claro que não tenho permissão para fazer isso!

Eu só quero acesso "real" ao sudo para poder instalar coisas na linha de comando (boot2docker).

Obrigado por qualquer sugestão

Atualizar:

dscl. ls /Users fornece muitos resultados:

_amavisd
_appleevents
_proprietário do aplicativo
_appserver
_ard
_assetcache
_atsserver
_avbdeviced
_calendário
_ces
_clamav
_coreaudiod
_cvmsroot
_cvs
_cyrus
_devdocs
_devicemgr
_pombal
_dovenull
_dpaudio
_eppc
_ftp
_bom
_assistente de instalação
_instalador
_jabber
_kadmin_admin
_kadmin_changepw
_krb_anônimo
_krb_changepw
_krb_kadmin
_krb_kerberos
_krb_krbtgt
_krbtgt
_lda
_localizado
_lp
_carteiro
_mcxalr
_mdnsresponder
_mysql
_netbios
_netstatistics
_rede
_postfix
_postgres
_qtss
_caixa de areia
_protetor de tela
_scsd
_Agente de segurança
_número de série
_atualização de software
_Holofote
_sshd
_svn
_tarefa
_teamsserver
_fuso horário
_tokenend
_ agente de avaliação confiável
_desconhecido
_atualização_compartilhamento
_usbmuxd
_uucp
_quente
_webauthserver
_janelaservidor
_www
daemon
mjb
ninguém
Paulina
raiz

dscl. leia /Usuários/root

AppleMetaNodeLocation: /Local/Padrão
UID gerado: FFFFEEEE-DDDD-CCCC-BBBB-AAAA00000000
NFSHomeDirectory: /Local/Usuários/root
Senha: *
Opções de política de senha: <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "apple.com/DTDs/PropertyList-1.0.dtd">;
<versão plist="1.0">
<dict>
    <key>failedLoginCount</key>
    <inteiro>0</inteiro>
    <key>failedLoginTimestamp</key>
    <data>2001-01-01T00:00:00Z</data>
    <key>lastLoginTimestamp</key>
    <data>2001-01-01T00:00:00Z</data>
    <key>senhaLastSetTime</key>
    <data>09/06/2015T18:48:49Z</data>
</dict>
</plist>
ID do grupo primário: 1000
Nome real:
 Mike Brilhante
Nome do registro:
 raiz
 BUILTIN\Sistema Local
RecordType: dsRecTypeStandard:Usuários
SMBSID: S-1-5-18
ID Único: 503
UserShell: /bin/bash

Responder1

A conta root do superusuário real é sempre SEMPRE UID 0. Como você conseguiu uma conta chamada "root" em seu sistema com UID 503 está além da minha compreensão.

Talvez seja necessário corrigir manualmente o armazenamento de dados do Directory Services (seu banco de dados de usuários e grupos) com o Directory Utility ou o dscl.

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

Acho que esse foi o caminho de volta ao 10.8.5, mas já faz muito tempo. Hoje em dia é…

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

Esse aplicativo possui um Editor de diretório que você poderá usar para ver o que está acontecendo com os detalhes internos das contas em sua máquina.

Como alternativa, ver a saída dos dois comandos a seguir me ajudaria a ver o que está acontecendo:

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

informação relacionada