Jump to content
ljm42

unRAID OS version 6.5.0 Stable Release - Update Notes

88 posts in this topic Last Reply

Recommended Posts

I took a stab at writing a How-To based on the feedback in the release thread. If this looks helpful, maybe it could be added to the top post?

 

Edit: this warrants it's own topic, thank you!

-tom

-----

 

Upgrading from 6.4.x to 6.5.0

Nothing to it really:

  • Read the first post in the 6.4.1 and 6.5.0 release notes threads
  • Consider disabling mover logging, it just adds noise to diagnostics. New 6.4.1 installs have it disabled by default.  Go to Settings -> Scheduler -> Mover Settings
  • Install/Update the Fix Common Problems plugin, then go to Tools -> Update Assistant and click "Run Tests".  
    • Whereas the normal FCP checks for potential problems with your *current* version of unRAID, the Update Assistant checks for incompatibilities with the version of unRAID you are *about* to install. It is highly recommended that you resolve any issues before proceeding.
  • If you choose not to run the Update Assistant, you'll want to perform these steps manually: 
    • Ensure your server name does not include invalid characters, or you will have problems in 6.5.x. Only 'A-Z', 'a-z', '0-9', dashes ('-'), and dots ('.') are allowed, and the name must be 15 characters or less. To fix this, go to Settings -> Identification and change the "Server name". (see this)
    • Upgrade all your plugins
    • Uninstall the Advanced Buttons plugin, it was newly discovered to be incompatible (see this). You may want to review the next section for other plugins that are known to have problems, if you skipped that when going to 6.4.0. Note that the S3 Sleep plugin works again, feel free to install it if you removed it when going to 6.4.0 (see this).  
  • Stop the array (this step is optional, but I like to do it before starting the upgrade)
  • Go to Tools -> Update OS and update the OS. You may need to switch from Next to Stable to see the update.
  • Reboot!

Then check out the "Setting Up New Features" section below.

 

Upgrading from 6.3.5 (or earlier?) to 6.5.0


Before you upgrade from 6.3.5

  • Read the first post in the 6.4.06.4.1 and 6.5.0 release notes threads
  • Consider disabling mover logging, it just adds noise to diagnostics. New 6.4.1 installs have it disabled by default.  Go to Settings -> Scheduler -> Mover Settings
  • Install/Update the Fix Common Problems plugin, then go to Tools -> Update Assistant and click "Run Tests".  
    • Whereas the normal FCP checks for potential problems with your *current* version of unRAID, the Update Assistant checks for incompatibilities with the version of unRAID you are *about* to install. It is highly recommended that you resolve any issues before proceeding.
  • If you choose not to run the Update Assistant, you'll want to perform these steps manually: 
    • Ensure your server name does not include invalid characters, or you will have problems in 6.5.x. Only 'A-Z', 'a-z', '0-9', dashes ('-'), and dots ('.') are allowed, and the name must be 15 characters or less. To fix this, go to Settings -> Identification and change the "Server name". (see this)
    • If you have VMs, go to Settings -> VM Manager, switch to Advanced View, and make sure all of the paths are valid. Here are the default settings, but make sure the paths below actually exist on your system. Without these paths, your VMs will not load under 6.4.1.  For more info see this
      default VM storage path -> /mnt/user/domains/    (this is DOMAINDIR in \\tower\flash\config\domain.cfg)
      default ISO storage path -> /mnt/user/isos/    (this is MEDIADIR in \\tower\flash\config\domain.cfg)
    • Delete this file from your flash drive: \\tower\flash\config\plugins\dynamix.plg This is an old version of the dynamix webgui. Depending on how old it is, it can prevent the new webgui from loading.  (see this, this)
    • Upgrade all your plugins (other than the main unRAID OS plugin)
    • You must uninstall Advanced Buttons (see this) and the Preclear plugin (see this, this, this, this, this, this).  Consider uninstalling unmenu (see this), the Pipework docker (see this), and any other plugins you no longer use.
    • Note that the S3 Sleep plugin works again, just make sure you have updated to the latest (see this)
    • Consider installing the Fix Common Problems plugin and resolving any issues it highlights
  • Additional cleanup you may want to perform:
    • Consider deleting all files from the \\tower\flash\extra folder and install them using Nerd Tools instead
    • Review your \\tower\flash\config\go script and use a good editor (like Notepad++, not Notepad) to remove as much as possible.
      • For instance, remove any references to "cache_dirs" and use the Dynamix Cache Directories plugin instead.
      • Consider moving other customizations to the User Scripts plugin
      • Remove any port assignments added on the /usr/local/sbin/emhttp line
      • FYI, a completely stock go script looks like this:
        #!/bin/bash
        # Start the Management Utility
        /usr/local/sbin/emhttp &

         

    • Consider Installing any BIOS updates that are available for your motherboard
  • If you made any substantial changes in this section, reboot and test to make sure any problems are not the result of these changes.

 

