2016-07-22 6 views
0

Immer wenn ich vendor/bin/phpunit im Stammpfad meines Laravel-Projekts ausführen, gibt es eine Berechtigung verweigert Fehler. Wie kann ich dieses Problem beheben?Wie zu beheben Berechtigung verweigert, während Vendor/bin/phpunit in einem Laravel-Projekt ausgeführt

Wichtig: Ich möchte nicht verwenden composer update oder löschen Sie einige oder alle vendor/ dir dann verwenden Sie composer install, da diese Methoden zu viele Dateien ändern, die mein Master nicht zustimmen wird.

ps: lrwxrwxrwx 1 Arbeit Arbeit 26 Jul 21 7.10 phpunit -> ../phpunit/phpunit/phpunit

-rwxrwxrwx 1 Arbeit Arbeit 1199 Jul 22 8.19 ./vendor/phpunit/phpunit/phpunit

und chmod 775 -R vendor funktioniert nicht.

+0

Überprüfen Sie das Recht auf 'Vendor/bin/phpunit' – Vuldo

+0

lrwxrwxrwx, ich hoffe, dieses Problem ist so einfach, aber es ist nicht –

+0

Sind Sie als' Arbeit' protokolliert? – Vuldo

Antwort

1

Versuchen und Terminal öffnen und den Befehl: Der 1. eine mit der -R Flag bedeutet Änderungsberechtigungen auch für Unterverzeichnisse -Recursive

sudo chmod 777 -R PATH_TO/vendor 

sudo chmod 777 PATH_TO/vendor/phpunit/phpunit 

sudo chmod 777 PATH_TO/vendor/phpunit/phpunit/phpunit && chmod +x PATH_TO/vendor/phpunit/phpunit/phpunit 
+0

thx, aber überhaupt nicht funktioniert –

+0

thx viel, ich verwendet/vendor/bin/php * in der 3. Befehl, aber es gibt mir immer noch eine: Berechtigung verweigert, hahaha ... –

+0

@JinAazoe nicht/Vendor/bin/php aber '/ Vendor/bin/phpunit' ... Entschuldigung ... noch einmal überprüfen ... denke das Problem ist weil du alle dateien im/bin verzeichnis bist, sind sym-Links ... also wurde der code wieder aktualisiert ;-) – Poiz

3

können Sie lösen Dies geschieht durch die Aktualisierung der Vagrantfile Ihrer Einrichtung, insbesondere der fmode Ihrer Web-Root synced_folder Ordner.

Wechsel:

config.vm.synced_folder ".", "/vagrant", :mount_options => ["dmode=777", "fmode=666"] 

zu:

config.vm.synced_folder ".", "/vagrant", :mount_options => ["dmode=777", "fmode=777"] 

für Scotch-Box,

Wechsel:

config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"] 

zu:

config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=777"] 

Nachdem Sie das getan, laden Sie Ihre Konfiguration:

$ vagrant reload 
4

Was Sie tun sollten Anruf mit PHP ist:

$ php ./vendor/bin/phpunit 
PHPUnit 4.8.35 by Sebastian Bergmann and contributors. 

Hallo erhielt die gleiche Störung ohne PHP-Interpreter ausführen zu binden:

$ ./vendor/bin/phpunit 
bash: ./vendor/bin/phpunit: Permission denied 

Hoffe das hilft Ihnen.

0

Löschen der vendor Ordner und tun composer install arbeitete für mich.