---
title: "Execute validadores e nós RPC com erpc validator e erpc rpc"
description: "erpc rpc executa nós RPC em 18 chains e erpc validator executa validadores em 13, com os mesmos verbos em todas as chains e sem precisar de conta ERPC."
canonical: "https://erpc.global/pt/doc/erpc-cli/nodes/"
locale: "pt"
---

# Execute validadores e nós RPC com erpc validator e erpc rpc

O `erpc rpc` executa nós RPC em 18 chains e o `erpc validator` executa validadores em 13 delas. Todas as chains usam os mesmos verbos, e esses comandos de ciclo de vida de nós são gratuitos e não precisam de conta.

Esta página descreve o ERPC CLI `v0.1.0-rc.4`, uma versão de pré-lançamento. A aceitação em hosts reais ainda está em andamento: [Situação de cada chain](https://erpc.global/pt/doc/erpc-cli/nodes/#situação-de-cada-chain) e o guia de cada chain informam a situação de cada uma.

## Implantar um nó

O `init` prepara um servidor e o `deploy` instala e inicia o nó. Um nó RPC do Ethereum parte de um servidor Ubuntu sem nada instalado, versão 24.04 ou posterior:

```bash
# check the server, pin the client releases, store the node in 1Password
erpc rpc --chain ethereum -n mainnet --name eth1 init --host <address> --vault <vault id> --ssh-key ~/.ssh/id_ed25519.pub
# install, fetch a snapshot, apply the firewall, start
erpc rpc --chain ethereum -n mainnet --name eth1 deploy --ssh-key ~/.ssh/id_ed25519.pub
# both layers, sync and head
erpc rpc --chain ethereum -n mainnet --name eth1 status --ssh-key ~/.ssh/id_ed25519.pub
```

Algumas chains precisam de mais coisas prontas antes, e o guia de cada chain diz o quê. Um novo validador ou nó RPC da Solana precisa de três sistemas de arquivos montados e das suas chaves já no 1Password.

## Escolher a chain, a rede e o host

Escolha a chain com `--chain`, `ERPC_CHAIN` ou a configuração `default_chain`, a rede com `-n` e o host com `--name`. Uma alteração na mainnet exige `--chain` escrito na linha de comando.

- `erpc validator` (alias `v`), `erpc rpc` (alias `r`) e `erpc node` (alias `n`, para Avalanche e Sui) executam os comandos de nó.
- Execute um grupo de comandos sem verbo (`erpc validator`) para listar os seus verbos.
- Nos comandos de nó, `--json` tem de vir antes do comando: `erpc --json rpc …`.

## Comandos que funcionam em todas as chains

| Verbo | O que faz |
| --- | --- |
| `init` | Verifica o servidor, fixa as versões do cliente, armazena o nó no 1Password e prepara o host |
| `deploy` | Instala ou compila o cliente, baixa um snapshot, aplica o firewall onde o erpc tem um para esse nó e inicia o nó |
| `list`, `status`, `logs` | Inventário, saúde e journal |
| `start`, `stop`, `restart` | Controle do serviço, na ordem certa para nós com várias camadas |
| `update` | Muda para outra versão do cliente; a política de rollback depende do cliente |
| `update-config` | Aplica mudanças de configuração e de acesso usando as regras de reinício da chain |
| `plan` | Mostra o plano de implantação ou de configuração da chain |
| `destroy` | Para ou desativa os serviços próprios; a retenção de dados, chaves e firewall segue o guia de operações da chain |

Um validador da Solana registrado no backend solv tem apenas `init`, `deploy`, `list` e `status` desses verbos.

## Chains e guias

| Chain | Nó RPC | Validador | Redes | Guias |
| --- | --- | --- | --- | --- |
| Solana | `erpc rpc --chain solana` | `erpc validator --chain solana` | mainnet, testnet | [Operações](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/solana-native.md), [Registro](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/solana-registration.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/solana.md) |
| Ethereum | `erpc rpc --chain eth` (mainnet, `--type full` ou `archive`) | `erpc validator --chain eth` (Hoodi, mainnet) | mainnet, Hoodi | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/ethereum-rpc.md), [Validador](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/ethereum-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/ethereum.md) |
| Base | `erpc rpc --chain base` | | mainnet, sepolia | [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/base.md) |
| Avalanche | `erpc rpc --chain avax` (também `erpc node`) | `erpc validator --chain avax` | mainnet, fuji | [Operações](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/avalanche.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/avalanche.md) |
| Bitcoin | `erpc rpc --chain bitcoin` | | mainnet, testnet4, signet, regtest | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/bitcoin-rpc.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/bitcoin.md) |
| Polygon | `erpc rpc --chain polygon` | `erpc validator --chain polygon` | mainnet, amoy | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/crates/erpc-chain-polygon/templates/README.md), [Validador](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/polygon-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/polygon.md) |
| BNB Chain | `erpc rpc --chain bsc` | `erpc validator --chain bsc` | mainnet, chapel | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/bsc-rpc.md), [Validador](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/bsc-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/bsc.md) |
| Kaia | `erpc rpc --chain kaia` | `erpc validator --chain kaia` | mainnet, kairos | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/kaia-rpc.md), [Core cell](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/kaia-core-cell.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/kaia.md) |
| Arbitrum | `erpc rpc --chain arbitrum` (mainnet, nova, sepolia) | `erpc validator --chain arbitrum` (somente a mainnet Arbitrum One) | mainnet, nova, sepolia | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/nitro-rpc.md), [Validador](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/arbitrum-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/arbitrum.md) |
| Optimism | `erpc rpc --chain optimism` | | mainnet, sepolia | [Operações](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/op-follower-rpc.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/optimism.md) |
| Hyperliquid | `erpc rpc --chain hyperliquid` | `erpc validator --chain hyperliquid` | mainnet, testnet | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/hyperliquid-rpc.md), [Validador](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/hyperliquid-validator.md), [AQA](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/hyperliquid-aqa.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/hyperliquid.md) |
| Monad | `erpc rpc --chain monad` | `erpc validator --chain monad` | mainnet, testnet | [Operações](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/monad-node.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/monad.md) |
| TRON | `erpc rpc --chain tron` | `erpc validator --chain tron` | mainnet, nile | [Operações](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/crates/erpc-chain-tron/templates/README.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/tron.md) |
| Sui | `erpc rpc --chain sui` (também `erpc node`) | `erpc validator --chain sui` | mainnet, testnet | [Operações](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/crates/erpc-chain-sui/templates/README.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/sui.md) |
| NEAR | `erpc rpc --chain near` | `erpc validator --chain near` | mainnet, testnet | [RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/near-rpc.md), [Validador](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/near-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/near.md) |
| Arc | `erpc rpc --chain arc` | | mainnet, testnet | [Runtime RPC](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/arc-runtime.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/arc.md) |
| Robinhood Chain | `erpc rpc --chain robinhood` | `erpc validator --chain robinhood` | mainnet, testnet | [Admissão](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/robinhood-admission.md), [Validador](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/robinhood-defensive-validator.md), [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/robinhood.md) |
| Soneium | `erpc rpc --chain soneium` | | mainnet, minato | [Chain](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/soneium.md) |

