상세 컨텐츠

본문 제목

Geth Command-line Options

Blockchain/Ethereum

by Yongari 2023. 4. 2. 15:58

본문

 

Geth는 주로 명령줄을 사용하여 제어합니다. Geth는 geth 명령을 사용하여 시작합니다. ctrl-c를 누르면 중지됩니다.

명령줄 옵션(일명 플래그)을 사용하여 Geth를 구성할 수 있습니다. Geth에는 콘솔 또는 블록체인 가져오기/내보내기와 같은 기능을 호출하는 데 사용할 수 있는 하위 명령도 있습니다.

편의를 위해 아래에 명령줄 도움말 목록을 재현했습니다. Geth 인스턴스를 실행하면 언제든지 동일한 정보를 얻을 수 있습니다:

 

다음 커맨드를 통해 Commands에 있는 명령줄 옵션을 볼 수 있습니다. 

geth --help

 

 

Commands

NAME:
   geth - the go-ethereum command line interface
   

USAGE:
   geth [global options] command [command options] [arguments...]

VERSION:
   1.11.5-stable-a38f4108

COMMANDS:
   account                계정 관리
   attach                 대화형 JavaScript 환경 시작(노드에 연결)
   console                대화형 자바스크립트 환경 시작
   db                     로우 레벨 데이터베이스 작업
   dump                   스토리지에서 특정 블록을 덤프
   dumpconfig             구성 값을 TOML 형식으로 내보내기
   dumpgenesis            제네시스 블록 JSON 구성을 stdout으로 덤프합니다.
   export                 블록체인을 파일로 내보내기
   export-preimages       preimage 데이터베이스를 RLP 스트림으로 내보내기
   import                 블록체인 파일 가져오기
   import-preimages       RLP 스트림에서 preimage 데이터베이스를 가져옵니다.
   init                   부트스트랩 s및 새 제네시스 블록 초기화
   js                     (DEPRECATED) 지정된 자바스크립트 파일을 실행합니다.
   license                라이선스 정보 표시
   makecache              이더리움 검증 캐시 생성(테스트용)
   makedag                이더리움 채굴 DAG 생성 (테스트용)
   removedb               블록체인 및 상태 데이터베이스 제거
   show-deprecated-flags  더 이상 사용되지 않는 플래그를 표시합니다.
   snapshot               스냅샷에 기반한 명령 세트
   verkle                 실험적인 버클 트리 관리 명령 세트
   version                버전 번호 인쇄
   version-check          알려진 Geth 보안 취약점을 (온라인으로) 확인합니다.
   wallet                 이더리움 프리세일 지갑을 관리합니다. 
   help, h                h 명령 목록 또는 하나의 명령에 대한 도움말을 표시합니다.

