首次运行truffle dashboard命令遭遇EACCES权限拒绝错误求助
Truffle Dashboard EACCES权限拒绝错误解决办法
执行truffle dashboard时触发权限拒绝错误,具体报错如下:
Error: EACCES: permission denied, open '/Users/rishikesh/Library/Preferences/truffle-nodejs/config.json.tmp-4644209492910867' at openSync (node:fs:601:3) at attempt (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/atomically/dist/utils/retryify.js:33:1) at Object.writeFileSync (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/atomically/dist/index.js:136:1) at Conf._write (/usr/local/lib/node_modules/truffle/build/webpack:/packages/config/node_modules/conf/dist/source/index.js:375:1) at Conf.set store [as store] (/usr/local/lib/node_modules/truffle/build/webpack:/packages/config/node_modules/conf/dist/source/index.js:296:1) at Conf.set (/usr/local/lib/node_modules/truffle/build/webpack:/packages/config/node_modules/conf/dist/source/index.js:189:1) at /usr/local/lib/node_modules/truffle/build/webpack:/packages/dashboard/dist/lib/DashboardServer.js:76:1 at Layer.handle [as handle_request] (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/lib/router/layer.js:95:1) at next (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/lib/router/route.js:137:1) at Route.dispatch (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/lib/router/route.js:112:1) at Layer.handle [as handle_request] (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/lib/router/layer.js:95:1) at /usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/lib/router/index.js:281:1 at Function.process_params (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/lib/router/index.js:341:1) at next (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/lib/router/index.js:275:1) at /usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/node_modules/body-parser/lib/read.js:130:1 at invokeCallback (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/node_modules/raw-body/index.js:224:1) at done (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/node_modules/raw-body/index.js:213:1) at IncomingMessage.onEnd (/usr/local/lib/node_modules/truffle/build/webpack:/node_modules/express/node_modules/raw-body/index.js:273:1) at IncomingMessage.emit (node:events:513:28) at endReadableNT (node:internal/streams/readable:1359:12) at processTicksAndRejections (node:internal/process/task_queues:82:21)
解决方法:
修复目标目录权限
给truffle-nodejs目录赋予当前用户读写权限,执行以下命令:sudo chown -R $USER:$USER /Users/rishikesh/Library/Preferences/truffle-nodejs输入系统密码后,重新运行
truffle dashboard即可。重新安装Truffle到用户目录
若全局安装的Truffle存在权限隐患,先卸载再以用户身份重新安装:npm uninstall -g truffle npm install -g truffle --user也可以通过nvm管理Node版本,避免系统级权限冲突。
临时sudo运行(不推荐)
虽然能临时绕过权限问题,但会导致后续文件权限混乱,仅作应急使用:sudo truffle dashboard
内容的提问来源于stack exchange,提问作者Rishikesh singh
相关产品推荐
相关产品推荐