Performing the upgrade from 6.3.5

  • Stop the array
  • (If 6.3.5 or earlier) Go to Plugins and update the unRAID OS plugin (but don't reboot yet)
  • (If on 6.4.0 or one of the 6.4 rc's) Go to Tools -> Update OS and update the OS (but don't reboot yet).  You may need to switch from Next to Stable to see the update.
     
  • By default, the webgui in unRAID 6.4.1 will use port 80 and any customization you made to the port in your go script will be ignored. If you need to change the port(s) before booting into 6.4.1 for the first time, use a good editor (like Notepad++, not Notepad) and edit \\tower\flash\config\ident.cfg  Add the following lines to the end of the file, substituting the ports you want to use:

    USE_SSL="auto"
    PORT="80"
    PORTSSL="443"

    NOTE: If you need to change the defaults, be sure to pick high values over 1024.  i.e. 81 and 43 are *not*  good options. Try 8080 and 8443

    Once you have booted in 6.4.0, you should no longer edit this file by hand.  Better to use the webgui: Settings -> Identification -> Management Access
     

  • If you are running Ryzen:

    •  Edit your \\tower\flash\config\go script (using a good editor like Notepad++ (not Notepad)) and add the "zenstates" command right before "emhttp", like this:
      /usr/local/sbin/zenstates --c6-disable
      /usr/local/sbin/emhttp &

       Also, go into your BIOS and disable "Global C-state control"
       

  • Reboot
  • It may be helpful to clear your browsers cache

---

 

Setting Up New Features

 

  • unRAID now supports SSL! unRAID will automatically provision and maintain a Lets Encrypt certificate for you, along with the necessary dynamic DNS entries. To enable this, go to Settings -> Identification -> Management Access and click Provision. If you get an error about rebinding protection, wait 10 minutes and try again. If you still get the error, click Help to read how to adjust your router.
     
    • Using these certificates will change your url to <some long number>.unraid.net.  No it can't be changed without disabling all of the automation and switching to your own certificates. You don't need to remember the number, when you connect via IP or servername it will automatically redirect. If you are concerned about a theoretical DNS outage, know that you can override your DNS by adding an entry to your PC's hosts file.  Or in a pinch you can edit \\tower\boot\config\ident.cfg and set USE_SSL="no"

       

    • If you prefer to not use the fully automated Lets Encrypt certificates, you can set your own domain name and supply your own certificates or use self-signed certificates. In this mode, you are responsible for managing DNS and ensuring the certificates do not expire.  Click the Help icon on the SSL Certificate Settings page for more details.
       
  • Want to check out the new themes? Navigate to Settings -> Display Settings -> Dynamix color theme. You may need to change your banner when you change the theme
     
  • Note that you can now use the webgui to assign unique IP addresses to your dockers. If you manually customized your macvlans under 6.3.5 you'll need to set them up again using the webgui.
     
  • You can now disable the insecure telnet protocol. Go to Settings -> Identification -> Management Access and set "Use TELNET" to "No"
     
  • 6.4.1 adds docker support links to the docker page. Any dockers you install in 6.4.1 or later will automatically get this functionality, to update your existing dockers follow this one-time process

 

Solutions to Common Problems

  • Are you looking for the "edit XML" option for your VMs?  First Edit the VM, then click the button in the upper right corner to switch from "Form View" to "XML View"
     

  • If your system hangs at "loading /bzroot", you need to switch from "legacy" booting to UEFI. The ASRock C236 WSI motherboard in particular needs this, others may as well. (see this, this)  To do this:

    • (If needed) rename the "EFI-" folder on the flash drive to "EFI"

    • Go into the bios and set the boot priority #1 to "UEFI: {flash drive}"
       

  • Starting wth 6.4.1, unRAID now monitors SMART attribute 199 (UDMA CRC errors) for you.  If you get an alert about this right after upgrading, you can just acknowledge it, as the error probably happened in the past.  If you get an alert down the road, it is likely due to a loose SATA cable. Reseat both ends, or replace if needed. (see this)
     

  • If your VMs will not start after upgrading, go to Settings -> VM Manager, switch to Advanced View, and make sure all of the paths are valid. Here are the default settings, but make sure the paths actually exist on your system:

    default VM storage path -> /mnt/user/domains/    (this is DOMAINDIR in \\tower\flash\config\domain.cfg)
    default ISO storage path -> /mnt/user/isos/    (this is MEDIADIR in \\tower\flash\config\domain.cfg)

    For more info see this(the Update Assistant could have warned you of this in advance)
     

  • If you can't access the webgui after upgrading to 6.5.0, your server name may include characters that are invalid for NETBIOS names. Only 'A-Z', 'a-z', '0-9', dashes ('-'), and dots ('.') are allowed, and it must be 15 characters or less. (see this) To fix this, edit \\tower\flash\config\ident.cfg using a good editor (like Notepad++, not Notepad) and remove those characters from the "NAME" parameter, then reboot. (the Update Assistant could have warned you of this in advance)
     

  • If you are unable to access the webgui after upgrading, you may have a really old version of the dynamix webgui plugin on your system.  Delete \\tower\flash\config\plugins\dynamix.plg and reboot. (see this, this(the Update Assistant could have warned you of this in advance)
     

  • If you have problems booting after applying the upgrade, move your flash drive to a Windows or Mac machine and run checkdisk, fixing any problems it finds.
     

  • If your cache disk has an "incompatible partition" after upgrading, it was probably created in an older version of the Unassigned Devices plugin. UD has been updated so this won't happen again. (the Update Assistant could have warned you of this in advance)


    This is a one-time fix. You'll need to downgrade to 6.3.5 and move the data off the cache drive, re-format the disk and move the data back.  The procedure is outlined here
     

  • If you have on-board Aspeed IPMI you may find that IPMI loses video or changes color during the boot process.  To resolve this, go to Main -> Boot Device -> Flash -> Syslinux Config and add "nomodeset" to your "append" line (and reboot).  It should look something like this:
    label unRAID OS
      kernel /bzimage
      append initrd=/bzroot nomodeset

    You'll probably want to repeat that on each of the other append lines in this file.
     

  • If you don't see CPU load statistics on the dashboard, or if you can't use the new web-based terminal, switch to Chrome or Firefox instead of Safari. This is a shortcoming in Safari, not a bug in unRAID. Doesn't apply in 6.5.0

 

  • Are you having problems with your Lets Encrypt docker? First, make sure the webgui and docker aren't both trying to use the same port. Beyond that, Lets Encrypt recently made some changes that break things. These issues are not related to the unRAID upgrade, refer to the LE docker thread for help
     
  • Speedtest complaining about Python? The timing is coincidental, but it is not related to the unRAID upgrade, see the Speedtest thread
     
  • If you are unable to update your dockers, or if you see this error in the syslog:
    Feb 3 12:08:59 Unraid-Nas [6503]: The command failed. Error: sh: /usr/local/emhttp/usr/bin/docker: No such file or directory
    then you need to uninstall the Advanced Buttons plugin. It is not currently compatible with 6.4.1+ See this (the Update Assistant could have warned you of this in advance)
     
  • If you get this error message when trying to install the preclear plugin:
    unRAID version (6.4.1 - GCC 7.3.0) not supported.
    please re-read the "before you upgrade" section of this post. The preclear plugin is not compatible with 6.4.1+
     
  • If you see this error message in your logs, please re-read the "before you upgrade" section of this post. rc.diskinfo is part of the preclear plugin, which is not compatible with 6.4.1 (the Update Assistant could have warned you of this in advance)
    Feb  6 06:21:30 Tower rc.diskinfo[17255]: PHP Warning: file_put_contents(): Only 0 of 2584 bytes written, possibly out of free disk space in /etc/rc.d/rc.diskinfo on line 499
  • Are you seeing a "wrong csrf_token" token in your logs? Close all your browser tabs (on all computers) that were pointed at unRAID prior to the last reboot.  More info
     
  • If you have severe errors (no lan, array won't start, webgui won't start) try installing on a new flash drive. If it works, that means the problem is with one of your customizations.  You can either try to find and fix the problem (if you skipped the "before you upgrade" section, that would be a good place to start), or move forward with the clean flash drive. To continue with the clean drive, copy just the basics (/config/super.dat and your key file) from the old drive to the new one and then reconfigure as needed.
     
  • Are you still having problems? Review the expanded "Before you upgrade" section above.  If that doesn't help, grab your diagnostics (Tools -> Diagnostics) if you can, and reboot into Safe Mode.  If your problems go away, then the problem is likely with a plugin. If the problems persist, you'll need additional help.  Either way, grab your diagnostics again while in safe mode and attach both sets to a forum post where you clearly explain the issue.
Edited by ljm42
  • Like 7
  • Upvote 11

Share this post


Link to post

Please only post suggestions here for additional information to be added to OP.

Share this post


Link to post

The zenstates line didn't work for me until I added the full path to the zenstates script to the config/go file:  /usr/local/sbin/zenstates --c6-disable. As a suggestion. Thanks!

Share this post


Link to post

Thanks, I've updated that. If we need the full path to emhttp it makes sense to have the full path to zenstates too

Share this post


Link to post

Can you add something about the cache drive missing in 6.4 because of a previous UD format incompatibility and a link to the solution?

Share this post


Link to post
7 hours ago, ljm42 said:

USE_SSL="auto" PORT="80" PORTSSL="443"

Couple of thoughts on OP.

 

Do we want to be suggesting using notepad or console when the GUI controls this file and does these changes for you?

 

Do we really need to tell people to reboot the entire server perhaps there is a softer way?

 

It does not work for me via the gui or by hand anyway. The best I can achieve is when it is set to this

 

USE_SSL="no"
PORT="80"
PORTSSL="443"

 

port 443 is still held by nginx and trys to redirects to 80 e.g.

 

443/tcp open  ssl/http nginx
|_http-server-header: nginx
|_http-title: Did not follow redirect to http://TOWER.local:80/

 

which makes me think it really does mean "dont use SSL" but still listen for it and force to non TLS. I dont think this is the natural assumption of a "disable" SSL option?

 

Edit: confirmed if i change the SSL port via the GUI and change SSL as well i can disable SSL without rebooting. This is better albeit i still question why there is no option to stop listening on the port. (perhaps PEBCAK TBC)

 

Share this post


Link to post
9 hours ago, ljm42 said:

(If on one of the 6.4 rc's) Go to Tools -> Update OS and update the OS (but don't reboot yet)

You will need to switch from "next" to "stable" to see the update.

Share this post


Link to post
2 hours ago, NAS said:

Do we want to be suggesting using notepad or console when the GUI controls this file and does these changes for you?

This is changed functionality where 6.3.5 and 6.4 behaves differently.

 

The OP is about what to do before updating - before you have access to a GUI control that allows you to specify the port.

And the step is only needed for people who have manually patched older unRAID systems, to make the older configuration compatible with the GUI functionality of 6.4 and forward.

 

So suggesting the manual edit for people with nonstandard settings is meaningful.

Share this post


Link to post

That makes more sense however i would still recommend against casually manually suggesting editing a system config file that is controlled by the gui.

 

Exceptional circumstances likely preclude this ever happening though so in that light some more context and warnings need applied.

 

here be dragons :)

 

It also needs clarity that the no SSL settings does not mean no SSL port

 

good work

 

 

 

 

Share this post


Link to post
6 hours ago, dlandon said:

Can you add something about the cache drive missing in 6.4 because of a previous UD format incompatibility and a link to the solution?

 

Sure.  Please provide sample text and the link and I'll update OP.

Share this post


Link to post
2 hours ago, NAS said:

That makes more sense however i would still recommend against casually manually suggesting editing a system config file that is controlled by the gui.

 

Exceptional circumstances likely preclude this ever happening though so in that light some more context and warnings need applied.

 

here be dragons :)

 

