Crust Wiki

Crust Wiki

  • 文档
  • Shadow
  • 贡献
  • Languages icon中文
    • English
    • Help Translate

›Node Guide

概览

  • Crust 概述
  • Crust Grants
  • Crust 生态成长计划
  • CRU 认领
  • 锁定的CRU 认领
  • 锁定的CRU 解锁
  • Bridge

    • Ethereum Bridge
    • Elrond Bridge
  • Crust 钱包
  • Crust 术语
  • CRU18 担保
  • 参数表
  • 贡献

学习

  • 账户
  • Crust 通证
  • 新增绑定
  • 担保人
  • 验证人
  • GPoS
  • sWorker

    • 概览
    • 入网
    • 工作量
  • 去中心化存储市场
  • 存储商户
  • 链上身份
  • 链上治理指南

构建

  • Builder's Portal
  • Crust Storage 101
  • Basics

    • Developer faucet
    • Crust Rocky Network
    • 代码示例:使用Crust存储文件
    • Store file with Crust IPFS Pinning Service API

    Crosschain Storage Solution

    • 基于XCMP的跨链存储解决方案
    • 基于平行链的跨链存储解决方案
    • 基于原生IPFS的跨链存储解决方案
    • 基于智能合约的跨链存储解决方案

    Integration Guide

    • DApp的部署和运行
    • NFT数据存储
    • 内容存储与分发

    Node Guide

    • Crust 节点
    • Crust Storage Manager

    Toolkits

    • Crust Pinner Github Action
    • Crust Pinner NPM Package
    • IPFS W3Auth Gateway
    • IPFS W3Auth Pinning Service

基于EVM构建

  • Overview
  • Build With EVM 101
  • Chains

    • Ethereum
    • Optimism
    • Arbitrum
    • zkSync

    Toolkits

    • SDK

基于Algorand构建

  • Overview
  • Build With Algorand 101
  • Algorand applications

基于TON构建

  • Overview
  • Build With TON 101
  • TON applications

节点

  • 节点概要
  • 节点硬件指南
  • Owner 节点
  • Member 节点
  • Isolation 节点
  • 验证人指南
  • 担保人指南
  • sWorker 版本
  • 节点权益
  • 配置 QoS

存储

  • 概览
  • 存储用户指南
  • 存储商户指南
  • 存储订单清算指南
  • 存储市场权益
  • 使用Crust Apps 存储的问题

Q&A

  • 基础知识
  • 验证人和候选人
  • 担保人
  • 奖励和惩罚
  • 节点基本问题
  • Member节点相关
  • 组相关
  • 修复不稳定链
  • 应用
  • EPID & ECDSA
  • 其它
Translate

Crust 节点

Crust Node program is a set of integrated scripts to facilitate node operation. Crust Node program is open source on Github. You can refer to it for more technical details, and customize or create your own node scripts from there, to ease your own node operation.

1 System commands

1.1 Help

  • Command
sudo crust help
  • Instance

start

1.2 Version

Version information includes node network, type and version, sworker details, docker image ID and other information

  • Command
sudo crust version
  • Instance start

1.3 Generate session key

  • Command
sudo crust tools rotate-keys
  • Instance

start

2 Configuration command

2.1 Set up and generate configuration files

Configure node name, node type, account backup file and password

  • Command
sudo crust config set
  • Instance start

2.2 Generate configuration files

  • Command
sudo crust config generate

Manually modified the /opt/crust/crust-node/config.yaml configuration file

sudo vi /opt/crust/crust-node/config.yaml

Generate configuration files

start

2.3 Set up to connect to other chains

Set up to connect to other chains,default is "ws://127.0.0.1:19944"

  • Command
sudo crust config conn-chain {ws}
  • Instance Set up a chain connected to "ws://7.7.7.7:19944"
sudo crust config conn-chain ws://7.7.7.7:19944

start

2.4 Set the P2P port of the chain

  • Command
sudo crust config chain-port {port}
  • Instance Change the default port 30888 of the chain to 30889
sudo crust config chain-port 30889

start

2.5 Set the attestation mode of the sworker

  • Command
sudo crust config attestation-mode {epid/ecdsa}
  • Instance Change the attestation-mode to ecdsa
