当我运行作曲家更新'我收到这个错误:
Writing lock file
Generating autoload files
[ErrorException]
chmod(): Operation not permitted
*它适用于sudo,但是我必须重置所有者&权限,这真烦人... **我也尝试用〜777将〜/ .composer的所有者重置为www-data,没有效果 ***我使用的是Ubuntu 16.04 LTS + Apache / 2.4.18& php7.0.26
<小时/> 有什么想法?
答案 0 :(得分:0)
chmod
仅在文件所有者与运行sudo
命令的所有者相同的情况下,才在没有composer update
的情况下工作。
问题是错误消息没有告诉您它正在尝试chmod
到哪个文件。
这取决于项目。
以详细模式运行命令将为您提供更多详细信息:
composer update -v
就我而言,它给了我一个堆栈跟踪,显示了一个名为chmod()
的文件以及行号。
但是,它没有给我传递到chmod()
的文件的路径。
我必须在致电echo
之前添加一个简单的chmod()
(不要忘记随后将其删除)。
一旦您知道哪个文件/文件夹是错误消息的负责人,请使用chown
更改其所有者。
在我的情况下(Magento 2.3),罪魁祸首是bin/magento
文件,该文件必须由运行composer
命令的用户所有。