Problema di installazione di MacPorts su Mavericks

0

Cerco di installare MacPorts e ottenere questo

$ sudo make install
make: getcwd: Permission denied
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
===> making install in doc
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
chdir: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
make: getcwd: Permission denied
/usr/bin/install -c -d -o root -g admin -m 0755 "/opt/local"
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
install: mkdir /opt: Permission denied
make[1]: *** [install] Error 71
make: *** [install] Error 1

Anche io non sono in grado di

$ sudo mkdir /opt
mkdir: /opt: Permission denied

Posso creare la directory con

open /

e quindi con Finder.

Sono anche in grado di installare MacPorts con il programma di installazione .pgk, ma poi:

sudo port install htop
Error: Insufficient privileges to write to MacPorts install prefix.
    
posta nilo 27.10.2013 - 21:13
fonte

3 risposte

1

Bene, prova quanto segue:
Riavvia in modalità utente singolo, si ottiene tenendo premuto alt (opzione) + s durante il riavvio.
Al prompt /sbin/fsck -fy (attenzione, QWERTZ-Layout), dopo quel tipo /sbin/mount -wu . Ora /bin/chmod 1775 / . Alla fine /bin/sync , poi exit .

Questo controllerà l'integrità del filesystem e correggerà i permessi per la tua directory root.

    
risposta data 28.10.2013 - 18:27
fonte
0

Verifica che l'UID di root sia effettivamente 0 sul tuo sistema: sudo id -u dovrebbe stampare 0.

Questo non era il caso sul mio sistema dopo l'aggiornamento a Mavericks. In caso contrario, puoi eseguire le seguenti operazioni per risolvere il problema:

  • avvia in modalità utente singolo
  • cambia in /private/var/db/dslocal/nodes/Default/users
  • verifica che l'UID di root sia sbagliato in root.plist utilizzando plutil -p root.plist
  • se è sbagliato, inizia facendo un backup: cp root.plist root.plist.orig
  • converti il formato plist in xml usando plutil -fmt xml1 root.plist
  • usa il tuo editor preferito per cambiare il numero dopo <key>uid</key> in 0
  • converte il plist in formato binario usando plutil -fmt binary1 root.plist
risposta data 05.11.2013 - 09:30
fonte
0

L'UID di root sul tuo sistema era: 217 _krbtgt (Ticket di concessione ticket Kerberos)

There IS a user called _krbtgt (Kerberos Ticket Granting Ticket) in /System/Library/DirectoryServices/DefaultLocalDB/Default/users, that indeed is user 217.

Ulteriori informazioni: link

    
risposta data 07.01.2014 - 15:48
fonte

Leggi altre domande sui tag