Невозможно записать ключи.разработка.pub to: / home / ubuntu/.композитор

Я следую инструкциям по установке composer (найти здесь). Я только что пробежал линию php composer-setup.php и терминал возвращается:

All settings correct for using Composer
Unable to write keys.dev.pub to: /home/ubuntu/.composer

Я устанавливаю в Ubuntu VM в Vagrant.

4 ответов


при установке композитора в каталоге проекта вы можете получить эту ошибку. Im, используя Ubuntu 16, при установке я столкнулся с той же проблемой


все настройки корректны для использования Composer не удается написать ключи.разработка.pub to: / home / ubuntu/.композитор!--6-->

Шаг 1: просто перейдите в каталог проекта и запустите команду

sudo su

Шаг 2: затем попробуйте установить композитор, используя следующую команду

curl -sS https://getcomposer.org/installer | php

это может произойти, когда у вас есть предыдущая установка composer не полностью удалена или если вы используете установщик с пользователем, отличным от владельца .composer папка.

Вы можете переименовать старую папку (чтобы иметь резервную копию) и потом опять попробовать:

mv ~/.composer ~/.composer.old

Это менее рискованно, чем выполнение чего-то неизвестного с sudo.


если вы установили composer с помощью sudo, или с пользователем, отличным от владельца .папка композитора, как упоминалось в @PhoneixS

Регистрация если это так, работает:

ls -al ~/.composer  

который может возвратить

ls -al .composer 
total 16
drwxr-xr-x  2 root root 4096 May  1 15:04 .
drwxr-xr-x 53 user-name  user-group  4096 May  1 15:07 ..
-rw-r--r--  1 root root  799 May  1 15:04 keys.dev.pub
-rw-r--r--  1 root root  799 May  1 15:04 keys.tags.pub

затем:

  • если владелец .composer-пользователь root, вы можете запустить команда с sudo, как перелог sudo php composer-setup.php, исправит проблему
  • если владелец является root, но вы не хотите запускать composer как root, тогда вы можете изменить владельца-пользователя:владельца-группу .композитор для текущего пользователя следующим образом: sudo chown -R owner-user:owner-group ~/.composer
  • если владелец .composer-это другой пользователь, чем имя пользователя, затем вы можете запустить команду как этот конкретный пользователь, используя su

попробовать

sudo apt-get install composer