GNU/Linux >> Tutoriels Linux >  >> Linux

autorisation refusée pour composer dans /usr/local/bin/

cela peut être le cas si vous avez téléchargé composer.phar directement ,

mais pas en exécutant php composer-setup.php

faire composer.phar exécutable avec la commande suivante avant de le déplacer vers /usr/local/bin/composer ou après déplacement

sudo chmod 755 composer.phar

composer-setup.php fera ce changement pour nous par défaut


Sur le serveur Ubuntu>=16.04

PREMIER

sudo rm /usr/local/bin/composer

ET

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

Vous devez vérifier les autorisations du répertoire /usr/local/bin/, pas seulement le fichier qu'il contient. Le processus doit écrire à la fois, le fichier et dans le répertoire, qui doivent tous deux être accordés.

En dehors de cela, un conseil général :ne réglez pas toujours tout sur 777. Il n'y a aucune raison à cela et cela rend votre système vulnérable.

Selon la ligne que vous avez postée dans le dernier commentaire, le répertoire est actuellement accessible en écriture uniquement pour l'utilisateur root lui-même. Cela expliquerait l'erreur que vous obtenez. Vous ne devriez pas faites de votre propre compte utilisateur le propriétaire, les systèmes Linux sont des environnements multi-utilisateurs. Réfléchissez plutôt à l'une de ces approches :

  • ajoutez le compte destiné à exécuter le composer à la racine du groupe (un compte utilisateur peut appartenir à plusieurs groupes) et rendre le groupe répertoire accessible en écriture
  • changer la propriété des groupes du répertoire en un groupe dont le compte est membre et rendre le groupe de répertoire accessible en écriture
  • utiliser le sudo utilitaire pour installer et mettre à jour le composer utilitaire

La dernière option est celle généralement choisie et préférée. Il laisse les autorisations telles qu'elles sont (conservatrices) et n'utilise les privilèges élevés que pour les tâches de maintenance du système telles que l'installation et la mise à niveau.


Linux
  1. /usr/bin Vs /usr/local/bin Sous Linux ?

  2. Bash =~ Regex et Https://regex101.com/?

  3. Kubuntu affiche une erreur lors de la connexion (file:///usr/share/sddm//themes/breeze/main.qml:no Such File Or Directory) ?

  4. Déplacement du contenu de /bin vers /usr/bin, possible d'annuler ?

  5. Les sites Web doivent-ils vivre dans /var/ ou /usr/ selon l'utilisation recommandée ?

Quelle est la différence entre #!/usr/bin/env bash et #!/usr/bin/bash ?

cmake --version pointe vers /usr/bin/cmake tandis que cmake pointe vers /usr/local/bin

Quand dois-je utiliser /dev/shm/ et quand dois-je utiliser /tmp/?

Quelle est la signification de /usr/sbin, /usr/local/sbin et /usr/local/bin ?

Pourquoi mettre des choses autres que /home sur une partition séparée ?

Différence entre /bin et /usr/bin