este podría ser el caso si ha descargado composer.phar
directamente ,
pero no ejecutando php composer-setup.php
hacer composer.phar
ejecutable con el siguiente comando antes de moverlo a /usr/local/bin/composer
o después de mudarse
sudo chmod 755 composer.phar
composer-setup.php hará este cambio por nosotros por defecto
En el servidor Ubuntu>=16.04
PRIMERO
sudo rm /usr/local/bin/composer
Y
cd ~/.cache/composer
chmod 755 composer-temp.phar
sudo mv composer-temp.phar /usr/local/bin/composer
Debe verificar los permisos del directorio /usr/local/bin/, no solo el archivo que contiene. El proceso tiene que escribir ambos, el archivo y en el directorio que ambos deben ser otorgados.
Aparte de eso, una sugerencia general:no siempre configure todo en 777. No hay razón para eso y hace que su sistema sea vulnerable.
De acuerdo con la línea que publicó en el último comentario, el directorio actualmente se puede escribir solo para el propio usuario root. Eso explicaría el error que obtienes. No deberías no haga que su propia cuenta de usuario sea el propietario, los sistemas Linux son entornos multiusuario. En su lugar, piense en uno de estos enfoques:
- agregue la cuenta destinada a ejecutar el
composer
a la raíz del grupo (una cuenta de usuario puede pertenecer a varios grupos) y hacer que se pueda escribir en el grupo del directorio - cambie la propiedad de los grupos del directorio a un grupo del que la cuenta sea miembro y haga que el grupo del directorio se pueda escribir
- usa el
sudo
utilidad para instalar y actualizar elcomposer
utilidad
La última opción es la típicamente elegida y preferida. Deja los permisos como están (conservadores) y solo usa privilegios elevados para tareas de mantenimiento del sistema, como instalación y actualización.