# Update Node to 9.1.1

> UPDATED: 9/5/2024

| Binaries | Version | Mainnet |
| -------- | ------- | ------- |
| Node     | 9.1.1   | ✅       |
| CLI      | 9.2.1.0 | ✅       |

{% hint style="info" %}
Credits to <img src="https://earncoinpool.com/images/coin_v3.png" alt="" data-size="line"> [Earn Coin Pool](https://earncoinpool.com/) for documenting the procedure.
{% endhint %}

{% hint style="danger" %}
Please note after updating it will take up to 6 hours maybe more to sync block replay.
{% endhint %}

## Step 1 - GHC and Cabal Check&#x20;

Make sure you are using ghc 8.10.7 and cabal 3.8.1.0. If already installed you can skip this step.

```
ghcup upgrade
ghcup install ghc 8.10.7
ghcup set ghc 8.10.7
ghcup install cabal 3.8.1.0
ghcup set cabal 3.8.1.0

ghc --version
cabal --version
```

## Step 2 - Backup your Configuration file:&#x20;

```
cd $NODE_HOME
cp mainnet-config.json mainnet-config.bak
mv mainnet-conway-genesis.json mainnet-conway-genesis.bak
```

## Step 3 - Download the new mainnet conway genesis file:

```
cd $NODE_HOME
wget https://book.play.dev.cardano.org/environments/mainnet/conway-genesis.json
mv conway-genesis.json mainnet-conway-genesis.json
```

## Step 4 - Update Config file:

```
cd $NODE_HOME
nano mainnet-config.json
```

Edit or add THESE TWO LINES to the following:

```
"ConwayGenesisFile": "mainnet-conway-genesis.json",
"ConwayGenesisHash": "15a199f895e461ec0ffc6dd4e4028af28a492ab4e806d39cb674c88f7643ef62",
```

## Step 5 - Download latest cardano-node git and checkout latest branch&#x20;

```
cd $HOME/git

git clone https://github.com/IntersectMBO/cardano-node.git cardano-node2

cd cardano-node2/

cabal update

git fetch --all --recurse-submodules --tags

git checkout tags/9.1.1
```

## Step 6 - Build the node

If you have tmux, it is recommended to open tmux by typing `tmux` this will allow to run these commands to build the node without terminal timing out.

```
cd $HOME/git/cardano-node2

cabal configure -O0 -w ghc-8.10.7

cabal build cardano-node
```

## Step 7 - Check cardano-node that the build was successful

```
$(find $HOME/git/cardano-node2/dist-newstyle/build -type f -name "cardano-node") version
```

✅if 9.1.1 - move to next step

## Step 8 - Download latest cardano-cli git and checkout latest branch

```
cd $HOME/git/cardano-node2/

git clone https://github.com/IntersectMBO/cardano-cli.git cardano-cli

cd cardano-cli/

cabal update

git fetch --all --recurse-submodules --tags

git checkout tags/cardano-cli-9.2.1.0
```

## Step 9 - Build the CLI

```
cd $HOME/git/cardano-node2/cardano-cli

cabal configure -O0 -w ghc-8.10.7

cabal build cardano-cli
```

## Step 10 - Check cardano-cli build was successful

```
$(find $HOME/git/cardano-node2/cardano-cli -type f -name "cardano-cli") version
```

✅if 9.2.1.0 - and you were using tmux, close tmux by typing `exit`

## Step 11 - Shut down the node and move the binaries to your bin

If on 9.1.1 node and 9.2.1.0 cli, then shut down the node and move the binaries to your bin

```
sudo systemctl stop cardano-node
```

```
sudo cp $(find $HOME/git/cardano-node2/cardano-cli/dist-newstyle/build -type f -name "cardano-cli") /usr/local/bin/cardano-cli

sudo cp $(find $HOME/git/cardano-node2/dist-newstyle/build -type f -name "cardano-node") /usr/local/bin/cardano-node
```

## Step 12 - Check that successful version upgrades then start back up Cardano node&#x20;

```
cardano-node version
cardano-cli version
```

✅If on 9.1.1 node and 9.2.1.0 cli move to next step

## Step 13 - Update and restart your instance

```
sudo apt-get update && sudo apt-get upgrade -y && sudo reboot
```

{% hint style="success" %}
Block replay will now start after reboot. This could take up to 6 hours. To check progress run:\
`journalctl -fu cardano-node`\
\
Use Ctrl+C command to exit the real time view.
{% endhint %}

## Step 14 - Clean up&#x20;

```
cd $HOME/git/

rm -rf cardano-node-old

mv cardano-node cardano-node-old

mv cardano-node2 cardano-node
```

## Additional Steps

Copy the cardano-cli binaries to your air gap machine. You can copy from your /usr/local/bin or from the new build to a USB drive

Check to see if you need to update other programs like CNCLI\
<https://github.com/cardano-community/cncli>

### Congratulations you did it!

### Additional Resources:

{% embed url="<https://github.com/IntersectMBO/cardano-node/releases>" %}
<https://github.com/IntersectMBO/cardano-node/releases>
{% endembed %}

{% embed url="<https://github.com/IntersectMBO/cardano-cli/releases/>" %}
<https://github.com/IntersectMBO/cardano-cli/releases/>
{% endembed %}

{% embed url="<https://book.play.dev.cardano.org/env-mainnet.html>" %}
<https://book.play.dev.cardano.org/env-mainnet.html>
{% endembed %}

## Contributors&#x20;

Thanks to the following pools for helping to put together these guides. Please consider delegating to their pools to support them.  Are you a pool? Consider buying them a coffee

![](https://img.cexplorer.io/a/5/7/2/1/pool12wpfng6cu7dz38yduaul3ngfm44xhv5xmech68m5fwe4wu77udd.png) [Apex Cardano Pool - Ticker: APEX](https://cexplorer.io/pool/pool12wpfng6cu7dz38yduaul3ngfm44xhv5xmech68m5fwe4wu77udd)

![](https://img.cexplorer.io/7/e/1/9/f/pool16cdtqyk0fvxzfkhjg3esjcuty4tnlpds5lj0lkmqmwdjyzaj7p8.png)  [Earn Coin Pool - Ticker: ECP](https://cexplorer.io/pool/pool16cdtqyk0fvxzfkhjg3esjcuty4tnlpds5lj0lkmqmwdjyzaj7p8)

![](https://img.cexplorer.io/f/4/3/4/6/pool1qhs3cf9ymc2nvmrd2j8cs36cj9jdqgnqk6s9ngyvy2lz5s8rak8.png) [PANL Stake Pool - Ticker PANL](https://cexplorer.io/pool/pool1qhs3cf9ymc2nvmrd2j8cs36cj9jdqgnqk6s9ngyvy2lz5s8rak8)&#x20;

![xSPO Alliance Logo](/files/padJ7At3xT4SVIbnghK3) [xSPO Alliance](http://xspo-alliance.org/discord)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ecp.gitbook.io/how-to-guides-for-coincashew-method-cardano-spos/maintenance-and-daily-operations/how-to-guides-for-spos-using-coincashew-method/update-node-to-9.1.1.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
