IT/Blockchain2018. 3. 28. 14:21

NAME:

   geth - the go-ethereum command line interface


   Copyright 2013-2017 The go-ethereum Authors


USAGE:

   geth [options] command [command options] [arguments...]

   

VERSION:

   1.8.3-stable

   

COMMANDS:

   account           Manage accounts

   attach            Start an interactive JavaScript environment (connect to node)

   bug               opens a window to report a bug on the geth repo

   console           Start an interactive JavaScript environment

   copydb            Create a local chain from a target chaindata folder

   dump              Dump a specific block from storage

   dumpconfig        Show configuration values

   export            Export blockchain into file

   export-preimages  Export the preimage database into an RLP stream

   import            Import a blockchain file

   import-preimages  Import the preimage database from an RLP stream

   init              Bootstrap and initialize a new genesis block

   js                Execute the specified JavaScript files

   license           Display license information

   makecache         Generate ethash verification cache (for testing)

   makedag           Generate ethash mining DAG (for testing)

   monitor           Monitor and visualize node metrics

   removedb          Remove blockchain and state databases

   version           Print version numbers

   wallet            Manage Ethereum presale wallets

   help, h           Shows a list of commands or help for one command

   

ETHEREUM OPTIONS:

  --config value                           TOML configuration file

  --datadir "/Users/jsp/Library/Ethereum"  Data directory for the databases and keystore

  --keystore                               Directory for the keystore (default = inside the datadir)

  --nousb                                  Disables monitoring for and managing USB hardware wallets

  --networkid value                        Network identifier (integer, 1=Frontier, 2=Morden (disused), 3=Ropsten, 4=Rinkeby) (default: 1)

  --testnet                                Ropsten network: pre-configured proof-of-work test network

  --rinkeby                                Rinkeby network: pre-configured proof-of-authority test network

  --syncmode "fast"                        Blockchain sync mode ("fast", "full", or "light")

  --gcmode value                           Blockchain garbage collection mode ("full", "archive") (default: "full")

  --ethstats value                         Reporting URL of a ethstats service (nodename:secret@host:port)

  --identity value                         Custom node name

  --lightserv value                        Maximum percentage of time allowed for serving LES requests (0-90) (default: 0)

  --lightpeers value                       Maximum number of LES client peers (default: 100)

  --lightkdf                               Reduce key-derivation RAM & CPU usage at some expense of KDF strength

  

DEVELOPER CHAIN OPTIONS:

  --dev               Ephemeral proof-of-authority network with a pre-funded developer account, mining enabled

  --dev.period value  Block period to use in developer mode (0 = mine only if transaction pending) (default: 0)

  

ETHASH OPTIONS:

  --ethash.cachedir                     Directory to store the ethash verification caches (default = inside the datadir)

  --ethash.cachesinmem value            Number of recent ethash caches to keep in memory (16MB each) (default: 2)

  --ethash.cachesondisk value           Number of recent ethash caches to keep on disk (16MB each) (default: 3)

  --ethash.dagdir "/Users/jsp/.ethash"  Directory to store the ethash mining DAGs (default = inside home folder)

  --ethash.dagsinmem value              Number of recent ethash mining DAGs to keep in memory (1+GB each) (default: 1)

  --ethash.dagsondisk value             Number of recent ethash mining DAGs to keep on disk (1+GB each) (default: 2)

  

TRANSACTION POOL OPTIONS:

  --txpool.nolocals            Disables price exemptions for locally submitted transactions

  --txpool.journal value       Disk journal for local transaction to survive node restarts (default: "transactions.rlp")

  --txpool.rejournal value     Time interval to regenerate the local transaction journal (default: 1h0m0s)

  --txpool.pricelimit value    Minimum gas price limit to enforce for acceptance into the pool (default: 1)

  --txpool.pricebump value     Price bump percentage to replace an already existing transaction (default: 10)

  --txpool.accountslots value  Minimum number of executable transaction slots guaranteed per account (default: 16)

  --txpool.globalslots value   Maximum number of executable transaction slots for all accounts (default: 4096)

  --txpool.accountqueue value  Maximum number of non-executable transaction slots permitted per account (default: 64)

  --txpool.globalqueue value   Maximum number of non-executable transaction slots for all accounts (default: 1024)

  --txpool.lifetime value      Maximum amount of time non-executable transaction are queued (default: 3h0m0s)

  

