Linux Migration to FIN 5.1
Migrating to FIN 5.1 on Linux
Below is the process to migrate from any FIN 5.0.X version to 5.1+ on Linux machines.
The migration covers the below tag changes:
weather → weatherStation
weatherRef → weatherStationRef
job → now a marker tag
jobExpr → new tag that contains the job function
schedule → now a marker tag
scheduleGrid → new tag that contains the schedule events
as well as other behind the scenes db format changes
Create a backup first!
We strongly recommend to make backup of the existing project prior to migrating. We also recommend storing the backup somewhere else off the server hosting FIN for best practice.
Making a full project backup:
Stop the FIN service
Navigate to the the FIN directory
\opt\finFramework
(Substitute it with your specific installation path if different)Zip up the var folder - make sure to have enough space on the server as it will also contain all the database snapshots if you have a lot of them. If you like, you can delete or move some to reduce the file size. Path to the backups folder is something like this:
\opt\finFramework\var\proj\<projName>\backup
Move the newly created var zip folder off the server hosting FIN. For example onto a USB drive, cloud storage service, or another server.
1) Stop the FIN 5.0.x service
First, the user needs to stop the 5.0.x service by running the below command if using the same script we provided in the Linux Installation doc.
sudo systemctl stop fin
2) Install FIN 5.1
The user will then have to have FIN 5.1 installed on the machine. Look at Linux Installation for how to install FIN 5.1.
3) Stop the FIN 5.1 service
After installing FIN 5.1, the user needs to stop the FIN 5.1 service. Same command as before.
sudo systemctl stop fin
4) Copy/Move the 'var' folder to FIN 5.1
Now the user needs to either copy or move the FIN 5.0.X ‘var’ into the FIN 5.1 folder. Make sure a backup was saved outside of the FIN directory!
To copy, the command would look like this, but substitute with your specific path.
//sudo cp -r <path to 5.0.x var> <path to 5.1 folder>
sudo cp -r /opt/finFramework_5.0.7.3722/var /opt/finFramework_5.1.0.35
To move, the command would look like this, but substitute with your specific path.
5) Navigate to the bin folder of FIN 5.1
Next, the user will need to navigate to the 'bin' folder of FIN 5.1 directory. It should look something like below but with your version.
Path: \opt\finFramework_5.1.0.35\bin
6) Migration command
Once inside the bin folder, the user will right click anywhere in the open space and select “Open in Terminal”.
Run these two commands, but substitute with your specific path and project name.
7) Migration complete
After running the migration command, the user will wait until they get the indication that migration is “Complete” message. After this, the user can start the FIN service and log into the project.
Command to start FIN if using our script:
Note: If by any chance the tags did not update, the user can run the finMigrateProject() function via Folio app to update them. Recommend to restart the service afterwards.
8) BACnet Queries
If BACnet MSTP devices behind a router to IP are involved in the project. We recommend to add the bacnetRoute
tag to a connector per router IP. Below is the query that can be ran in Folio to do this automatically.
Connectors are required to have the bacnetDeviceName
tag. If for some reason it doesn’t exist, the connector status will not be available, therefore won’t be able to disable/enable those connectors. The dis
tag is required for these queries to write to the bacnetDeviceName
tag whatever the dis
tag value is. Run these queries in Folio to apply this to any BACnet connector that might not have the bacnetDeviceName
tag on it. A restart of the FIN service is required.
If for some reason the dis
tag doesn’t exist either, then the user will have to manually add the dis
as a string and the value being the name of the connector via the property editor.