It also needs clarity that the no SSL settings does not mean no SSL port

 

good work

 

 

 

 

 

We probably should have added some code in unRAIDServer.plg that detects if user is using -p option on their emhttp line in go file, and if so, set the USE_SSL, PORT, and SSL_PORT appropriately.

 

We can add for 6.4.1 release.

Share this post


Link to post

Wow!  lots of comments this morning :)

 

Thanks NAS and pwm, I've cleaned up the port section a bit based on your feedback, is that better? 

 

Thanks jonathanm, I don't remember having to do that, but I see I am now on "stable" so maybe  I did :)  I added a note just in case.

 

6 hours ago, dlandon said:

Can you add something about the cache drive missing in 6.4 because of a previous UD format incompatibility and a link to the solution?

 

Sorry, can you tell me what to write?  :) I have seen references to this but I haven't followed it closely.

 

 

Based on other feedback, I also created a new "Before you upgrade" section with more pointers on removing old customizations. Let me know what you think.

Share this post


Link to post
4 hours ago, NAS said:

Couple of thoughts on OP.

 

Do we want to be suggesting using notepad or console when the GUI controls this file and does these changes for you?

 

Do we really need to tell people to reboot the entire server perhaps there is a softer way?

 

It does not work for me via the gui or by hand anyway. The best I can achieve is when it is set to this

 

