GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Berechtigung für Composer in /usr/local/bin/ verweigert

dies könnte der Fall sein, wenn Sie composer.phar heruntergeladen haben direkt ,

aber nicht durch Ausführen von php composer-setup.php

machen composer.phar mit folgendem Befehl ausführbar, bevor Sie es nach /usr/local/bin/composer verschieben oder nach dem Verschieben

sudo chmod 755 composer.phar

composer-setup.php wird diese Änderung standardmäßig für uns vornehmen


Auf Ubuntu-Server>=16.04

ZUERST

sudo rm /usr/local/bin/composer

UND

cd ~/.cache/composer
chmod 755 composer-temp.phar
sudo mv composer-temp.phar /usr/local/bin/composer

Sie sollten die Berechtigungen des Verzeichnisses /usr/local/bin/ überprüfen, nicht nur die Datei darin. Der Prozess muss sowohl in die Datei als auch in das Verzeichnis schreiben, die beide gewährt werden müssen.

Ansonsten ein genereller Hinweis:Stellen Sie nicht immer alles auf 777. Dafür gibt es keinen Grund und es macht Ihr System angreifbar.

Laut der Zeile, die Sie im letzten Kommentar gepostet haben, ist das Verzeichnis derzeit nur beschreibbar für den Root-Benutzer selbst. Das würde den Fehler erklären, den du bekommst. Das sollten Sie nicht Machen Sie Ihr eigenes Benutzerkonto zum Eigentümer, Linux-Systeme sind Mehrbenutzerumgebungen. Denken Sie stattdessen über einen dieser Ansätze nach:

  • fügen Sie das Konto hinzu, das den composer ausführen soll zum Gruppenstamm hinzufügen (ein Benutzerkonto kann mehreren Gruppen angehören) und die Verzeichnisgruppe beschreibbar machen
  • Ändern Sie den Gruppenbesitz des Verzeichnisses in eine Gruppe, der das Konto angehört, und machen Sie die Verzeichnisgruppe beschreibbar
  • benutze den sudo Dienstprogramm zum Installieren und Aktualisieren von composer Dienstprogramm

Die letzte Option ist die in der Regel gewählte und bevorzugte. Es belässt Berechtigungen wie sie sind (konservativ) und verwendet nur erhöhte Berechtigungen für Systemwartungsaufgaben wie Installation und Upgrade.


Linux
  1. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  2. /usr/bin vs. /usr/local/bin Unter Linux?

  3. Bash =~ Regex und Https://regex101.com/?

  4. Linux – Zusammenführen von /usr/bin und /usr/sbin in /bin (gnu/linux)?

  5. Installieren Sie Binärdateien in /bin, /sbin, /usr/bin und /usr/sbin, Interaktionen mit --prefix und DESTDIR

Kubuntu zeigt Fehler beim Login (file:///usr/share/sddm//themes/breeze/main.qml:no Such File or Directory)?

„Cache-Verzeichnis /home//.composer/cache/repo/https—packagist.org/ kann nicht erstellt werden, oder Verzeichnis ist nicht beschreibbar. Ohne Cache fortfahren“?

Wechseln Sie das Verzeichnis und führen Sie die Datei in einem Befehl aus

Was ist der Unterschied zwischen #!/usr/bin/env bash und #!/usr/bin/bash?

cmake --version zeigt auf /usr/bin/cmake, während cmake auf /usr/local/bin zeigt

Wann sollte ich /dev/shm/ verwenden und wann sollte ich /tmp/?