Kann nicht einmal mit sudo an / usr schreiben

10

Hier ist mein Problem:

sudo php -d detect_unicode=0 go-pear.phar

... sollte mich als root ausführen und /usr& /usr/shareVerzeichnisse ändern lassen , aber ich bekomme Folgendes:

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : /usr
 2. Temporary directory for processing            : /tmp/pear/install
 3. Temporary directory for downloads             : /tmp/pear/install
 4. Binaries directory                            : /usr/bin
 5. PHP code directory ($php_dir)                 : /usr/share/pear
 6. Documentation directory                       : /usr/docs
 7. Data directory                                : /usr/data
 8. User-modifiable configuration files directory : /usr/cfg
 9. Public Web Files directory                    : /usr/www
10. System manual pages directory                 : /usr/man
11. Tests directory                               : /usr/tests
12. Name of configuration file                    : /private/etc/pear.conf

1-12, 'all' or Enter to continue: 
Unable to create PHP code directory ($php_dir) /usr/share/pear.
Run this script as root or pick another location.

Warum kann sudoich kein Root-Privileg erhalten? * Hinweis: * Ich bin in der Radgruppe, obwohl das mit diesem lustigen sudoVerhalten nichts zu tun haben sollte.

Gabbar-Singh:~ anadi$ id anadi
uid=XXX(anadi) gid=XX(staff) groups=XX(staff),0(wheel)
Anadi Misra
quelle

Antworten:

15

Sie versuchen zu installieren, in /usrdem SIP (System Integrity Protection), eine mit 10.11 eingeführte Funktion, geschützt ist ( Einzelheiten finden Sie unter Was ist die "rootless" -Funktion in El Capitan? ).

Verwenden Sie /usr/localstattdessen den Speicherort für benutzerseitige Installationen.

Jasonologie
quelle
Ja, außer ich muss auf / usr / include verlinken oder ich kann nicht mit gcc 4.9 kompilieren!
Michael
Sie müssen SIP dann deaktivieren, denke ich.
Jasonologie
Alte Antwort, aber warum können Sie GCC nicht einfach mitteilen, wo sich die Include-Dateien befinden? Dafür ist die Option '-l' gedacht. PHP als root ... <shudder>
Marc Wilson