2015-09-05 46 views
0

我正在尝试在远程服务器上设置drush。 (由提供商网络服务器)Drush:在远程服务器上拒绝权限

我通过SSH与作曲家安装drush,但是当我尝试运行它,我得到

-bash: /data/web/myusername/.composer/vendor/drush/drush/drush: Permission denied 

drush-rwxr-xr-x权限

我怎么会验证它是否只是提供商不允许我执行drush或者只是一个错误?

编辑:我发现我可以用bash drush运行drush,它毕竟似乎是一个权限问题。

现在我的本地机器上的drush会调用远程drush没有bash,所以我怎么能改变/解决方法?

+0

当你SSH到远程机器,使用什么shell? 'echo $ SHELL'应该告诉你。可能是因为bash在登录时不是shell,因此您可能需要查看是否可以自己设置默认shell,或者在远程服务器上执行诸如“别名drush ='bash drush'”之类的操作。 – aaronott

+0

嗨,bash被使用。如果我用'sh'切换到sh,我仍然无法用'./ drush'运行,但是'sh drush'工作。我可以在我的本地机器上重现那个错误:如果我创建了一个脚本并且我不给它执行权限,我可以用'bash脚本'运行它,但不能用'。/ script'运行。使用声音似乎不起作用,因为我的本地呕吐作为脚本不会加载别名。但是,我正在寻找那个方向。 – trautmann

+0

我想我会期待一个不同的错误,但〜/ .drush /缓存权限设​​置是否正确? – aaronott

回答

1

我使用的作曲家和开箱即装drush 8,尝试甚至 drush version 我拒绝“权限”,直到我没有使用chmod + X上:

/vendor/bin/drush 
/vendor/drush/drush 
/vendor/drush/drush.launcher 

接下来,我不得不重写PHP。 INI使用本地drush.ini有:

disable_functions = 

有列表中的任何禁用funcs中造成drush每次发出一个错误。这是在Krystal共同主办。