USE_SSL="no"
PORT="80"
PORTSSL="443"

 

port 443 is still held by nginx and trys to redirects to 80 e.g.

 

443/tcp open  ssl/http nginx
|_http-server-header: nginx
|_http-title: Did not follow redirect to http://TOWER.local:80/

 

which makes me think it really does mean "dont use SSL" but still listen for it and force to non TLS. I dont think this is the natural assumption of a "disable" SSL option?

 

Edit: confirmed if i change the SSL port via the GUI and change SSL as well i can disable SSL without rebooting. This is better albeit i still question why there is no option to stop listening on the port. (perhaps PEBCAK TBC)

 

 

I think we can fix this behavior.

Share this post


Link to post
2 hours ago, limetech said:

Sure.  Please provide sample text and the link and I'll update OP.

 

2 hours ago, ljm42 said:

 

Sorry, can you tell me what to write?  :) I have seen references to this but I haven't followed it closely.

 

Problem: Cache disk shows as having an incompatible partition after upgrading to 6.4.

 

Reason: The cache disk was formatted by UD with an incompatible format.  Until 6.4, unRAID would accept the incompatible format for the cache disk and mount it.  unRAID now refuses to accept a disk with incompatible partitioning.  UD has been updated so this won't happen again.

 

Fix: You will have to downgrade to 6.3 and move the data off the cache, re-format the cache disk, and move the cache data back.  The procedure is outlined here:

 

  • Like 2

