Angular-cli 需要 root 权限

Angular-cli requires root access

我使用命令安装了angular-cli npm 安装 -g angular-cli。 但是,每次我尝试 运行 任何 ng 命令时,它都会给我一个错误提示

Error: EACCES: permission denied, open '/home/m041/.config/configstore/ember-cli.json'
You don't have access to this file.

at Error (native)
at Object.fs.openSync (fs.js:640:18)
at Object.fs.readFileSync (fs.js:508:33)
at Object.create.all.get (/home/m041/Bot/node_modules/angular-cli/node_modules/configstore/index.js:35:26)
at Object.Configstore (/home/m041/Bot/node_modules/angular-cli/node_modules/configstore/index.js:28:44)
at clientId (/home/m041/Bot/node_modules/angular-cli/node_modules/ember-cli/lib/cli/index.js:22:21)
at module.exports (/home/m041/Bot/node_modules/angular-cli/node_modules/ember-cli/lib/cli/index.js:65:19)
at module.exports (/home/m041/Bot/node_modules/angular-cli/lib/cli/index.js:106:10)
at /usr/local/lib/node_modules/angular-cli/bin/ng:31:5
at /usr/local/lib/node_modules/angular-cli/node_modules/resolve/lib/async.js:44:21

临时修复是更改文件权限。但是每次我 运行 一个 ng 命令,权限都会被重置! 我的 npm 权限是固定的。我可以在没有 sudo 的情况下安装包。但是我面临着 cli 的问题。任何帮助将不胜感激

我在使用 OSX 10.11.6 时遇到了同样的问题,并从这里解决了。我假设您正在更改程序目录而不是 ember-cli.json 文件的文件权限。这是一个使我能够解决问题的修复程序:

https://github.com/angular/angular-cli/issues/696#issuecomment-233181380

sudo chown `$whoami` /Users/`$whoami`/.config/configstore/ember-cli.json

鉴于你的追溯,你似乎需要运行类似的命令:

sudo chown m041 /home/m041/.config/configstore/ember-cli.json