FreeCORE Home Install Demo Documentation

Move to TrueNAS SCALE

Take a FreeCORE system's configuration, applications and pools to TrueNAS SCALE, with a way back.

FreeCORE can hand a system on to TrueNAS® SCALE, the Linux-based TrueNAS. Three things move separately: the system configuration, the applications, and the storage pools. There are two routes for the configuration, and the pools decide which SCALE release to land on.

Before You Begin

Choose the SCALE Release by Your Pools

A pool imports with full access only on a release whose OpenZFS knows every feature the pool uses. FreeCORE 15 pools enable features that older SCALE releases do not have:

Pool feature First OpenZFS First TrueNAS
longname, large_microzap 2.3 25.04
block_cloning_endian, dynamic_gang_header, physical_rewrite 2.4 26

Block cloning is on by default in FreeBSD 15, so a pool that has been in use normally needs a release built on OpenZFS 2.4. Check the TrueNAS release schedule for the current status of that release. The configuration file below and every application export plan list your pools and name the release they need, so you do not have to work this out by hand.

Copying to a fresh pool on the SCALE side, for example with replication, is the alternative when the release you want is older than your pool.

Route 1: Configuration File

The saved file holds a copy of the database converted to the TrueNAS 13.3 form that SCALE accepts. The FreeCORE system is not changed by saving it.

  1. On FreeCORE, go to System > General and click Save Config. Tick For Moving to TrueNAS SCALE and Export Password Secret Seed. The download is named ...-for-truenas-scale.tar so it is not mistaken for a FreeCORE backup. It cannot be restored onto FreeCORE.
  2. Install TrueNAS SCALE 24.10 or later from its ISO on the boot device. Pick the release your pools need.
  3. In SCALE, go to System > General > Manage Configuration > Upload File, upload the tar file and let the system reboot.
  4. Sign in as root with your FreeCORE password. Uploading the file removes the administrative user created during the install, so create one again.
  5. Configure the network interfaces, then import the pools under Storage > Import Pool.

The tar file carries a README.truenas-scale that lists what was left out of the database and the release each pool needs.

Route 2: In Place, With a Way Back

FreeCORE can install TrueNAS SCALE 24.04 in place, the same way TrueNAS CORE 13.3 could. SCALE's installer creates a new boot environment next to FreeCORE's and receives the converted configuration; the FreeCORE boot environment and its own configuration are left as they are.

Important

Only TrueNAS SCALE 24.04 can be installed this way. From 24.10 on, the SCALE installer refuses to run on FreeBSD; FreeCORE refuses those update files before anything is extracted. After landing on 24.04, update inside SCALE as usual.

  1. On FreeCORE, go to System > Update and click Move to TrueNAS SCALE…. FreeCORE checks the system and shows what it will install, anything that stops the move, the pools TrueNAS SCALE 24.04 cannot use yet, the settings that do not travel, and the way back. Tick the acknowledgement under Pools if any are listed.
  2. Click Move to TrueNAS SCALE. FreeCORE fetches the TrueNAS SCALE 24.04 update from iXsystems' update server, verifies it and installs it, then reboots. Installing a 24.04 manual update file with Install Manual Update File on the same page does the same.
  3. SCALE boots, converts the configuration on its first start and reboots once more. Sign in as root, configure the network and import the pools.

SCALE 24.04 leaves a pool that uses a newer feature, such as block cloning, unimported. Update SCALE to a release that knows the pool's features (see the table above) before importing it.

To come back, activate the FreeCORE boot environment under System > Boot in SCALE, then shut the system down and power it on. The boot menu then starts TrueNAS CORE by default and FreeCORE boots with the configuration it had before the move. A restart from SCALE does not reach that menu, so use a full power off.

Applications

Applications are not part of the configuration. Each one leaves as a Docker Compose bundle:

  1. On FreeCORE, open Applications, expand the installed application and click Export for Linux. Review the plan: it says what is carried, what is rewritten for the Linux image and what stays behind.
  2. Choose a folder inside a dataset. Fill in Folder on the Linux host with the path the folder will have on SCALE, so the Compose file uses full paths, which SCALE's Install via YAML needs.
  3. Copy the folder to SCALE. In SCALE 24.10 or later go to Apps > Discover > Install via YAML and paste the compose.yaml.

Media and library folders are not copied. The application stores their paths in its own database, so mount the same data at the same container paths on SCALE. The bundle's README.export lists them.