sudo crust config attestation-mode ecdsa

start

2.6 Show configuration file

  • Command
sudo crust config show
  • Instance start

3 Control commands

3.1 Start Crust service

  • Command
sudo crust start {chain|api|sworker|smanager|ipfs}
  • Instance

Start all Crust service

sudo crust start

Start one Crust service

sudo crust start smanager

start

sudo crust start api

start

3.2 Stop Crust service

  • Command
sudo crust stop {chain|api|sworker|smanager|ipfs}
  • Instance

Stop all Crust service start

Stop one Crust service

sudo crust stop api

start

sudo crust stop smanager

start

3.3 Reload Crust service

  • Command
sudo crust reload {chain|api|sworker|smanager|ipfs}
  • Instance

Reload all Crust service

start

Reload one Crust service

start start

4 Monitor commands

4.1 Query Crust node service status

  • Command
sudo crust status {chain|api|sworker|smanager|ipfs}

Includes three status: running, stop, and exited

StatusDescription
runningService is running normally
stopService is stop
exitedService exits abnormally, query log analysis
  • Instance

Query Crust node's all service status start Query Crust node's one service status start

4.2 Query node logs

Track service logs, ctrl-c to exit. use 'crust logs help' for more details

  • Command
sudo crust logs {chain|api|sworker|sworker-a|sworker-b|smanager|ipfs}
  • Instance

Query the latest 5 log lines of the node sworker service

sudo crust logs --tail 5 sworker

start

4.3 Disk details

Note:

  1. Base data folder is used to store chain and db, 2TB SSD is recommended, you can mount SSD on /opt/crust/data
  2. Please mount the hard disk to storage folders, paths is from: /opt/crust/disks/1 ~ /opt/crust/disks/128
  3. SRD will not use all the space, it will reserve 50G of space
  • Command
sudo crust tools space-info
  • Instance

The disk has been successfully mounted in the three directories /opt/crust/data/disks/2, /opt/crust/data/disks/4, /opt/crust/data/disks/33 start

5 Upgrade commands

5.1 Upgrade docker image

  • Command
sudo crust tools upgrade-image {chain|api|smanager|ipfs|c-gen|sworker}
  • Instance

Upgrade the chain's docker image

sudo crust tools upgrade-image chain

Upgrade the IPFS docker image

sudo crust tools upgrade-image ipfs

5.2 SWorker's AB upgrade

  • Command
sudo crust tools sworker-ab-upgrade {code}

The parameter code is the only mrenclave code

  • Instance
sudo crust tools sworker-ab-upgrade 032ceedd27918ddb4807c78ec5734a8a49878a2e7a7001381b90eae8d1d1c093

start

6 SWorker commands

6.1 Change sworker's srd capacity

  • Command
sudo crust tools change-srd {number}
  • Instance

Add 1000Gb srd capacity start

Decrease 500Gb srd capacity start

6.2 Query storage status

  • Command
sudo crust tools workload

File parameter description

ParameterDescription
files-lostLost files
files-pendingPending files
files-vaildValid files

Srd parameter description

ParameterDescription
srd_completeCompleted srd capacity, unit Gb
srd_remaining_taskRemaining srd tasks
disk_available_for_srdDisk capacity of currently available srd
disk_availableDisk capacity currently available
disk_volumeTotal disk capacity
sys_disk_availableAvailable capacity of system disk
srd_detailUsage details of each storage filder
  • Instance start

6.3 Query file information

  • Command
sudo crust tools file-info {all/valid/lost/pending/{cid}} {output-file}
  • Instance

Query all order information start Query the order information in pending start

6.4 Delete file

  • Command
sudo crust tools delete-file {cid}
  • Instance

Delete the file whose cid is QmaK1Rbc4AYtDJoTLgZQNZx4JpDPYrN2DW269i54eA5Phk

sudo crust tools delete-file QmaK1Rbc4AYtDJoTLgZQNZx4JpDPYrN2DW269i54eA5Phk

start

6.5 Set sworker log level

  • Command
sudo crust tools set-sworker-debug {true|false}
  • Instance

Enable DEBUG log start Disable DEBUG log start

7 Other commands

7.1 IPFS command

  • Command
