Ubuntu的bower命令,错误:EACCES,权限被拒绝'.../insight-bower.json'

6

当我尝试运行bower命令时,遇到以下错误:

Error: EACCES,权限被拒绝 '/home/***/.config/configstore/insight-bower.json' 您无权访问此文件。

我的用户无法运行bower命令。

at Object.fs.openSync (fs.js:432:18)
at Object.fs.readFileSync (fs.js:286:15)
at Object.create.all.get (/usr/local/lib/node_modules/bower/node_modules/insight/node_modules/configstore/index.js:27:26)
at Object.Configstore (/usr/local/lib/node_modules/bower/node_modules/insight/node_modules/configstore/index.js:20:44)
at new Insight (/usr/local/lib/node_modules/bower/node_modules/insight/lib/index.js:37:34)
at ensureInsight (/usr/local/lib/node_modules/bower/lib/util/analytics.js:25:19)
at Object.setup (/usr/local/lib/node_modules/bower/lib/util/analytics.js:41:9)
at Object.<anonymous> (/usr/local/lib/node_modules/bower/bin/bower:72:11)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)

但是当我以root身份运行Bower时,它可以正常工作。

出了什么问题?它之前一直都很好用,但自从我运行了下面的命令后,就出现了问题。

sudo bower cache clean --allow-root
1个回答

13

问题在于文件所有者。 因为文件 '/home/***/.config/configstore/insight-bower.json' 的所有者是root,所以我只能通过sudo和--allow-root来运行bower。

所以,通过以下方式将所有权更改为我的身份,问题很容易得到解决:

sudo chown bobsilon .config/configstore/insight-bower.json

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接