Share this post


Link to post

Running Ryzen, I at some point got the impression, that turning off address space layout randomization (ASLR) would provide a more stable environment. I have therefore added this to the go script:

echo 0 | tee /proc/sys/kernel/randomize_va_space

I actually dont know whether this (still) is a good idea.

Also it seems to provide a more stable Ryzen system when adding the rcu-nocbs option (substitute the number of cores minus one for 11):

label unRAID OS
  kernel /bzimage
  append rcu_nocbs=0-11 initrd=/bzroot

 

Edited by pederm
Added rcu_nocbs

Share this post


Link to post
14 hours ago, limetech said:

 

I think we can fix this behavior.

Sounds good. I think it makes more sense this way.

Share this post


Link to post

This is a great thread and idea... thanks for taking the time to do this @ljm42!  Couple of questions / suggestions:

  • Is it possible to include explanations, links or additional details as to why those plugins should be removed prior to updating?  I ask as I upgraded prior to the creation of this thread and never removed the Preclear plugin; however, I didn't have any issues upgrading.   Should users remove it now or if no issue was discovered, they can reinstall or continue using Preclear or the other plugins mentioned.  I think this needs a little more clarification.  
  • As @pederm indicated, is it best to leave the rcu_nocbs setting in place or remove it and use the zenstates --c6-disable in the go script?  Potentially add rcu_nocbs as an additional stability measure?  
  • Add a link to this forum post from the first post of the 6.4.0 release thread?  Possibly indicating this is a work in progress?
Edited by luisv

