安装oAuth PECL错误:无法安装,通道“pecl.php.net”的php_dir不能被当前用户写入

时间:2012-07-22 05:23:46

标签: command-line oauth terminal pecl

我正在尝试在OS X上安装oAuth,但我在终端中收到此错误:

  

无法安装,php_dir for channel“pecl.php.net”不能被当前用户写入

如何让它可写?

4 个答案:

答案 0 :(得分:19)

首先找出php_dir的位置。您可以使用'config-get'命令执行此操作:

pecl config-get php_dir

在此之后你可以:

  • 更改该文件夹(以及任何所需的子文件夹)的所有权

    sudo chown <username> <php_dir>

  • 将php_dir设置为其他文件夹

    pecl config-set php_dir /path/to/new/dir

答案 1 :(得分:14)

最简单的方法可能是将sudo附加到安装命令的前面。

请参阅http://linux.about.com/od/commands/l/blcmdl8_sudo.htm以阅读有关方便的“超级用户”命令的更多信息。

答案 2 :(得分:0)

有关进一步的参考,在OS Catalina上,由于对/ usr / bin-lib文件夹具有写权限,因此应将pecl上的所有配置文件夹移动到某个可写位置(除了php_bin是php目录,此目录除外)应该指向您的php文件夹)。

答案 3 :(得分:0)

这是由于 Mac OS 中称为系统完整性保护 (SIP) 的功能所致。 SIP 可防止编辑关键系统文件和目录。

为了绕过 SIP 限制以安装 oAuth,您可以暂时禁用它。启动到恢复模式并运行命令 csrutil disable。之后,正常重启并再次尝试安装。

安装完成后,通过引导回恢复模式并运行命令 csrutil enable 来重新启用 SIP。 注意:强烈建议您重新启用 SIP 以保护您的计算机。