无法创buildyeoman webapp

当我尝试与yeoman创build一个webapp时,我得到了这个。

 /usr/local/lib/node_modules/yo/node_modules/insight/node_modules/configstore/configstore.js:66 throw err; ^ Error: EACCES, permission denied '/root/.config/configstore/insight-yo.yml' You don't have access to this file. at Object.fs.openSync (fs.js:436:18) at Object.fs.writeFileSync (fs.js:975:15) at Object.create.all.set (/usr/local/lib/node_modules/yo/node_modules/insight/node_modules/configstore/configstore.js:56:8) at Object.Configstore (/usr/local/lib/node_modules/yo/node_modules/insight/node_modules/configstore/configstore.js:19:11) at new Insight (/usr/local/lib/node_modules/yo/node_modules/insight/lib/insight.js:23:34) at process.<anonymous> (/usr/local/lib/node_modules/yo/node_modules/insight/lib/push.js:11:16) at process.emit (events.js:98:17) at handleMessage (child_process.js:322:10) at Pipe.channel.onread (child_process.js:349:11) 

我GOOGLE了,我尝试了以下的东西,但没有帮助:

 chown root /root/.config/configstore/insight-yo.yml chown myusername /root/.config/configstore/insight-yo.yml 

安装了npm-sudo-fix然后运行它,还没有运气。

我在Debian Wheezy上,有npm 1.4.4。

我面临同样的问题。 我运行下面的命令,它解决了我的问题:

 mkdir -p /root/.config/configstore chmod g+rwx /root /root/.config /root/.config/configstore 

同样的问题发生在我身上,我是在根模式用户#。 我只是回到正常的用户$,它的工作。 我正在使用Zorin操作系统

我在Ubuntu上构build一个meanjs应用程序的问题相同,我已经使用sudo而不是root修复了这个问题:

 sudo npm install -g yo generator-meanjs bower grunt 

然后,我可以build立应用程序,而不需要再次要求密码:

 yo meanjs 

sudo允许用户在没有rootlogin的情况下作为root用户,使用sudo而不是rootlogin是更安全的。 sudo vs root – askubuntu

我能够通过运行来解决这个问题:

 echo prefix = ~/.node >> ~/.npmrc 

 export PATH=$HOME/.node/bin:$PATH 

这里解释:

安装yeoman时出错
`echo prefix =〜/ .node >>〜/ .npmrc`是什么意思?
npm / yeoman安装generator-angular没有sudo

我只是在Windows中修复它。 我已经做了三件事,哪一件已经解决了,我不确定。

以pipe理员身份运行cmd提示符。

takeown /? 这个命令相当于chown (linux),但是对于windows。

 cacls -cacls /E /T /G :F 

只需进入$USER /Users/calvin/.config/configstore/并使文件不被隐藏。

它为我工作像魅力。 多年来我一直在努力解决这个问题。

尽pipechmod命令起初似乎起作用,但是后来又出现了类似的错误,用于其他文件夹。 但是在这里我发现了解决这个问题的解决方法:

 sed -i -e '/rootCheck/d' "${NPM_CONFIG_PREFIX}/lib/node_modules/yo/lib/cli.js" 

如果yo以root rootCheck运行, rootCheck将降级到UID 1000(在Linux上)或501(在OS X上)。 这会导致权限错误。 但是在一个docker容器中,你可能想以root身份运行,所以你别无select。

你需要升级yeoman后重新运行这个命令。 如果NPM_CONFIG_PREFIX则可以使用:

 export NPM_CONFIG_PREFIX=$(npm config get prefix) 

问题是哟没有被授予使用一些nodejs模块。 基本上,这个问题与节点包pipe理器“npm”对yo的授权有关,要解决这个问题先运行这个命令

 sudo npm install --global yo --allow-root