PHP Artisan Tinker не может записать в путь конфигурации

Я использовал Tinker раньше, но вдруг он перестал работать, независимо от того, какой проект, какая версия, новая или существующая. Я на MacBook Pro 2013, Mac OS Sierra, iterm2 с Zsh. Я исследовал все и не нашел ничего уместного за исключением одной ссылки в переполнении стека на https://github.com/bobthecow/psysh/issues/382 который не показывает разрешение, не специфичен для laravel, но, похоже, включает в себя оболочку psy (все остальные команды ремесленника хороши):

бродяга @ усадьба: ~ / код / ​​приложение $ php ремесленник тинкер

  [ErrorException]
Writing to /home/vagrant/.config/psysh is not allowed.

Это ошибка, которую мне показывают. Vagrant настраивается через виртуальный ящик под управлением усадьбы-7.

Когда я запускаю ssh в vagrant и ls -la, я вижу папку .config, но не могу получить к ней доступ и не могу mkdir mvdir из-за ошибок, связанных с доступом. (Что, если я узнаю из трассировки стека ниже, где происходит ошибка? Вершина трассы, где находится touchfilemkdir?) Сама папка принадлежит vagrant. Я могу понять, где происходит ошибка, но я не знаю, почему она может быть вызвана, независимо от того, какую версию laravel я использую, будь то существующий проект или новая загрузка.

В рамках самих проектов Laravel у меня есть

"laravel/tinker": "~1.0",

в composer.json и

/*
* Package Service Providers...
*/
Laravel\Tinker\TinkerServiceProvider::class

находится в app / cofig / app.php.

Я выполнил многословную трассировку стека, хотя я не совсем уверен, на что она указывает, что сломалось или почему.

Exception trace:
() at

/home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/ConfigPaths.php:213
Illuminate\Foundation\Bootstrap\HandleExceptions->handleError() at n/a:n/a
trigger_error() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/ConfigPaths.php:213
Psy\ConfigPaths::touchFileWithMkdir() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/Configuration.php:361
Psy\Configuration->setHistoryFile() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/Configuration.php:409
Psy\Configuration->getHistoryFile() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/Configuration.php:546
Psy\Configuration->getReadline() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/Shell.php:82
Psy\Shell->__construct() at /home/vagrant/Code/lightpointLP/vendor/laravel/tinker/src/Console/TinkerCommand.php:53
Laravel\Tinker\Console\TinkerCommand->handle() at n/a:n/a
call_user_func_array() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
Illuminate\Container\BoundMethod::callBoundMethod() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
Illuminate\Container\BoundMethod::call() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Container/Container.php:539
Illuminate\Container\Container->call() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Console/Command.php:182
Illuminate\Console\Command->execute() at /home/vagrant/Code/lightpointLP/vendor/symfony/console/Command/Command.php:264
Symfony\Component\Console\Command\Command->run() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Console/Command.php:167
Illuminate\Console\Command->run() at /home/vagrant/Code/lightpointLP/vendor/symfony/console/Application.php:874
Symfony\Component\Console\Application->doRunCommand() at /home/vagrant/Code/lightpointLP/vendor/symfony/console/Application.php:228
Symfony\Component\Console\Application->doRun() at /home/vagrant/Code/lightpointLP/vendor/symfony/console/Application.php:130
Symfony\Component\Console\Application->run() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:122
Illuminate\Foundation\Console\Kernel->handle() at /home/vagrant/Code/lightpointLP/artisan:35

Если может потребоваться какая-либо другая информация, я буду рад предоставить ее, я действительно в растерянности относительно того, что произошло или как это исправить.
Спасибо

ОБНОВЛЕНИЕ 31 августа
Итак, я обнаружил, что когда я нахожусь в vagrant @ homestead и когда я нахожусь в root @ homestead: / home / vagrant # и я вхожу в .config, есть каталог configstore и каталог psysh, но он принадлежит root , Я сменил владельца на vagrant, вышел, перезагрузил vagrant и повторил ту же ошибку.

drwx------ 2 root root 4096 May 4 00:55 configstore
drwxr-xr-x 2 vagrant vagrant 4096 Aug 31 23:37 psysh

Тогда я попробовал sudo -i и получил root @ hometead, но обнаружил, что содержимое .config было другим. На этот раз у него есть каталог .composer и psysh не существует. Поэтому я добавил каталог psysh с vagrant в качестве владельца

drwxr-xr-x 2 root root 4096 Feb 26 2017 composer
drwxr-xr-x 2 vagrant vagrant 4096 Aug 31 23:59 psysh

но это все еще также не работает. Я также вышел, перезагрузил vagrant, я config: очищен на обоих, но я получаю то же самое неспособное написать ошибку.

Я в растерянности, любое понимание поможет, пожалуйста. Спасибо!

0

Решение

Похоже, это проблема с PsySH http://psysh.org/.

Я не могу ответить на вопрос, но похоже, что у этого парня была та же проблема. Может быть, стоит его схватить и спросить, как он это исправил.

https://github.com/bobthecow/psysh/issues/382

Вы пробовали запустить обновление композитора? Удачи.

1

Другие решения

После дальнейших исследований и испытаний решили открыть новый вопрос, поскольку он выходит за рамки того, что изначально казалось неправильным.

0

У меня была точно такая же проблема, и она сохранялась в течение нескольких дней. Я исправил это, запустив composer dump-autoload из каталога проекта. Ранее я пробовал команду, но она не работала, потому что я пробовал ее без доступа к Интернету, убедитесь, что вы подключены к Интернету при запуске команды. Удачи!

0

Я пытался обновить композитор, дамп-автозагрузка, но ничего не получалось. Просто поменял разрешение на папку ~. / Config и все заработало. Вы можете установить 755 или выше (я не говорю о производственной среде здесь).

0

Я выполнил следующую команду на моем терминале:

sudo chmod -R 775  ~/.config
0
По вопросам рекламы [email protected]