【问题标题】:n (node version manager): cannot create directoryn(节点版本管理器):无法创建目录
【发布时间】:2015-05-26 04:14:38
【问题描述】:

在 lubuntu 14.10 上。我正在尝试使用“n”(节点版本管理器)更新节点

安装方式:

sudo npm install -g n

如果没有“sudo”,它将无法请求管理员权限...

当尝试使用“n”时,我总是得到“无法创建目录”、“权限被拒绝”。

如何让“n”使用正确的权限?

【问题讨论】:

  • 为什么你认为n 甚至可以在没有管理权限的情况下运行?如果您要为所有用户安装node 或什至只是npm,节点版本管理器需要接触 usr/lib 目录中的文件,这对于任何旧用户来说非常无法访问登录用户,原因很明显 =)
  • 如果不是,使用-g 选项没有任何好处。

标签: node.js npm n


【解决方案1】:

无论运行什么命令,旧版本的n 都会尝试创建缓存文件夹/usr/local/n

n v3.0.2 起,缓存文件夹仅在需要时创建。这允许您在不使用 sudo 的情况下运行像 n --lts 这样的只读命令。

(请注意,安装确实需要对缓存文件夹和安装文件夹的写入权限,因此您需要使用 sudo,或将 N_PREFIX 定义为可写位置,或更改安装位置的权限/所有权。)

【讨论】:

  • 抱歉,我已经不记得我遇到过这样的问题。不过谢谢。
  • 别担心,我知道这个问题是,并为仍然使用旧n 的未来读者回复。
【解决方案2】:

我认为安装n 的最佳方式是使用n-install

【讨论】:

    最近更新 更多