it-swarm.com.de

Keys.dev.pub kann nicht in: /home/ubuntu/.composer geschrieben werden

Ich befolge die Anweisungen zum Installieren von Composer ( hier ). Ich lief gerade die Zeile php composer-setup.php und das Terminal kehrte zurück:

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

Ich installiere ein Ubuntu VM in Vagrant.

7
reelyard

Bei der Installation des Composers in Ihrem Projektverzeichnis erhalten Sie möglicherweise diese Fehlermeldung. Im Ubuntu 16 verwendet, Während der Installation war ich mit demselben Problem konfrontiert 


Alle Einstellungen für die Verwendung von Composer korrekt. Kann keys.dev.pub nicht in Folgendes schreiben: /home/ubuntu/.composer

Schritt 1: Gehen Sie einfach in Ihr Projektverzeichnis und führen Sie einen Befehl aus

Sudo su

Schritt 2: Versuchen Sie dann, den Composer mit dem folgenden Befehl zu installieren

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

Dies kann vorkommen, wenn Sie eine vorherige Installation von Composer nicht vollständig entfernt haben oder wenn Sie das Installationsprogramm mit einem anderen Benutzer als dem Besitzer des .composer-Ordners ausführen.

Sie können den alten Ordner umbenennen (um eine Sicherungskopie zu erstellen) und es dann erneut versuchen:

mv ~/.composer ~/.composer.old

Dies ist weniger riskant als die Ausführung von etwas, das bei Sudo unbekannt ist.

10
PhoneixS

versuchen 

Sudo apt-get install composer
1
Alex1991

wenn Sie Composer mit Sudo oder mit einem anderen Benutzer als dem Besitzer des Composer-Ordners installiert haben, wie von @PhoneixS erwähnt 

Überprüfen Sie wenn dies der Fall ist, indem Sie Folgendes ausführen:

ls -al ~/.composer  

das kann zurückkehren

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

Dann :

  • wenn der Besitzer von .composer der Root-Benutzer ist, können Sie den Befehl mit Sudo ausführen, da der Fallcode Sudo php composer-setup.php das Problem behebt
  • wenn der Besitzer root ist, aber Sie müssen composer nicht als root ausführen, können Sie die owner-user: owner-group von .composer wie folgt in den aktuellen Benutzer ändern: Sudo chown -R owner-user:owner-group ~/.composer
  • wenn der Besitzer von .composer ein anderer Benutzer als Benutzername ist, können Sie den Befehl als diesen bestimmten Benutzer ausführen, indem Sie su verwenden.
1
yaitloutou