Не могу написать в / usr даже с sudo


10

Вот моя проблема:

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

... должны позволить мне работать как корень и изменить /usr& /usr/shareкаталоги, но я получаю это:

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.

Почему sudoне дает мне привилегии root? * Примечание: * Я нахожусь в группе колес, хотя в этом смешном sudoповедении не должно быть ничего .

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

Ответы:


15

Вы пытаетесь установить систему /usr, защищенную с помощью SIP (System Integrity Protection), функции, появившейся в 10.11 (подробнее, что такое функция «без рута» в El Capitan ).

Используйте /usr/localвместо этого, которая является местом , предназначенным для пользователя на стороне установки.


да, за исключением того, что мне нужно сделать ссылку на / usr / include или я не могу скомпилировать с gcc 4.9!
Майкл

Вам придется отключить SIP, тогда я думаю.
Джейсонология

Старый ответ, но почему вы не можете просто сказать GCC, где найти включаемые файлы? Вот для чего нужна опция '-l'. PHP как root ... <shudder>
Марк Уилсон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.