Cant upgrade Core to Scale Fatal Error

So i have 2 nas, my new one i built end of last year, and thats always run scale, then my “old faithful” that backs up my main nas. But been having issues with main nas, so using old faithful last week or so, but VM’s are completely borked on Core atm, even tried the beta, so decided to finally upgrade it to scale, got manual update file and when i try to do the update i get this error:

 [EFAULT] Command unsquashfs manualupdate.tar failed (code 1): Read on filesystem failed because EOF read_id_table: failed to read id index table FATAL ERROR: File system corruption detected 

Then clicking on "more" shows this output, seems like a different language to me!

Error: Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/middlewared/job.py", line 355, in run
    await self.future
  File "/usr/local/lib/python3.9/site-packages/middlewared/job.py", line 391, in __run_body
    rv = await self.method(*([self] + args))
  File "/usr/local/lib/python3.9/site-packages/middlewared/schema.py", line 981, in nf
    return await f(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/middlewared/plugins/update.py", line 389, in file
    await self.middleware.call('update.install_manual_impl', job, destfile, dest_extracted)
  File "/usr/local/lib/python3.9/site-packages/middlewared/main.py", line 1283, in call
    return await self._call(
  File "/usr/local/lib/python3.9/site-packages/middlewared/main.py", line 1251, in _call
    return await self.run_in_executor(prepared_call.executor, methodobj, *prepared_call.args)
  File "/usr/local/lib/python3.9/site-packages/middlewared/main.py", line 1156, in run_in_executor
    return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.9/site-packages/middlewared/plugins/update_/install_freebsd.py", line 66, in install_manual_impl
    return self._install_scale(job, path)
  File "/usr/local/lib/python3.9/site-packages/middlewared/plugins/update_/install_freebsd.py", line 83, in _install_scale
    subprocess.run(['unsquashfs', os.path.basename(path)], cwd=location, **run_kw)
  File "/usr/local/lib/python3.9/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['unsquashfs', 'manualupdate.tar']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/middlewared/job.py", line 359, in run
    raise handled
middlewared.service_exception.CallError: [EFAULT] Command unsquashfs manualupdate.tar failed (code 1):
Read on filesystem failed because EOF
read_id_table: failed to read id index table
FATAL ERROR: File system corruption detected

i can only assume corrupt file system, but nas seems to work fine otherwise, i did only just update it to 13.3 beta last night though, trying to fix VMs.

can anyone tell me whats going on, or better yet, how to fix it? I know i could just do a fresh install, and import the pools but what a great opportunity to expand my knowledge base :laughing:

Only thing I can think of would be to check the ISO checksum? Maybe hickup during the download? I’m gonna assume this is when you try the manual update option.

sha256 checksum:
471543fb06548a7ec5b1cef242b58c9b48eb5bcebd1c57e4a23be14964239608

as per: Download TrueNAS SCALE - Data Storage Software

Consider permissions and vms (I’m assuming) will have to be remade, I’m not sure I’d even bother importing config. If this is a simple ‘for home use’ install, I’d just do a clean Scale & then spend the 30 minutes settings things up like vms, apps, networking, users, and permissions again; might prove faster. Pools should just auto import from what I remember from my update.

1 Like

Wait, you were on Core Beta and tried to upgrade to Scale?

Yep, was manual update, but like you say, probably easier to do a fresh install. my core system runs off mirrored thumbs at the moment, so i needa switch to ssd anyway for scale! The original download failed, and retry was at 50KBs, so i connected to vpn an tried again, an it was much faster (5MB/s), although i usually get 20MB/s, not sure how to do that checksum thing though.

or i could always do the inevitable, and just be patient, until the new rigs back up haha

Yep, cuz a post said that the no mouse in VM was fixed in 13.3, but it wasnt, in fact, in 13.3 even the keyboard stopped working

Start with a backup of your configuration file from CORE, put it in a safe place so you can restore it in a few minutes.

Two: Install SCALE from the ISO, no updates.

Three: Restore your TrueNAS configuration file.

Four: When asked to upgrade your pool feature set, Do Not! Not unless you know there is some feature you really need, otherwise this will restrict you from rolling back to your CORE version.

Five: You are done.

Six: You could reboot and just try the manual install again with a fresh copy if you like but if you have the same issue, do the above steps.

Good luck.

2 Likes