GLOBAL OPTIONS:
   ACCOUNT
   
    --allow-insecure-unlock        (default: false)
           계정 관련 RPC가 http에 노출될 때 안전하지 않은 계정 잠금 해제를 허용합니다.
   
    --keystore value              
          키 저장소의 디렉터리(기본값 = 데이터 디렉터리 내부)
   
    --lightkdf                     (default: false)
          KDF 강도를 일부 희생하여 키 파생 RAM 및 CPU 사용량을 줄입니다.
   
    --password value              
          비대화형 비밀번호 입력에 사용할 비밀번호 파일
   
    --pcscdpath value              (default: "/run/pcscd/pcscd.comm")
          스마트카드 데몬(pcscd) 소켓 파일 경로
   
    --signer value                
          외부 서명자(URL 또는 IPC 파일 경로)
   
    --unlock value                
          잠금 해제할 계정의 쉼표로 구분된 목록
   
    --usb                          (default: false)
          USB 하드웨어 지갑의 모니터링 및 관리 활성화
   
   ALIASED (deprecated)
   
    --nousb                        (default: false)
           USB 하드웨어 지갑에 대한 모니터링 및 관리를 사용하지 않습니다(사용 중단됨).
   
    --whitelist value             
          쉼표로 구분된 블록 번호와 해시 매핑을 적용합니다(<번호>=<해시>).
          (--eth.requiredblocks를 위해 더 이상 사용되지 않음)
   
   API AND CONSOLE
   
    --authrpc.addr value           (default: "localhost")
          인증된 API의 수신 주소
   
    --authrpc.jwtsecret value     
         인증된 RPC 엔드포인트에 사용할 JWT 비밀 경로
   
    --authrpc.port value           (default: 8551)
         인증된 API에 대한 수신 포트
   
    --authrpc.vhosts value         (default: "localhost")
          요청을 수락할 가상 호스트 이름의 쉼표로 구분된 목록(서버
          적용). '*' 와일드카드를 허용합니다.
   
    --exec value                  
         자바스크립트 문 실행
   
    --graphql                      (default: false)
           HTTP-RPC 서버에서 GraphQL을 활성화합니다. GraphQL은 다음 경우에만 시작할 수 있습니다.
          HTTP 서버도 시작해야 합니다.
   
    --graphql.corsdomain value    
         쉼표로 구분된 교차 오리진 요청을 수락할 도메인 목록입니다.
          (브라우저 강제 적용)
   
    --graphql.vhosts value         (default: "localhost")
          요청을 수락할 가상 호스트 이름의 쉼표로 구분된 목록(서버
          적용). '*' 와일드카드를 허용합니다.
   
    --header value, -H value      
         사용자 지정 헤더를 --remotedb 또는 geth attach를 사용할 때 RPC 서버에 전달합니다.
          콘솔. 이 플래그는 여러 번 지정할 수 있습니다.
   
    --http                         (default: false)
          HTTP-RPC 서버를 활성화합니다.
   
    --http.addr value              (default: "localhost")
           HTTP-RPC 서버 수신 인터페이스
   
    --http.api value              
          HTTP-RPC 인터페이스를 통해 제공되는 API
   
    --http.corsdomain value       
          쉼표로 구분된 교차 오리진 요청을 수락할 도메인 목록입니다.
          (브라우저 강제 적용)
   
    --http.port value              (default: 8545)
            HTTP-RPC 서버 수신 포트
   
    --http.rpcprefix value        
          JSON-RPC가 제공되는 HTTP 경로 경로 접두사. 모든 경로에 제공하려면 '/'를 사용합니다.
          경로를 사용합니다.
   
    --http.vhosts value            (default: "localhost")
           요청을 수락할 가상 호스트 이름의 쉼표로 구분된 목록(서버
          적용). '*' 와일드카드를 허용합니다.
   
    --ipcdisable                   (default: false)
         IPC-RPC 서버를 비활성화합니다.
   
    --ipcpath value               
          데이터 디렉터리 내 IPC 소켓/파이프의 파일 이름(명시적 경로는 이스케이프 처리)
   
    --jspath value                 (default: .)
          로드 스크립트`의 자바스크립트 루트 경로
   
    --preload value               
          콘솔에 미리 로드할 쉼표로 구분된 JavaScript 파일 목록
   
    --rpc.allow-unprotected-txs    (default: false)
          보호되지 않은(EIP155로 서명되지 않은) 트랜잭션을 RPC를 통해 제출할 수 있도록 허용합니다.
   
    --rpc.enabledeprecatedpersonal (default: false)
          (더 이상 사용되지 않는) 개인 네임스페이스를 활성화합니다.
   
    --rpc.evmtimeout value         (default: 5s)
         eth_call에 사용되는 타임아웃을 설정합니다(0=무한).
   
    --rpc.gascap value             (default: 50000000)
          eth_call/estimateGas에서 사용할 수 있는 가스 상한을 설정합니다(0=무한).
   
    --rpc.txfeecap value           (default: 1)
          RPC API를 통해 전송할 수 있는 트랜잭션 수수료(이더)에 대한 상한을 설정합니다(0 =
          캡 없음)
   
    --ws                           (default: false)
           WS-RPC 서버를 활성화합니다.
   
    --ws.addr value                (default: "localhost")
           WS-RPC 서버 수신 인터페이스
   
    --ws.api value                
          WS-RPC 인터페이스를 통해 제공되는 API
   
    --ws.origins value            
         웹 소켓 요청을 수락할 오리진
   
    --ws.port value                (default: 8546)
          WS-RPC 서버 수신 포트
   
    --ws.rpcprefix value          
           JSON-RPC가 제공되는 HTTP 경로 접두사. 모든 경로에서 제공하려면 '/'를 사용합니다.
   
   DEVELOPER CHAIN
   
    --dev                          (default: false)
          사전 자금이 지원된 개발자 계정이 있는 임시 권한 증명 네트워크, 마이닝
          활성화
   
    --dev.gaslimit value           (default: 11500000)
          초기 블록 가스 한도
   
    --dev.period value             (default: 0)
          개발자 모드에서 사용할 블록 기간(0 = 트랜잭션이 보류 중인 경우에만 채굴)
   
   ETHASH
   
    --ethash.cachedir value       
          이더리움 검증 캐시를 저장할 디렉터리(기본값 = 데이터 디렉터리 내부)
   
    --ethash.cachesinmem value     (default: 2)
          메모리에 보관할 최근 에타시 캐시 개수(각각 16MB)
   
    --ethash.cacheslockmmap        (default: false)
          최근 에타시 캐시의 메모리 맵을 잠급니다.
   
    --ethash.cachesondisk value    (default: 3)
         디스크에 보관할 최근 이더시 캐시 개수(각각 16MB)
   
    --ethash.dagdir value          (default: /home/robertseo/.ethash)
          이더리움 마이닝 DAG를 저장할 디렉토리
   
    --ethash.dagsinmem value       (default: 1)
           메모리에 보관할 최근 이더리움 마이닝 DAG 개수(각각 1GB 이상)
   
    --ethash.dagslockmmap          (default: false)
          최근 이더리움 마이닝 DAG에 대한 메모리 맵을 잠급니다.
   
    --ethash.dagsondisk value      (default: 2)
          디스크에 보관할 최근 이더리움 마이닝 DAG 개수(각각 1+GB)
   
   ETHEREUM
   
    --bloomfilter.size value       (default: 2048)
          pruning를 위해 블룸 필터에 할당된 메모리 크기(MB)
   
    --config value                
          TOML 구성 파일
   
    --datadir value                (default: /home/robertseo/.ethereum)
          데이터베이스 및 키 저장소의 데이터 디렉토리
   
    --datadir.ancient value       
          고대 데이터의 루트 디렉토리(기본값 = 체인데이터 내부)
   
    --datadir.minfreedisk value   
          최소 디스크 여유 공간(MB), 도달하면 자동 종료 트리거 (기본값 =
          --cache.gc를 MB로 변환, 0 = 비활성화)
   
    --db.engine value              (default: "leveldb")
          사용할 백킹 데이터베이스 구현('leveldb' 또는 'pebble')
   
    --eth.requiredblocks value    
           피어링에 필요한 쉼표로 구분된 블록 번호 대 해시 매핑
          (<번호>=<해시>)
   
    --exitwhensynced               (default: false)
         블록 동기화가 완료된 후 종료
   
    --gcmode value                 (default: "full")
          블록체인 가비지 수집 모드("전체", "아카이브")
   
    --goerli                       (default: false)
          goerli  네트워크: 사전 구성된 권한 증명 테스트 네트워크
   
    --mainnet                      (default: false)
          이더리움 메인넷
   
    --networkid value              (default: 1)
          네트워크 아이디(정수)를 명시적으로 설정합니다(테스트넷의 경우: --inkeby, --goerli,
          대신 --sepolia 사용)
   
    --override.shanghai value      (default: 0)
          번들 설정을 재정의하여 상하이 포크 타임스탬프를 수동으로 지정한다.
   
    --rinkeby                      (default: false)
          링케비 네트워크: 사전 구성된 권한 증명 테스트 네트워크
   
    --sepolia                      (default: false)
          세폴리아 네트워크: 사전 구성된 작업 증명 테스트 네트워크
   
    --snapshot                     (default: true)
          스냅샷 데이터베이스 모드를 활성화합니다(기본값 = 활성화).
   
    --syncmode value               (default: snap)
          블록체인 동기화 모드("스냅", "풀" 또는 "라이트")
   
    --txlookuplimit value          (default: 2350000)
          트랜잭션 인덱스를 유지할 최근 블록의 수 (기본값 = 1개에 1년, 0 = 전체 체인)
   
   GAS PRICE ORACLE
   
    --gpo.blocks value             (default: 20)
          가스 가격을 확인할 최근 블록 수
   
    --gpo.ignoreprice value        (default: 2)
          gpo가 트랜잭션을 무시할 가스 가격 미만
   
    --gpo.maxprice value           (default: 500000000000)
          최대 거래 우선 순위 수수료 (또는 런던 포크 이전의 가스 가격)
          권장하는 최대 트랜잭션 우선순위 수수료
   
    --gpo.percentile value         (default: 60)
          권장 가스 가격은 최근 거래 가스 가격 세트의 지정된 백분위수입니다.
          가격
   
   LIGHT CLIENT
   
    --light.egress value           (default: 0)
          라이트 클라이언트를 제공하기 위한 발신 대역폭 제한(초당 킬로바이트, 0 =
          무제한)
   
    --light.ingress value          (default: 0)
          라이트 클라이언트에 서비스를 제공하기 위한 들어오는 대역폭 제한(초당 킬로바이트, 0 =
          무제한)
   
    --light.maxpeers value         (default: 100)
          서비스할 라이트 클라이언트 또는 연결할 라이트 서버의 최대 수
   
    --light.nopruning              (default: false)
          이전 라이트 체인 데이터 pruning 비활성화
   
    --light.nosyncserve            (default: false)
          동기화 전에 라이트 클라이언트 서빙을 활성화합니다.
   
    --light.serve value            (default: 0)
          LES 요청을 처리하는 데 허용되는 최대 시간 비율(다중 스레드 처리에서는
          처리 시 100 이상의 값 허용)
   
    --ulc.fraction value           (default: 75)
          새 헤드를 발표하는 데 필요한 신뢰할 수 있는 초경량 서버의 최소 백분율
   
    --ulc.onlyannounce             (default: false)
          초경량 서버는 공지사항만 전송
   
    --ulc.servers value           
          신뢰할 수 있는 초경량 서버 목록
   
   LOGGING AND DEBUGGING
   
    --fakepow                      (default: false)
          작업 증명 검증을 비활성화합니다.
   
    --log.backtrace value         
          특정 로깅 문에서 스택 추적을 요청합니다(예: "block.go:271").
   
    --log.debug                    (default: false)
          호출 사이트 위치(파일 및 회선 번호)와 함께 로그 메시지를 추가합니다.
   
    --log.file value              
          로그를 파일에 기록합니다.
   
    --log.json                     (default: false)
          JSON으로 로그 형식 지정
   
    --nocompaction                 (default: false)
          가져오기 후 DB 압축을 비활성화합니다.
   
    --pprof                        (default: false)
          pprof HTTP 서버를 활성화합니다.
   
    --pprof.addr value             (default: "127.0.0.1")
          pprof HTTP 서버 수신 인터페이스
   
    --pprof.blockprofilerate value (default: 0)
          주어진 비율로 블록 프로파일링을 켭니다.
   
    --pprof.cpuprofile value      
          주어진 파일에 CPU 프로파일 쓰기
   
    --pprof.memprofilerate value   (default: 524288)
          주어진 속도로 메모리 프로파일링을 켭니다.
   
    --pprof.port value             (default: 6060)
          pprof HTTP 서버 수신 포트
   
    --remotedb value              
          원격 데이터베이스의 URL
   
    --trace value                 
          지정된 파일에 실행 추적을 기록합니다.
   
    --verbosity value              (default: 3)
          로깅 상세도: 0=무음, 1=오류, 2=경고, 3=정보, 4=디버그, 5=디테일
   
    --vmodule value               
          모듈별 상세도: 쉼표로 구분된 <패턴>=<레벨> 목록 (예.
          eth/*=5,P2P=4)

   
   METRICS AND STATS
   
    --ethstats value              
          ethstats 서비스의 리포팅 URL(노드명:비밀@호스트:포트)
   
    --metrics                      (default: false)
          메트릭 수집 및 보고 사용
   
    --metrics.addr value          
          독립형 메트릭 HTTP 서버 수신 인터페이스를 사용하도록 설정합니다.
   
    --metrics.expensive            (default: false)
          고가의 메트릭 수집 및 보고 사용
   
    --metrics.influxdb             (default: false)
          외부 InfluxDB 데이터베이스로 메트릭 내보내기/푸시 활성화
   
    --metrics.influxdb.bucket value (default: "geth")
          보고된 메트릭을 푸시할 InfluxDB 버킷 이름(v2만 해당)
   
    --metrics.influxdb.database value (default: "geth")
          보고된 메트릭을 푸시할 InfluxDB 데이터베이스 이름
   
    --metrics.influxdb.endpoint value (default: "http://localhost:8086")
          메트릭을 보고할 InfluxDB API 엔드포인트
   
    --metrics.influxdb.organization value (default: "geth")
          InfluxDB 조직 이름(v2만 해당)
   
    --metrics.influxdb.password value (default: "test")
          데이터베이스에 대한 액세스 권한을 부여하기 위한 비밀번호
   
    --metrics.influxdb.tags value  (default: "host=localhost")
          모든 측정값에 첨부된 쉼표로 구분된 InfluxDB 태그(키/값)
   
    --metrics.influxdb.token value (default: "test")
          데이터베이스에 대한 액세스 권한을 부여하기 위한 토큰(v2만 해당)
   
    --metrics.influxdb.username value (default: "test")
          데이터베이스에 대한 액세스 권한을 부여할 사용자 이름
   
    --metrics.influxdbv2           (default: false)
          메트릭 내보내기/외부 InfluxDB v2 데이터베이스로 푸시 활성화
   
    --metrics.port value           (default: 6060)
          메트릭 HTTP 서버 수신 포트.
          서버를 시작하려면 --metrics.addr을 설정해야 합니다.
          로 설정해야 합니다.
   
   MINER
   
    --mine                         (default: false)
           채굴 활성화
   
    --miner.etherbase value       
          블록 채굴 보상을 위한 0x prefixed 공개 주소
   
    --miner.extradata value       
          마이너가 설정한 추가 데이터를 차단합니다(기본값 = 클라이언트 버전).
   
    --miner.gaslimit value         (default: 30000000)
          채굴된 블록의 목표 가스 상한
   
    --miner.gasprice value         (default: 0)
           트랜잭션 채굴을 위한 최소 가스 가격
   
    --miner.newpayload-timeout value (default: 2s)
          새 페이로드를 생성하는 데 허용되는 최대 시간 지정
   
    --miner.notify value          
          쉼표로 구분된 HTTP URL 목록으로 새 작업 보상 패키지를 알립니다.
   
    --miner.notify.full            (default: false)
          작업 보상 대신 보류 중인 블록 헤더로 알립니다.
   
    --miner.noverify               (default: false)
           원격 실링 확인 비활성화
   
    --miner.recommit value         (default: 2s)
          채굴 중인 블록을 다시 생성하는 시간 간격
   
    --miner.threads value          (default: 0)
          마이닝에 사용할 CPU 스레드 수
   
   MISC
   
    --help, -h                     (default: false)
         도움말 표시
   
    --synctarget value            
          동기화 대상(개발 기능)으로 헥스 인코딩된 블록-rlp를 포함할 파일(개발 기능)
   
    --version, -v                  (default: false)
           버전 인쇄
   
   NETWORKING
   
    --bootnodes value             
          P2P 검색 부트스트랩을 위한 쉼표로 구분된 에노드 URL
   
    --discovery.dns value         
           DNS 검색 진입점을 설정합니다(DNS를 비활성화하려면 "" 사용).
   
    --discovery.port value         (default: 30303)
           P2P 검색에 사용자 지정 UDP 포트 사용
   
    --identity value              
           custom 노드 이름
   
    --maxpeers value               (default: 50)
          최대 네트워크 피어 수(0으로 설정하면 네트워크 사용 안 함)
   
    --maxpendpeers value           (default: 0)
          보류 중인 최대 연결 시도 횟수(0으로 설정하면 기본값 사용)
   
    --nat value                    (default: "any")
          NAT 포트 매핑 메커니즘(any|none|upnp|pmp|pmp:<IP>|extip:<IP>)
   
    --netrestrict value           
          네트워크 통신을 지정된 IP 네트워크로 제한합니다(CIDR 마스크).
   
    --nodekey value               
          P2P 노드 키 파일
   
    --nodekeyhex value            
         P2P 노드 키를 헥스로 변환(테스트용)
   
    --nodiscover                   (default: false)
         피어 검색 메커니즘을 비활성화합니다(수동 피어 추가).
   
    --port value                   (default: 30303)
          네트워크 수신 포트
   
    --v5disc                       (default: false)
          실험적 RLPx V5(Topic Discovery) 메커니즘을 사용하도록 설정합니다.
   
   PERFORMANCE TUNING
   
    --cache value                  (default: 1024)
          내부 캐싱에 할당된 메모리 메가바이트 (기본값 = 4096 메인넷 풀
          노드, 128 라이트 모드)
   
    --cache.blocklogs value        (default: 32)
          필터링을 위한 로그 캐시의 크기(블록 수)
   
    --cache.database value         (default: 50)
          데이터베이스 io에 사용할 캐시 메모리 허용량의 백분율
   
    --cache.gc value               (default: 25)
          trie pruning에 사용할 캐시 메모리 허용량의 백분율(기본값 = 25% 전체
          모드, 0% 아카이브 모드)

   
    --cache.noprefetch             (default: false)
          블록 가져오기 중 휴리스틱 상태 프리페치를 비활성화합니다(CPU 및 디스크 IO 감소, 데이터 대기 시간 증가).
   
    --cache.preimages              (default: false)
          trie 키의 SHA3/keccak preimages 기록을 활성화합니다.
   
    --cache.snapshot value         (default: 10)
          스냅샷 캐싱에 사용할 캐시 메모리 허용량의 백분율(기본값 = 10%
          full 모드, 20% archive 모드)
   
    --cache.trie value             (default: 15)
          트라이 캐싱에 사용할 캐시 메모리 허용량의 백분율(기본값 = 15% full 모드, 30% archive 모드)
   
    --cache.trie.journal value     (default: "triecache")
           노드 재시작 후에도 trie cache가 살아남을 디스크 저널 디렉토리
   
    --cache.trie.rejournal value   (default: 1h0m0s)
           trie cache 저널을 다시 생성할 시간 간격
   
    --fdlimit value                (default: 0)
           open file descriptor 리소스 제한을 올립니다(기본값 = 시스템 fd 제한).
   
   TRANSACTION POOL
   
    --txpool.accountqueue value    (default: 64)
          계정당 허용되는 비실행 트랜잭션 슬롯의 최대 개수
   
    --txpool.accountslots value    (default: 16)
          계정당 보장되는 실행 가능한 트랜잭션 슬롯의 최소 개수
   
    --txpool.globalqueue value     (default: 1024)
          모든 계정에 대한 비실행 트랜잭션 슬롯의 최대 개수
   
    --txpool.globalslots value     (default: 5120)
          모든 계정에 대한 최대 실행 트랜잭션 슬롯 수
   
    --txpool.journal value         (default: "transactions.rlp")
           노드 재시작 후에도 로컬 트랜잭션이 살아남을 수 있는 디스크 저널
   
    --txpool.lifetime value        (default: 3h0m0s)
          실행 불가능한 트랜잭션이 큐에 대기하는 최대 시간
   
    --txpool.locals value         
          로컬로 취급할 계정을 쉼표로 구분(no flush, priority inclusion)
   
    --txpool.nolocals              (default: false)
           로컬로 제출된 트랜잭션에 대해 가격 면제를 비활성화합니다.
   
    --txpool.pricebump value       (default: 10)
          이미 존재하는 트랜잭션을 대체할 price bump 비율
   
    --txpool.pricelimit value      (default: 1)
           풀에 수락하기 위해 적용할 최소 가스 가격 한도
   
    --txpool.rejournal value       (default: 1h0m0s)
          로컬 트랜잭션 저널을 재생성할 시간 간격
   
   VIRTUAL MACHINE
   
    --vmdebug                      (default: false)
          VM 및 컨트랙트 디버깅에 유용한 정보를 기록합니다.
   

COPYRIGHT:
   Copyright 2013-2023 The go-ethereum Authors

 

 

 

 

 

 

 

출처 : https://geth.ethereum.org/docs/fundamentals/command-line-options

 

Command-line Options | go-ethereum

A list of commands for Geth

geth.ethereum.org

 

'Blockchain > Ethereum' 카테고리의 다른 글

INTRO TO ETHER  (2) 2023.05.06
INTRO TO ETHEREUM  (0) 2023.05.04
Ethereum Development with Go (2)  (0) 2023.03.30
Ethereum Development with Go (1)  (0) 2023.03.30
Geth의 실행파일과 디렉토리와 파일 구조  (0) 2023.03.02

관련글 더보기