PERFORMANCE TUNING OPTIONS:

  --cache value            Megabytes of memory allocated to internal caching (default: 1024)

  --cache.database value   Percentage of cache memory allowance to use for database io (default: 75)

  --cache.gc value         Percentage of cache memory allowance to use for trie pruning (default: 25)

  --trie-cache-gens value  Number of trie node generations to keep in memory (default: 120)

  

ACCOUNT OPTIONS:

  --unlock value    Comma separated list of accounts to unlock

  --password value  Password file to use for non-interactive password input

  

API AND CONSOLE OPTIONS:

  --rpc                  Enable the HTTP-RPC server

  --rpcaddr value        HTTP-RPC server listening interface (default: "localhost")

  --rpcport value        HTTP-RPC server listening port (default: 8545)

  --rpcapi value         API's offered over the HTTP-RPC interface

  --ws                   Enable the WS-RPC server

  --wsaddr value         WS-RPC server listening interface (default: "localhost")

  --wsport value         WS-RPC server listening port (default: 8546)

  --wsapi value          API's offered over the WS-RPC interface

  --wsorigins value      Origins from which to accept websockets requests

  --ipcdisable           Disable the IPC-RPC server

  --ipcpath              Filename for IPC socket/pipe within the datadir (explicit paths escape it)

  --rpccorsdomain value  Comma separated list of domains from which to accept cross origin requests (browser enforced)

  --rpcvhosts value      Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard. (default: "localhost")

  --jspath loadScript    JavaScript root path for loadScript (default: ".")

  --exec value           Execute JavaScript statement

  --preload value        Comma separated list of JavaScript files to preload into the console

  

NETWORKING OPTIONS:

  --bootnodes value     Comma separated enode URLs for P2P discovery bootstrap (set v4+v5 instead for light servers)

  --bootnodesv4 value   Comma separated enode URLs for P2P v4 discovery bootstrap (light server, full nodes)

  --bootnodesv5 value   Comma separated enode URLs for P2P v5 discovery bootstrap (light server, light nodes)

  --port value          Network listening port (default: 30303)

  --maxpeers value      Maximum number of network peers (network disabled if set to 0) (default: 25)

  --maxpendpeers value  Maximum number of pending connection attempts (defaults used if set to 0) (default: 0)

  --nat value           NAT port mapping mechanism (any|none|upnp|pmp|extip:<IP>) (default: "any")

  --nodiscover          Disables the peer discovery mechanism (manual peer addition)

  --v5disc              Enables the experimental RLPx V5 (Topic Discovery) mechanism

  --netrestrict value   Restricts network communication to the given IP networks (CIDR masks)

  --nodekey value       P2P node key file

  --nodekeyhex value    P2P node key as hex (for testing)

  

MINER OPTIONS:

  --mine                    Enable mining

  --minerthreads value      Number of CPU threads to use for mining (default: 8)

  --etherbase value         Public address for block mining rewards (default = first account created) (default: "0")

  --targetgaslimit value    Target gas limit sets the artificial target gas floor for the blocks to mine (default: 4712388)

  --gasprice "18000000000"  Minimal gas price to accept for mining a transactions

  --extradata value         Block extra data set by the miner (default = client version)

  

GAS PRICE ORACLE OPTIONS:

  --gpoblocks value      Number of recent blocks to check for gas prices (default: 20)

  --gpopercentile value  Suggested gas price is the given percentile of a set of recent transaction gas prices (default: 60)

  

VIRTUAL MACHINE OPTIONS:

  --vmdebug  Record information useful for VM and contract debugging

  

