我无法以我的用户身份运行bower命令,这样可以在跑步时给出以下错误:
错误:EACCES,权限被拒绝' / home / *** /。config / configstore / insight-bower.json' 您无法访问此文件。
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
答案 0 :(得分:13)
问题是文件的所有者。 因为文件'/home/***/.config/configstore/insight-bower.json'的所有者是root用户,所以我只能使用sudo和--allow-root运行bower。
因此,通过将所有者更改为自己可以轻松解决问题,如下所示:
sudo chown bobsilon .config/configstore/insight-bower.json