[Execução de nós](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/nodes.md) traz os clientes de cada chain.

## O que o erpc precisa no servidor

- O erpc faz login via SSH como um usuário sudo (`ubuntu` por padrão) com a sua chave, a partir do agente SSH do 1Password ou de `SSH_AUTH_SOCK`, e fixa a chave de host na primeira vez.
- O servidor precisa de `/usr/bin/python3` e de um login cujo `sudo` não peça senha.
- `/opt` já precisa ser um diretório real pertencente ao root, em que nem o seu grupo nem outros usuários possam gravar, como o Ubuntu o entrega; o erpc não o cria. `/opt/erpc` e os diretórios `runs` e `uploads` que o erpc cria nele seguem a mesma regra, e nenhum deles pode ser um link simbólico: para mantê-los em outro volume, monte o volume em `/opt/erpc`. Para um nó, o sistema de arquivos que contém `/opt/erpc` também precisa manter ACLs POSIX (ext4 e XFS mantêm por padrão); caso contrário, o erpc interrompe a execução.
- Um novo host da Solana precisa de Ubuntu 24.04, systemd 255 e x86-64 com os recursos de CPU AVX2 e SHA. A ERPC exige pelo menos 32 threads lógicas e 480 GiB de memória utilizável para um nó RPC da Solana, 24 threads e 300 GiB para um validador de mainnet, e 24 threads e 120 GiB para um validador de testnet.

## Como o erpc executa um nó

- A maioria das chains executa o cliente com um usuário próprio que não pode fazer login, verifica cada versão com um checksum fixado antes de instalá-la e aplica um firewall nftables com um rollback com temporizador que uma nova conexão de gerenciamento precisa confirmar. Nem todas fazem isso: um novo nó da Solana é compilado no servidor a partir de um commit fixado do código-fonte, e um nó da Solana registrado no backend solv roda como um usuário com login e sudo sem senha, e baixa algumas ferramentas sem checksum.
- O erpc não aplica nenhum firewall a validadores da Solana no backend solv, a validadores do Ethereum nem a nós Bitcoin, então filtrar o tráfego desses hosts fica por sua conta.
- Mantenha uma forma independente de acessar o host durante mudanças de rede.
- Enquanto o diretório drop-in de um serviço protegido contiver outro arquivo, como um `override.conf` do `systemctl edit`, a etapa do firewall recusa e não altera nada. Tire o seu drop-in do diretório e execute o comando novamente.
- Os segredos enviados da sua máquina chegam ao servidor pela entrada padrão, nunca por uma linha de comando.
- Um novo validador da Solana sincroniza com uma identidade separada e com a votação desativada. `deploy --activate-validator` muda um host saudável para a sua identidade registrada original depois das verificações de registro público e de BLS nativo. `--backend solv` retoma um host solv existente e não pode criar um novo.
- Não restaure o signer de um validador do Ethereum a partir de um backup: mova um signer com `erpc v --chain eth migrate`.

[Login e chaves](https://erpc.global/pt/doc/erpc-cli/sign-in-and-keys/#onde-ficam-as-chaves-dos-nós) mostra quais chaves cada nó guarda no 1Password e no host.

## Situação de cada chain

Para todas as chains da tabela, a implementação é verificada offline, e a aceitação ao vivo em hosts reais fica adiada. A verificação de roteamento de comandos RPC exercita todos os doze verbos comuns em todas as dezoito chains, e nenhuma dessas verificações executa um nó em um host real. A página de cada chain no [mapa das fontes das chains](https://github.com/elsoul/erpc-cli/blob/v0.1.0-rc.4/docs/chains/README.md) diz em que situação ela está.
