/usr/local/bin/ 中的作曲家权限被拒绝

2022-08-30 12:09:03

我按照 https://getcomposer.org/doc/00-intro.md#globally 的文档在arch Linux上全局安装composer。当我这样做时,我收到以下消息:composer self-update

  [ErrorException]                                                                                    
  rename(/home/hannes/.composer/cache/composer-temp.phar,/usr/local/bin/composer): Permission denied 

中的权限(我将它们更改为777,但没有帮助):/usr/local/bin/

-rwxrwxrwx  1 hannes users 1104202 30. Mai 18:07 composer

在我的主目录中,我这样做了:

sudo chmod -R 777 .composer/

在 中,外观如下:/etc/php/php.iniopen_basedir

open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/usr/local/bin/

我也尝试过,但它效果不佳,可能不是正确的方法。(?).我还能尝试什么来使它工作?sudo composer self-update


答案 1

在 Ubuntu 服务器上 >= 16.04

第一

sudo rm /usr/local/bin/composer

cd ~/.cache/composer
chmod 755 composer-temp.phar
sudo mv composer-temp.phar /usr/local/bin/composer

答案 2

如果您直接下载,则可能是这种情况。composer.phar

但不是通过运行php composer-setup.php

在移动到移动之前或之后使用以下命令使其可执行composer.phar/usr/local/bin/composer

sudo chmod 755 composer.phar

默认情况下,作曲家设置.php将为我们进行此更改


推荐