Linux Full License Software Installation Guide
Please note that this guide is for providers who have purchased the Full or Full Upgrade License and are migrating from an existing DIY provider. For those with only Basic Licenses you only need to apply your license to your provider as explained in the Licensing FAQ.
This guide will help DIY Linux users to install the new Full License Software on their providers. To do this you will need to have purchased a Full License from the Xa-Miner Store and registered it to your DIY Provider ID at the XNS Console. The installer supports all major Linux distros including Ubuntu, CentOS and Alpine Linux.
The first step to install the software is to either SSH to your Linux provider, open a Terminal window if running a GUI or simply the CLI console. Run the
./spc hostcommand to check your provider details, spd needs to be running while you run the installer script.
If you are logged in to your Linux Provider with a user account (not root), enter the following command (note this is all one command):
curl -fsSL https://releases.scpri.me/storage_appliance/diy/xm-installer.sh | sudo bash
If you are logged in as root, then enter the following command:
curl -fsSL https://releases.scpri.me/storage_appliance/diy/xm-installer.sh | bash
This will start the installation script, install any necessary components for your Linux install and finally present you with the following page:
The URL in the above text will be for the local IP address of your provider. Now copy and paste this into a browser to continue the installation. NOTE:- keep this terminal window open until it shows the message ‘Installer Finished’ which will happen after the UI installation is complete.
You will see the following page in your browser or something similar depending on the browser you use:
If the page fails to load, it might be due to a local firewall running on the Linux Provider blocking TCP port 8135, if this is the case you will need to open that port on the firewall to allow it through.
In this case for Chrome, click Advanced and then ‘Proceed to 192.168.254.21 (unsafe)’ (this will contain your Provider’s IP address). This will bring you to the following page:
Click on Next. You’ll now be presented with the following options:
To migrate your existing provider, click on the Migrate from DIY icon. This will take you to the following screen where you need to enter either the wallet password if you have set one up or the 28/29 word recovery seed phrase. You can if you wish change the Application Config Folder but for most instances the default location is recommended (this is not where you have spd installed currently, this is the location where the installer will install new files to as part of the application).
Once you’ve entered your password or seed, the installer will verify it’s correct and will then find your running spd instance, yout API password, your metadata folder and your existing storage folders. Verify all this looks correct for your installation.
Should your wallet password or seed be incorrect, you will see the following:
Click on Back and re-enter your password or seed.
Once your details are all correct, click on Finish.
The installer will backup your metadata for you and the browser will download a zip file of it plus a copy will be saved in the Linux user’s home folder in case it’s required. SPD is then stopped and the docker container is started up. Once finished (takes typically 1-2 mins), you will be presented with this screen:
At which point you can click on the link to access your new Xa-Miner
Click on Next. Should the Internet Status show Not Connected in the page above, this indicates the docker container that has been installed does not have internet access, this is likely related to having a firewall running on the Linux OS which is blocking the docker container. Either disable this firewall or add rules to allow the docker container to have internet access.
This page can be safely ignored as you already have a recovery seed for your provider. Click on Next.
Enter your e-mail address used for the XNS Console to register your new Xa-Miner. On the next screen click on Dashboard and you’re taken to the Xa-Miner UI as below:
The GUI defaults to the Financials page where you can see your wallet balance, you can send or receive coins to the provider’s wallet, see a summary of your provider’s contracts and Income.
On the Stats page, you can see your provider’s stats. This is essentially your Grafana page that you are used to shown within the Xa-Miner UI. You can click on the Open in Grafana button to open up your public Grafana page in a new tab.
On the Storage page, you can see the storage folders which were discovered on the provider during the installation process. Here you can remove storage folders if you need to. See the Provider Maintenance section later in this guide for how to add new storage folders to a Full License DIY Xa-Miner.
On the Settings page, you can see your provider’s pricing config. Note these are now set for auto pricing so you do not need to change these settings and your provider will update them regularly to keep in line with the standard pricing structure for Xa-Miners. You can set your desired fiat currency which is used throughout the Xa-Miner UI from the drop down list at the bottom of the page.
Finally on the Support page, the status of Supervisor and the Daemon (spd) are shown, if either are offline there will be an Orange Restart button next to them where you can try to restart the processes. The rest of the buttons are as follows:
Download logs - this will zip up all the log files from your provider and the browser will download them to its default download location.
Reannounce - this is a manual reannounce button, Supervisor will now automatically re-announce your provider should the public IP address or ports change (so DDNS is no longer required for your provider). This button can be used should that not work or if the Support Team instructs you to use it.
Redownload - this button will redownload a fresh copy of the blockchain. Occasionally the consensus.db file can get corrupted and requires a fresh copy downloading.
Change Ports - should you need to change the ports your Xa-Miner is running on, click this button and enter the desired hosting port and relayer port. Typically these are consecutive ports like 4272 and 4273 or 14282 and 14283.
Reset Ports - this will reset your provider back to the default 4282 and 4283 ports.
Upload logs - this button will zip up your log files and then upload them to the Support Team’s server so they can be inspected to help in troubleshooting issues with a provider. Only use this at the instruction of the Support Team.
Open Chat Window - this feature allows you to chat 1:1 with a member of the Support Team without having to visit Discord. Please note that the Support Team is not necessarily available 24/7 and if no one is available, the chat button is disabled and will indicate that no one is online.
At the bottom of this page you will see some log files from various components of your Xa-Miner, these are not generally for users to concern themselves with but the Support Team or the devs may ask you for the latest log messages from a particular component for example.
The final step now that the Xa-Miner UI is up and running is, if you have previously setup and auto startup script on your Linux provider to startup spd after a reboot, this needs to be disabled as the xa–miner docker container will automatically startup after a reload, Supervisor will then startup spd and unlock your wallet. If you followed the official Linux Setup guide, then your script will be located in /usr/local/sbin/spd-startup.sh. This can be deleted with
sudo rm /usr/local/sbin/spd-startup.shand then disable the system service with
sudo systemctl disable spd-startup.serviceand
sudo rm /etc/systemd/system/spd-startup.service.
If you see either Supervisor (SPV) or Daemon (SPD) showing offline in the Xa-Miner UI, it is likely because an auto startup script is starting spd in the Linux OS which is conflicting with the spd running in the docker container which supervisor attempts to startup. To fix this, follow the steps above to disable the auto startup script or disable the method you have configured to auto start spd.
After running the installer script and opening the URL, if you see the following page in your browser, you likely need to change your browser's language settings to English.
Some typical maintenance tasks which a user needs to perform on their provider will now be slightly different with the UI. These are documented below.
To add a new storage folder to your provider, you will first need to create a partition, format and mount the drive in Linux as you would normally and ensure the drive auto mounts on reboot in the /etc/fstab file. Also create a single folder on the drive which will be the storage folder. In Linux there is no need to create multiple folders on a single drive, except if your drive is larger than 16TB and you are using ext4 format as ext4 can only support up to 16TB file sizes. In the case of 18TB and greater drives, you will need to create 2 folders, one 16TB and one for the rest of the drive space or 2 equal sized folders.
Once you have the folder created, run the installer script again using the same curl command in the installation section of this guide, then open a browser to the installer GUI with the 4 options as below:
When the installer is run and it detects an existing installation, the Configure Existing button is active and note the Fresh Installation and Migrate from DIY are deactivated now.
After clicking on Configure Existing, you’ll be presented with the following screen showing all the existing provider’s storage folders.
Click on Add Storage Folder
Create Folder will create the new folder at the default path shown. Most likely you will want to create the folder on a newly mounted drive, click Goto Home Folder.
From here you can navigate to the mounted drive and folder you previously setup either by typing in the path in the Current Folder box or by clicking the Up arrow to get to the root folder and then choose your path from there, for example /mnt/disk7/hostdata. Note folders can also be created at this step using the Add Folder button.
Once you have your new folder selected, click Select Folder.
Then you will see your new folder added to the list of storage folders.
Click on Finish. This GUI will show it configuring your Xa-Miner and then will present you with the following screen at which point you can close the browser tab.
Now return to the main Xa-Miner UI, go to the Storage page and you’ll see the added storage folder there.
Enter the size in GB you want to set the folder size to and click Assign. Note, be careful not to over provision the folders here, the units are in GB which don’t equate to the drive sizes you see in Linux when running lsblk for example. In the above example, the /mnt/disk5/hostdata folder is on a 6TB drive, lsblk reports this as 5.5T (which is 5.5TiB), using spd from the CLI this folder was created as a 5.4TB folder but the UI reports it as 5029GB. So if disk7 was a 6TB drive, you would want to configure 5029GB in the UI as the capacity.
A similar process can be used in reverse to remove storage folders in a similar way to using ‘spc host folder remove <PATH>’ from the CLI. First navigate to the Storage page on the Xa-Miner UI, find the folder from the first column you wish to remove and click on the Remove button to the right.
Any data stored in the folder being removed will be moved by spd to other folders. This process may take some time depending on how much data needs moving so it’s recommended to remove just one folder at a time.
Once the folder is removed from the Xa-Miner UI, run the installer script again and choose Configure Existing:
The following screen will show all the drives which have been added to the Xa-Miner, note if you have more than 10 drives/folders then you may need to go to the next page or change the rows per page value to All to see the one(s) you want to remove.
Simply click on the red icon in the Action column against the folder you wish to remove and then click Finish. Now the drive can be safely unmounted in Linux and removed.
Process still tbd.