Я получаю такую ошибку при загрузке Composer.
php composer-setup.php
All settings correct for using Composer
PHP Warning: file_put_contents(/home/vasu/.composer/keys.dev.pub): failed to open stream: Permission denied in /home/vasu/composer-setup.php on line 468
PHP Warning: file_put_contents(/home/vasu/.composer/keys.tags.pub): failed to open stream: Permission denied in /home/vasu/composer-setup.php on line 485
Downloading 1.2.0...
PHP Warning: openssl_verify(): supplied key param cannot be coerced into a public key in /home/vasu/composer-setup.php on line 576
PHP Warning: openssl_free_key() expects parameter 1 to be resource, boolean given in /home/vasu/composer-setup.php on line 577
Signature mismatch, could not verify the phar file integrity
решение1
Простой способ
Попробуйте сначала легкий путь. Сложный путь был включен в этот ответ из-за сообщений об ошибках, упомянутых в комментариях.
sudo mkdir -p /usr/local/bin
sudo apt-get install curl
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
В Ubuntu 16.04 и более поздних версиях composer можно установить из репозиториев Ubuntu по умолчанию. Откройте терминал и введите:
sudo apt install composer
Трудный путь
Сначала проверьте /usr/local/bin/
, существует ли каталог, и если его нет, создайте /usr/local/bin/
его.
sudo mkdir -p /usr/local/bin
Если /usr/local/bin/
он уже существует, то указанная выше команда ничего не сделает, кроме как вернет следующее сообщение:
mkdir: cannot create directory ‘/usr/local/bin’: File exists
Выполните эти команды:
sudo chmod -R 755 /usr/local/bin/
cd /usr/local/bin/
ls # list the old composer file(s)
sudo rm <old-composer-files> # delete the old composer file(s)
sudo apt-get install curl
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
Тогда, если вы введете команду composer
в терминале, она будет доступна глобально в вашей системе.