sudo crust tools ipfs {…}
  • Instance

View the contents of a file

sudo crust tools ipfs cat QmddN7QgY7RHtsGN8bnUqWJq4VpMam2HXrRDafe5pBt3eq

start

7.2 Watch compose

  • Command
sudo crust tools watch-chain

Generate a "watch-chain.yaml" configuration file in the current directory, and use docker-compose to start the watcher node

  • Instance Start:
sudo docker-compose -f watch-chain.yaml up -d

Monitor:

sudo docker logs crust-watch

8 Configure external source chain

The use of an external chain can make the member node more lightweight, and it can also make multiple members connect to the same watch chain node, thereby avoiding repeated chain synchronization to a certain extent. However, due to the single point of failure in this method, that is to say, the failure of the external source chain node will cause multiple members to fail to report the workload, so please try to use a better network device or cloud server to start the external source chain. At the same time, do not connect too many members to the same chain. It is recommended to have less than 10 members, otherwise the workload may not be reported due to congested transactions.

8.1 Configure watch chain service

a Machine selection

The requirements of the Watch machine are as follows:

  • The machine running the watch does not require SGX
  • 500GB solid state drive
  • It is recommended to use a stable network with public IP and fixed ports, which will directly affect the workload report of member nodes
  • Install Crust node
  • Recommend cloud server

b Generate docker compose file

sudo crust tools watch-chain

Generate a "watch-chain.yaml" configuration file in the current directory

c Start watch chain

Start:

sudo docker-compose -f watch-chain.yaml up -d

Monitor:

sudo docker logs crust-watch

d Matters needing attention

  • You can edit the "watch-chain.yaml" file to customize the watcher node
  • The watcher node can provide ws and rpc services, the default port is 30888, 19933, 19944, pay attention to open ports

8.2 Member node use external source chain

Set up to connect to other chains,default is "ws://127.0.0.1:19944"

  • Command
sudo crust config conn-chain {ws}
  • Instance

Set up a chain connected to "ws://7.7.7.7:19944"

sudo crust config conn-chain ws://7.7.7.7:19944

start

If it is a node that is already running, the node needs to be restarted for the configuration of the external source chain to take effect

9 Control SGX driver automatic installation

  • Disable automatic installation of SGX driver

Execute the following commands before starting the node:

sudo mv /opt/crust/crust-node/scripts/install_sgx_driver.sh /opt/crust/crust-node/scripts/install_sgx_driveroff.sh
  • Enable automatic installation of SGX driver

Execute the following commands before starting the node:

sudo mv /opt/crust/crust-node/scripts/install_sgx_driveroff.sh /opt/crust/crust-node/scripts/install_sgx_driver.sh
← 内容存储与分发Crust Storage Manager →
  • 1 System commands
    • 1.1 Help
    • 1.2 Version
    • 1.3 Generate session key
  • 2 Configuration command
    • 2.1 Set up and generate configuration files
    • 2.2 Generate configuration files
    • 2.3 Set up to connect to other chains
    • 2.4 Set the P2P port of the chain
    • 2.5 Set the attestation mode of the sworker
    • 2.6 Show configuration file
  • 3 Control commands
    • 3.1 Start Crust service
    • 3.2 Stop Crust service
    • 3.3 Reload Crust service
  • 4 Monitor commands
    • 4.1 Query Crust node service status
    • 4.2 Query node logs
    • 4.3 Disk details
  • 5 Upgrade commands
    • 5.1 Upgrade docker image
    • 5.2 SWorker's AB upgrade
  • 6 SWorker commands
    • 6.1 Change sworker's srd capacity
    • 6.2 Query storage status
    • 6.3 Query file information
    • 6.4 Delete file
    • 6.5 Set sworker log level
  • 7 Other commands
    • 7.1 IPFS command
    • 7.2 Watch compose
  • 8 Configure external source chain
    • 8.1 Configure watch chain service
    • 8.2 Member node use external source chain
  • 9 Control SGX driver automatic installation
Docs
Getting StartedCRU ClaimsWebsite Hosting with CrustNFT Data Storage with Crust
Community
DiscordTwitterTelegram
More
CooperationGitHub
Copyright © 2025 Crust Network