Use this checklist to prepare a production-grade Terra Classic node.

Create a dedicated user

Although terradCopy terrad does not require a superuser account to run, you will need elevated privileges during installation. Create a dedicated system user and run terradCopy terrad under that account for better isolation.

Increase the maximum files terrad can open

terradCopy terrad opens many concurrent file descriptors by default. Increase the nofileCopy nofile limit in /etc/security/limits.confCopy /etc/security/limits.conf:

BASH
# Example additions to /etc/security/limits.conf
*                soft    nofile          65535
*                hard    nofile          65535

Log out and back in to apply the new limits.

Run the server as a daemon

terradCopy terrad should run continuously. Configure a systemdCopy systemd service to start it on boot.

Register terradCopy terrad as a service

Create /etc/systemd/system/terrad.serviceCopy /etc/systemd/system/terrad.service:

INI
[Unit]
Description=Terra Daemon
After=network.target

[Service]
Type=simple
User=<TERRA_USER>
ExecStart=<PATH_TO_TERRAD>/terrad start
Restart=on-abort
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target

Update <TERRA_USER>Copy <TERRA_USER> and <PATH_TO_TERRAD>Copy <PATH_TO_TERRAD> for your environment, then reload and enable the service:

BASH
sudo systemctl daemon-reload
sudo systemctl enable terrad
sudo systemctl start terrad

Control the service

BASH
# Check health
sudo systemctl status terrad

# Restart sequences
sudo systemctl stop terrad
sudo systemctl start terrad
sudo systemctl restart terrad

Access logs

Use journalctl -t terradCopy journalctl -t terrad to review logs. Append -rCopy -r to reverse chronological order or -fCopy -f to tail continuously.