LOGGING AND DEBUGGING OPTIONS:

  --metrics                 Enable metrics collection and reporting

  --fakepow                 Disables proof-of-work verification

  --nocompaction            Disables db compaction after import

  --verbosity value         Logging verbosity: 0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (default: 3)

  --vmodule value           Per-module verbosity: comma-separated list of <pattern>=<level> (e.g. eth/*=5,p2p=4)

  --backtrace value         Request a stack trace at a specific logging statement (e.g. "block.go:271")

  --debug                   Prepends log messages with call-site location (file and line number)

  --pprof                   Enable the pprof HTTP server

  --pprofaddr value         pprof HTTP server listening interface (default: "127.0.0.1")

  --pprofport value         pprof HTTP server listening port (default: 6060)

  --memprofilerate value    Turn on memory profiling with the given rate (default: 524288)

  --blockprofilerate value  Turn on block profiling with the given rate (default: 0)

  --cpuprofile value        Write CPU profile to the given file

  --trace value             Write execution trace to the given file

  

WHISPER (EXPERIMENTAL) OPTIONS:

  --shh                       Enable Whisper

  --shh.maxmessagesize value  Max message size accepted (default: 1048576)

  --shh.pow value             Minimum POW accepted (default: 0.2)

  

DEPRECATED OPTIONS:

  --fast   Enable fast syncing through state downloads

  --light  Enable light client mode

  

MISC OPTIONS:

  --help, -h  show help

  


COPYRIGHT:

   Copyright 2013-2017 The go-ethereum Authors

   



반응형
Posted by IT반장
IT/Blockchain2017. 6. 6. 20:29



안녕하세요. IT반장입니다.

Hyperledger 두번째 시간인 환경 구성에 대해 알아보겠습니다.



목차

1. 개요

2. 환경 구성

3. 설치

4. 샘플 테스트

5. 체인코드 개발

6. 동작 분석

7. 기타



2. Hyperledger 환경 구성


ㅇ Hyperledger를 설치하고, 체인코드를 개발하기 위한 환경 설정을 살펴봅니다.

  OSX 또는 리눅스 운영체제를 추천합니다. 현재 Windows는 GO언어의 파일 권한 설정 버그가 있습니다.


ㅇ 테스트 환경

 - 하드웨어: PC급(미니 PC급 사양, 64비트 지원)

 - OS: 리눅스(Ubuntu Desktop 16.04 LTS 64비트)

※ 원활한 환경을 구성을 위해서는 64비트를 설치해야 합니다.  docker, crome 등이 64비트만 지원됩니다.

 




가. 리눅스 설치하기

 - 생략(향후 작성 또는 링크)





나. GIT & PIP(Python package manager) 설치


$ sudo apt-get update

$ sudo apt-get -y upgrade

$ sudo apt-get install git python-pip





다. GO 언어 설치 및 환경 설정



$ sudo add-apt-repository ppa:longsleep/golang-backports

$ sudo apt-get update

$ sudo apt-get install golang-go

; go 언어 1.8 버전을 설치하는 방법이다.



$ sudo vi /etc/profile

;  "export GOPATH=$PWD/go"를 추가한다.


$ source /etc/profile

$ env | grep GOPATH




라. node.js 및 npm 설치



$ curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -


$ sudo apt-get install -y nodejs

 





마. 리눅스 계정 생성 및 설정하기

- 관리용(기본) 설치 계정 이외에 Hyperledger V0.6/V1.0 테스트 계정을 생성한다.

※ huser1, huser2 2개를 생성한다.



$ sudo adduser huser1

$ sudo adduser huser2






바. Docker 및 Docker-Compose 설치 & 설정



$ sudo apt-get -y install apt-transport-https ca-certificates curl

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) \

 stable"

$ sudo apt-get update


$ sudo apt-get -y install docker-ce


$ sudo docker run hello-world

 

$ sudo pip install docker-compose

$ sudo usermod -a -G docker huser1

$ sudo usermod -a -G docker huser2

; huser1, huser2 계정에 Docker를 사용할 수 있도록 한다.





자, 이제 Hyperledger 를 설치할 준비가 되었습니다. ^^

※ Hyperledger는 수백명의 개발자가 참여하는 프로젝트입니다. 자고 일어나면 기능/설정이 변경되어 있습니다. 이 문서는 2017년 6월 5일 기준으로 작성되었습니다. 



참고 목록

[1] Fabric 사전 환경 구성: http://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html

[2] Fabric 개발 환경 구성: http://hyperledger-fabric.readthedocs.io/en/latest/dev-setup/devenv.html



문서 이력

- v1.0 (20170606) :  최초 등록



도움이 되셨다면 ♡ 눌러 주세요.^^



반응형
Posted by IT반장