Install Using Packages

Manual installation using pre-built packages

# Install FIO Chain Node Using Packages

> 👍 Ubuntu 20.04

> Ubuntu 20.04 is the official FIO version.

> 👍 Ubuntu 22.04

> Ubuntu 22.04 is the latest version of Ubuntu tested and verified for use as a FIO blockchain node. FIO is also compatible with Ubuntu 20.04 as well as 18.04 (the latter being EOL at this time).

> 📘 Install Script

> Check out the [Install Script](/docs/install-script) to perform an all-in-one installation, configuration and startup of FIO Chain

The following setup is for a FIO API Node installation using pre-built packages.

These packages are purpose-built to quickly bring up a node, including systemd, logrotate, apparmor, and compsec integration, and have reasonable defaults in the config.

## Latest Release

Get the latest release from the [FIO Releases](https://github.com/fioprotocol/fio/releases) for your Ubuntu OS.

## Dependencies

Both the Ubuntu 20 and Ubuntu 22 packages depend on libicu60, which may be downloaded and installed using the following commands:

```shell
wget http://archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu60_60.2-3ubuntu3_amd64.deb
sudo apt install ./libicu60_60.2-3ubuntu3_amd64.deb

Download and validate install packages

Releases may be downloaded manually or pulled programmatically by:

curl -sO https://github.com/fioprotocol/fio/releases/download/v3.5.1/fioprotocol-3.5.1-ubuntu-20.04-amd64.deb
wget https://github.com/fioprotocol/fio/releases/download/v3.5.1/fioprotocol-3.5.1-ubuntu-20.04-amd64.deb

Verify checksum:

md5sum fioprotocol-3.5.1-ubuntu-20.04-amd64.deb

Compare to the checksum generated above with the ones found on the Official Release page

fa58a76c6667aa9c24caea51093b9c36 fioprotocol-3.5.1-ubuntu-20.04-amd64.deb

Remove existing history directories (optional):

This step should be performed only if you are upgrading from an older version, and you are NOT running a history node.

cd /var/lib
sudo rm -fr fio/data fio/history fio/history_index

Install the release

sudo apt install ./fioprotocol-3.5.1-ubuntu-20.04-amd64.deb
rm fioprotocol-3.5.1-ubuntu-20.04-amd64.deb

This will install the following files:

DirectoryFile/LinkType
/etc/apparmor.d/usr.local.bin.fio-nodeos
/etc/apparmor.d/usr.local.bin.fio-wallet
/etc/fio/nodeos/logging.json
/etc/fio/nodeos/config.ini
/etc/fio/nodeos/default-logging.json
/etc/fio/nodeos/genesis-mainnet.json
/etc/fio/nodeos/genesis-testnet.json
/etc/fio/nodeos/mainnet-config.ini
/etc/fio/nodeos/testnet-config.ini
/etc/fio/nodeos/genesis.jsonlink
/etc/fio/nodeos/protocol_features
/etc/logrotate.d/fio-nodeos
/etc/logrotate.d/fio-wallet
/lib/systemd/system/fio-nodeos.service
/lib/systemd/system/fio-wallet.service
/usr/local/bin/clio
/usr/local/bin/fio-nodeos
/usr/local/bin/fio-nodeos-run
/usr/local/bin/fio-wallet
/usr/local/bin/cleoslink
/usr/local/bin/fio-cleoslink
/usr/local/bin/nodeoslink
/usr/local/share/fio/README
/var/lib/fio/fio-wallet/config.ini
/var/lib/fio/fio-wallet/fio-wallet
/var/log/fio/nodeos.log

Check for error

To Monitor AppArmor logging for issues

Inspect either the file 'kern.log' or 'messages' located in /var/log, i.e.:

tail -f /var/log/kern.log

To Disable an AppArmor profile

sudo ln -s /etc/apparmor.d/usr.local.bin.fio-nodeos /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/usr.local.bin.fio-nodeos

Re-enable an AppArmor profile

sudo rm /etc/apparmor.d/disable/usr.local.bin.fio-nodeos
sudo apparmor_parser -r /etc/apparmor.d/usr.local.bin.fio-nodeos

Set-up Testnet genesis

The default genesis file is for startup of a mainnet node. If running a testnet node, copy the testnet genesis configuration file into place:

sudo cp /etc/fio/nodeos/genesis-testnet.json /etc/fio/nodeos/genesis.json

Configure and Run FIO Chain Node

See Configure Your Node