大家好,我遇到了一个我似乎无法解决的问题。我正在设置服务器来部署应用程序。服务器是Ubuntu 16.04 LTS(Xenial Xerus)PVHVM。我已经安装了 NVM 并安装了我所有的 npm 包,但由于某种原因我无法安装 yeoman。我已经尝试了各种解决方案,但似乎都没有奏效。任何想法和/或建议将不胜感激。
当我尝试使用以下内容安装 yeoman 时,我被拒绝了权限
npm install -g yo
错误:
/root/.nvm/versions/node/v8.1.4/bin/yo ->/root/.nvm/versions/node/v8.1.4/lib/node_modules/yo/lib/cli.js/root/.nvm/versions/node/v8.1.4/bin/yo-complete ->/root/.nvm/versions/node/v8.1.4/lib/node_modules/yo/lib/completion/index.js
yo@2.0.0 安装后/root/.nvm/versions/node/v8.1.4/lib/node_modules/yo 优医生 sh:1:yodoctor:权限被拒绝 呵呵!文件 sh 呵呵!代码电子生命周期 呵呵!errno enoent 呵呵!系统调用生成 呵呵!yo@2.0.0 安装后配置:
yodoctor
呵呵!生成 ENOENT 呵呵! 呵呵!在 yo@2.0.0 安装后脚本中失败。
研究/尝试的解决方案:
npm 在没有 sudo 的情况下抛出错误
https://github.com/keystonejs/keystone/issues/1566
使用 distributed nodejs 软件包 (Ubuntu) 将 NPM 安装到主目录中
尝试卸载 nvm,然后删除 ~/.nvm 文件夹 并从脚本安装它
做
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
在 ~/.bashrc 中添加该行
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion" # This loads nvm bash_completion
根据我收到的反馈,我创建了一个新用户,给了该用户sudo,安装了nvm,安装了nvm安装稳定版,然后能够安装Yeoman而没有任何错误