我创建了一个新的 Laravel 项目。当我去终端安装依赖项时 composer
显示以下警告:
Cannot create cache directory /home/w3cert/.composer/cache/repo/https---packagist.org/, or directory is not writable. Proceeding without cache.
sudo composer self-update
,也可能会发生这种情况,因为之后 ~/.composer
目录将归 root
所有。
当您安装作曲家时,很确定您使用了 $ sudo
命令,因为 ~/.composer
文件夹是由根创建的。
运行这个来解决这个问题:
$ sudo chown -R $USER $HOME/.composer
更改文件夹的组权限
sudo chown -R w3cert /home/w3cert/.composer/cache/repo/https---packagist.org
和 Files 文件夹
sudo chown -R w3cert /home/w3cert/.composer/cache/files/
我假设 w3cert 是您的用户名,如果没有将第 4 个参数更改为您的用户名。
如果问题仍然存在,请尝试
sudo chown -R w3cert /home/w3cert/.composer
现在,您可能无法创建应用程序目录,如果发生这种情况,请对您的 html 文件夹或您尝试在其中创建 laravel 项目的文件夹执行相同的操作。
sudo composer self-update
之后就开始产生了
w3cert:w3cert
([OWNER][:[GROUP]]
)
.composer/
目录,sudo chown $USER -R /cache
有帮助。
更改 .composer 目录的所有权:
sudo chown -R $USER $HOME/.composer
$USER
是您的用户名,$HOME
是您的主目录。
chmod 777
总是一个坏主意。要获取您的用户名,只需使用环境变量 $USER
。我已经相应地编辑了你的答案。
使用这个命令:
sudo chown -R $USER ~/.composer/
不定期副业成功案例分享
$USER
替换为$USER:$USER
不仅可以修复用户,还可以修复文件夹组及其内容。