
ノードのバージョンを最新の安定版に更新しようとしています。
使用このリソース以下のことができました:
sudo npm install n -g
でも試してみると
sudo npm n stable
次のような結果になります:
sudo: n: command not found
を実行するとn stable
、コマンドが表示されます:
n stable
mkdir: cannot create directory ‘/usr/local/n’: Permission denied
mkdir: cannot create directory ‘/usr/local/n’: Permission denied
mkdir: cannot create directory ‘/usr/local/n’: Permission denied
mkdir: cannot create directory ‘/usr/local/n’: Permission denied
install : node-v0.12.2
mkdir : /usr/local/n/versions/node/0.12.2
mkdir: cannot create directory ‘/usr/local/n’: Permission denied
Error: sudo required
答え1
私にとって有効な解決策を見つけました:
sudo -E env "PATH=$PATH" n stable
答え2
驚いたことに、npm
インストールでは、ホーム ディレクトリの というフォルダーにグローバル プレフィックスが付いていますnpm
。つまり、フラグを使用してインストールされたすべてのパッケージが-g
このフォルダーにインストールされます。
sudo
次の手順に従って、このフォルダーを安全なパス上にある任意のフォルダーに変更できます。
グラフィカルな方法:
- ファイル マネージャー (別名 Nautilus) を開きます。
- ホームフォルダに移動します。
- Ctrl隠しファイルを表示するには+ を押しますH。
.npmrc
お気に入りのテキスト エディターでというファイルを開きます。そのファイルで次の内容の行を見つけます:
prefix=/home/<your_username>/npm
/home/<your_username>/npm
安全なパス( など)に置き換えます/usr/local/bin
。交換すると次のようになります。
prefix=/usr/local/bin
- ファイルを保存します。
- 再実行
sudo npm install n -g
ターミナルウェイ:
次のコマンドを実行します:
sed -i.bak "s%^prefix=.*$%prefix=/usr/local/bin%" ~/.npmrc
答え3
これは Ubuntu フォーラムであることは承知していますが、私と同じように Google で検索して RHEL フレーバーで同じ問題を抱えている人にとっては役立つはずです。おそらく Ubuntu でも機能するでしょう。
ln -s /usr/local/bin/n /usr/bin/n
答え4
.npm-global
フォルダを混乱させないようにするために了解しました@Edson Horacio Juniorによる、@pohestの答え、これを修正した方法は次のとおりです。
sudo ln -s /home/<username>/.npm-global/bin/n /usr/local/bin/n
sudo n --version # test it
注意:npmの手順に従っていない場合、これはおそらく機能しません。デフォルトのグローバルディレクトリを変更する。