Share this post


Link to post
2 hours ago, luisv said:

Is it possible to include explanations, links or additional details as to why those plugins should be removed prior to updating?

 

I'll see what I can do, this already feels too long and I don't want to scare people away.

 

For now, you can go to the release thread and then type "preclear" in the search box. When your cursor is in the search box, a new dropdown will appear, choose "this topic" and hit the search button.  Other preclear support requests are all over the forum.

 

2 hours ago, luisv said:

As @pederm indicated, is it best to leave the rcu_nocbs setting in place or remove it and use the zenstates --c6-disable in the go script?  Potentially add rcu_nocbs as an additional stability measure? 

 

We'll need @limetechto weigh in on the Ryzen ideas. rcu_nocbs isn't mentioned in the release notes so I thought it was old information
 

Share this post


Link to post
2 hours ago, luisv said:

Is it possible to include explanations, links or additional details as to why those plugins should be removed prior to updating?  I ask as I upgraded prior to the creation of this thread and never removed the Preclear plugin; however, I didn't have any issues upgrading.   Should users remove it now or if no issue was discovered, they can reinstall or continue using Preclear or the other plugins mentioned.  I think this needs a little more clarification. 

 

I also upgraded from 6.3.5 without removing any plugins.  Preclear, Unassigned Devices, S3 Sleep (disabled and not in use prior to upgrade) etc. were installed and caused me no upgrade issues.  They continue to work without problems on 6.4.0.  The plugins were all updated to the latest prior to the upgrade.  Obviously, it is not mandatory for everyone that they be removed prior to upgrading, but, that may be necessary is some cases.  There appear to be several variables at play here.

Edited by Hoopster
  • Like 1

Share this post


Link to post
31 minutes ago, ljm42 said:

 

I'll see what I can do, this already feels too long and I don't want to scare people away.

 

For now, you can go to the release thread and then type "preclear" in the search box. When your cursor is in the search box, a new dropdown will appear, choose "this topic" and hit the search button.  Other preclear support requests are all over the forum.

 

 

We'll need @limetechto weigh in on the Ryzen ideas. rcu_nocbs isn't mentioned in the release notes so I thought it was old information
 

 

Agreed, I didn't mean nor want to make the Update Notes longer than necessary; however, was curious about clarification as I believe folks would want a quick and simple guide instead of having to read through multiple threads for the info they need.  

 

I reviewed the thread for preclear before posting and didn't see any specific evidence that it was a hard and fast rule that preclear needed to be removed by all.  Seemed like a few instances where removing it helped.  I guess I'm looking at it as instead of saying it needs to be removed, that it might need to be removed if a user sees XYZ issue.

 

 

  • Like 1

Share this post


Link to post

Today I was upgrading from 6.3.5 to 6.4.0. Upgrade went fine, but when 6.4.0 boot up, it stuck on Array Starting... Starting services...

I find out that culprit was Pipework (Docker container) which I was using for setting Transmission's IP.

 

Solution: Disable Array auto start on boot and then disable Docker. Delete docker.img. Start unRAID normally and reinstall Dockers (except Pipework). Alternative would be to revert to 6.3.5 and remove Pipework and then upgrade to 6.4.0.

 

Prior to upgrade I turned off auto start on all Dockers, but Pipework auto started non the less.

 

Hope it helps to someone.

  • Like 1

Share this post


Link to post

I ran into an issue where it was stuck starting services because it couldn't find a path to the VM Default ISOs ....

Share this post


Link to post
2 hours ago, bakes82 said:

I ran into an issue where it was stuck starting services because it couldn't find a path to the VM Default ISOs ....

 

That sounds like an excellent tip, would you mind adding more details about the solution to your thread?

 

I'd be happy to include it in this post once I understand it a bit more.  thanks!

 

Share this post


Link to post

OK, I softened the language around uninstalling preclear, and tried to find links that backed up the suggestion. If anyone has better ones let me know.

 

I also added the suggestion to remove Pipework (thanks @Vaseer ) I had forgotten about that one.

  • Like 1

Share this post


Link to post

Settings -> VM -> Default ISO storage path:   Mine was empty and caused it to fail from what I can tell, I haven't rebooted in the past day to see.

Share this post


Link to post
Guest
This topic is now closed to further replies.