[英]Hyperledger composer-cli error EACCESS
按照这些说明,我开始在Hyperledger Composer上构建应用程序。
当我跑步时:
$ npm install -g composer-cli
该软件包已正确安装在此处: /home/arnaud/.nvm/versions/node/v8.11.1/bin/composer
但是,当我尝试运行composer --version
,出现以下错误EACCESS:
$ composer --version /home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/mkdirp/index.js:90 throw err0; ^
$ composer --version /home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/mkdirp/index.js:90 throw err0; ^
Error: EACCES: permission denied, mkdir '/home/arnaud/.composer/logs' at Object.fs.mkdirSync (fs.js:885:18) at Function.sync (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/mkdirp/index.js:71:13) at Object.exports.getLogger (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/log/winstonInjector.js:76:20) at Function._loadLogger (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/log/logger.js:633:25) at Function._setupLog (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/log/logger.js:531:30) at Function.getLog (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/log/logger.js:508:20) at Object.<anonymous> (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkmetadata.js:18:20) at Module._compile (module.js:652:30) at Object.Module._extensions..js (module.js:663:10) at Module.load (module.js:565:32)
Error: EACCES: permission denied, mkdir '/home/arnaud/.composer/logs' at Object.fs.mkdirSync (fs.js:885:18) at Function.sync (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/mkdirp/index.js:71:13) at Object.exports.getLogger (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/log/winstonInjector.js:76:20) at Function._loadLogger (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/log/logger.js:633:25) at Function._setupLog (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/log/logger.js:531:30) at Function.getLog (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/log/logger.js:508:20) at Object.<anonymous> (/home/arnaud/.nvm/versions/node/v8.11.1/lib/node_modules/composer-cli/node_modules/composer-common/lib/businessnetworkmetadata.js:18:20) at Module._compile (module.js:652:30) at Object.Module._extensions..js (module.js:663:10) at Module.load (module.js:565:32)
我该如何解决这个问题? 非常感谢
上面的问题纯粹是一个权限问题,在安装composer-cli时,基本上v8.11.1文件夹是由其他用户拥有的,即您的用户ID以外的其他用户。 因此,我们面临这个问题。 我们需要如下更改v8.11.1文件夹的所有者和组。 导航到文件夹v8.11.1(/home/arnaud/.nvm/versions/node/v8.11.1),然后验证该文件夹是否为user和group是您的用户ID(arnaud)。 当然,该文件夹不是arnaud用户和组拥有的。 使用chown更改文件夹用户和组。
RThatcher在下面描述的日志记录错误-它试图写入日志文件,其中一部分是创建logs
目录,但是它没有权限。 您以前是否使用'sudo'安装了Composer? ls -al /home/arnaud/.composer/*
显示什么(谁拥有目录)。 我问,因为这很奇怪,您可以在主目录下的其他任何地方编写(正如您期望的那样,作为arnaud)。 当然假设您正在运行上面的composer --version
命令,但以“ arnaud”身份登录,而不是以其他用户身份登录?
Error: EACCES: permission denied, mkdir '/home/arnaud/.composer/logs'
这是核心错误,表明您无权在/home/arnaud/.composer文件夹中创建日志文件夹,或者您无权在/ home / arnaud /文件夹中创建.composer文件夹。 。
您应该结合使用ls -al
, chmod
和可能的chown
Linux命令来调查和解决权限问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.