it-swarm-ja.com

コマンドpm-enableを実行するには、より高いレベルbootstrap=が必要です

私は過去2日間フォーラムをスカウトして、私の問題の答えを得ようとしています。私はDrushは初めてですが、Drupalはとても上手です。私の環境は次のとおりです:

  • centos 6
  • pHP 5.3.3
  • drupal 7.x単一サイトの基本インストール

私はdrushをインストールし、次にcdを自分のサイトのルートディレクトリにインストールして、drush dl seo_checklistを使用しましたが、正常に機能しました。

drush en seo_checklistを実行すると、次の出力が表示されます。

Command pm-enable needs a higher bootstrap level to run - you will need to invoke drush from a more functional Drupal environment to run this command. [error]  

The drush command 'en seo_checklist' could not be executed. [error]  
Drush was not able to start (bootstrap) the Drupal database. [error]  
Hint: This may occur when Drush is trying to:  
 * bootstrap a site that has not been installed or does not have a configured database. In this case you can select another site with a working database setup by specifying the URI to use with the --uri parameter on the command line. See `drush topic docs-aliases` for details.  
 * connect the database through a socket. The socket file may be wrong or the php-cli may have no access to it in a jailed Shell. See http://drupal.org/node/1428638 for details.  

Drush was attempting to connect to:  
 Drupal version         :  7.34  
 Site URI               :  http://default  
 PHP executable         :  /usr/bin/php  
 PHP configuration      :  /etc/php.ini  
 PHP OS                 :  Linux  
 Drush version          :  7.0-dev  
 Drush temp directory   :  /tmp  
 Drush configuration    :  
 Drush alias files      :  
 Drupal root            :  /var/www/html/mytestsite  
 Site path              :  sites/default  

私は自分の設定ファイルを変更して以下を含めました:

'Host' => php_sapi_name() == 'cli' ? '127.0.0.1' : 'localhost'  

更新-1

drush stは以下を返します。

 PHP executable         :  /usr/bin/php  
 PHP configuration      :  /etc/php.ini  
 PHP OS                 :  Linux  
 Drush version          :  7.0-dev  
 Drush temp directory   :  /tmp  
 Drush configuration    :  
 Drush alias files      :  

ルートフォルダー内のすべてに755の権限があり、Apache:apacheに属しています

Rootとしてdrushコマンドを実行しています。私は何が問題を引き起こしているのかわからない。

4
J.H.

Settings.phpファイルは、sites/all/defaultにありますか?そうでない場合は、-uriオプションを追加する必要があります。 settings.phpファイルがsites/all/foo.comにある場合は、-uri = foo.comを追加します。

drush --uri=foo.com en seo_checklist

または、settings.phpを含む同じフォルダーに作業ディレクトリを変更します。

または、「root」と「uri」を定義するサイトエイリアス@fooを定義してから、次のように使用します。

drush @foo en seo_checklist

5
greg_1_anderson

これが発生している理由を実際に見つけて修正方法をよりよく理解するには、--debugオプションを指定してdrushコマンドを実行します。例:drush pm-list --debug。次に、出力を調べて、問題の原因となっている可能性があるものを確認します。
https://2pha.com/blog/fixing-drush-needs-higher-bootstrap-level-run

4
2pha

私の場合、mysql-clientをインストールする必要があることがわかりました。

apt-get install mysql-client

私は次のような状況にありました。drush4、5、6はうまくいきました。 drush 7、8は機能しません(説明しているエラーを含むさまざまなエラー)。また、MySQLデータベースは別のサーバーに配置されていました。

HTH、アレクサンダー

同じ問題があり、.bash_profileを編集して$ PATHに何かを追加する必要がありました

# Add PHP to drush path export DRUSH_PHP='/Applications/MAMP/bin/php/php[your-php-version]/bin/php'

参照 私のMacではDrushは機能しません

1
kbrinner

drupal webrootフォルダーの外からdrushを実行しているようです。drupalが存在するフォルダー内から、drushを実行する必要があります。このエラーを与えない

1
Yangxiaoyong

PHPを更新すると、CentOS6で同じ問題が発生しました。PHP 5.3.3をwebtacticの5.5.22に置き換えたところ、drushは問題ありませんでした。

0
Jason