npmのグローバルモジュールのインストール権限問題を修正します.

1548 ワード

私たちは以前、グローバルにモジュールパッケージをインストールする過程でEACCESSにエラーが発生したことがあると信じています.これは、npmグローバルインストールモジュールのデフォルトパスに権限がないためです.
この問題を解決できる3つの方法があります.
  • グローバルインストールパスのパーミッション
  • を変更する.
  • デフォルトのインストールパス
  • を変更します.
  • は、第三者ツールによってnode
  • をインストールする.
    インストール先のパーミッションを変更します.
  • は、デフォルトのグローバルインストールパス
  • を参照してください.
    npm config get prefix
    ほとんどのシステムに対するディレクトリの表示:/usr/local警告:デフォルトのパスが/usr/である場合は、このステップをスキップしてください.そうでないと、システムの権限を乱します.
  • パス権限を変更する
  • sudo chown-R(whomi)(npm config get prefix)/{lib/nodemumodules、bin、share}
    実行が完了すると、/usr/localの下のlib/node_modulesbinshareの所有権を現在のユーザに変更します.
    デフォルトのグローバルインストールのパスを変更します.
    デフォルトのインストールパスの権限を変更したくない場合、例えば、権限を変更した後、現在のシステムの他のユーザーと共有できないことがあります.この時は標準のインストール経路を変更することが考えられます.
    例では、デフォルトのグローバルインストールパスを現在のユーザのhomeディレクトリの下に修正します.
  • 1、グローバルインストールのための経路を新規作成する
  • mkdir~/.npm-global
  • 、構成npmは、新しいパス
  • を使用する.
    npm config set prefix'~/.npm-global'
  • 3、オープンまたは新規~/.profile、次の行
  • に参加します.
    export PATH=/.npm-global/bin:$PATH
  • 、システム環境変数を更新する
  • source~/.profile
    グローバルパッケージをインストールしてみます.
    npm install-g jshint
    [luncher@localhost aaa]$ ls ~/.npm-global/bin/
    jshint
    [luncher@localhost aaa]$ 
    第三者ツールによるnodeの取り付け
  • macシステムは、brewによってnode
  • をインストールする.
    brew install node
  • centosはyumツールによってnode
  • をインストールします.
    yum install node