ChatGPT解决这个技术问题 Extra ChatGPT

Cannot create cache directory .. or directory is not writable. Proceeding without cache in Laravel

I created a new Laravel project. When I go to the terminal to install the dependecies composer displays the following warning:

Cannot create cache directory /home/w3cert/.composer/cache/repo/https---packagist.org/, or directory is not writable. Proceeding without cache.

looks like composer doesn't have write permission in /home/w3cert/.composer/cache/ folder
This may also happen if you run sudo composer self-update on Linux, since the ~/.composer directory will be owned by root, afterwards.

J
Jim M

When you installed composer pretty sure you used $ sudo command because of that the ~/.composer folder was created by the root.

Run this to fix the issue:

$ sudo chown -R $USER $HOME/.composer

Replace $USER with $USER:$USER to fix not only the user but also the group of the folder and its contents.
sudo chown -R $USER:$USER $HOME/.composer illegal group name
N
Nesar

Change the group permission for the folder

sudo chown -R w3cert /home/w3cert/.composer/cache/repo/https---packagist.org

and the Files folder too

sudo chown -R w3cert /home/w3cert/.composer/cache/files/

I'm assuming w3cert is your username, if not change the 4th parameter to your username.

If the problem still persists try

sudo chown -R w3cert /home/w3cert/.composer

Now, there is a chance that you won't be able to create your app directory, if that happens do the same for your html folder or the folder you are trying to create your laravel project in.


I've encountered this a couple of times, but just realised that this may be a consequence of running self-update as root: $ sudo composer self-update , which may have been the cause of why the ~/.composer folder and all its contents change owner. Just chown -R your ~/.composer back to yourself
I am sure this problem started to generate right after i did sudo composer self-update
BTW, chown changes owner, to change group too, you have to do w3cert:w3cert ([OWNER][:[GROUP]])
This helped me in creating project. After executing first two commands, everything went fine.
I went to the .composer/ directory and sudo chown $USER -R /cache that helped.
L
LobsterBaz

Change ownership of your .composer directory:

sudo chown -R $USER $HOME/.composer

$USER is your username and $HOME is your home directory.


chmod 777 is always a bad idea. And to get your username simply use the environment variable $USER. I've edited your answer accordingly.
O
Oppa

Use this command:

sudo chown -R $USER ~/.composer/

关注公众号,不定期副业成功案例分享
Follow WeChat

Success story sharing

Want to stay one step ahead of the latest teleworks?

Subscribe Now