Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Online upgrade

Featured Replies

Im pondering why we cant make unRAID upgrade itself now. Since most/some/all? users have internet access from their unRAID boxes since the time feature was added and upgrading unRAID is just a matter of grabbing a copy and pasting...

 

surely a simple bash script with the inclusion of an md5 could be devised? We can add some sanity questions and some safety measures but in theory it would be quite simple.

 

Opinions?

To do it at a scrpt level needs curl, wget or ctorrent and unzip.

So it all depends on if they part of the standard distribution.

 

If there was a standard release file in etc such as /etc/unraid-release then we could even automate a versioned update to the syslinux.cfg.

I suppose it's possible to save the current version by using the output of uname, but I'm in favor of a standard version file

I have been working on an on-line update for unMenu and BubbaRaid.  I have it working in BubbaRaid-0.0.6-Beta, and I am porting it to unMenu.

 

Lack of wget or curl is a hurdle, but after a lot of experimenting, I have a way to download a package file with awk. 

 

It would be better if there were some server hooks on the server serving up the unRAID download (i.e. MD5 and a single URL to lookup filenames)

 

Stay tuned.....  It will be ready in a day or so.

 

Attached is unraid-upgrade-script.zip

 

Unzip it to a directory on your unRAID system (it contains two files) and run:

 

./upgrade-unraid.sh

 

It will give you a list of available downloads, and prompt you to download and install.

 

Consider this an UNTESTED BETA release....although I've tested it several times, and it works OK from here.  But please do not use it on an important or production server until some others have had a chance to test it and report back.

 

All of you brave enough to try it, please post your experiences with it.

 

It is a combination of bash and awk.... it could probably be written all in awk, but I was too tired to do it.... and it was easier (for me) to do the interface stuff in bash.

  • Author

Rather impressive.

 

Couple of questions. Since to use this script you have to download this script why dot you just include curl or wget as well in the initial download. These are far more robust down loaders that can survive all sorts of transient problems.

 

Im not sure why but it caused my entire array to spin up. Is this intentional?

 

"Your unRAID version appears to be: UNKNOWN". << is this supposed to work.

 

 

Superb work btw. Very very nice. ;D

 

Added to addon repository: http::/unraid.yi.org

 

 

Since to use this script you have to download this script why dot you just include curl or wget as well in the initial download. These are far more robust down loaders that can survive all sorts of transient problems.

 

For simplicity.... eventually, I'll port the whole thing to awk, so it is just one script.  Plus, this whole thing started as a plugin for unMenu, and it still will work that way.

 

Im not sure why but it caused my entire array to spin up. Is this intentional?

 

Yes - for 2 reasons.  One, is there has to be a sync call from the awk script to flush the download, or the install won't work.  Second, you should NOT be doing this with the array started, and you have to reboot when finished.... so a spinup will have to happen anyway.

 

"Your unRAID version appears to be: UNKNOWN". << is this supposed to work.

 

Yes, won't affect anything.  I wanted to be able to tell if no upgrade is needed, and so inform the user.... it is just informational.

 

I'll work on it some more today and get a new version ready.... if you look in the script, there are several "todo" notes.  I just wanted to get it posted ASAP, since I know a number of people "play" with stuff like this on weekends, and not during the week.

 

  • Author

That explains alot thanks :)

 

 

And one other thing... since the script has to have access to the Internet to get the list of options and to download the update, we can assume that unzip can also be downloaded.

I may be able to eliminate the sync commands during the download process, by using fflush in the awk bootstrap... but the final sync before shutdown is really important for safety.

OK, here is a 100% pure awk version.... 310 lines of code.

 

Unzip it to any place on your unRAID box, and run it with the command:

 

awk -f unraid-upgrade.awk

 

This version adds an integrity check on the unRAID zip file, and prettys up the interface (ANSI colors even)

 

When you run it, it displays a message and downloads some necessary files... then it will give you choices:


These versions of unRAID are available for download:

        1) unRAID Server 4.2.4.zip
        2) unRAID Server 4.3.2.zip
        3) unRAID Server 4.3.3.zip
        4) unRAID Server 4.4-beta2.zip
        X) -cancel upgrade-

Select: x

 

What choices are available depends on what is available for download at that time.... so as new versions are added by Tom, the options you see will automatically change.

 

Select the version you want, and it will download it, and check the zipfile integrity.  Then you have to confirm installation:


***********************************
*  Please make sure that your     *
*  unRAID array is stopped and    *
*  all your files are closed.     *
*                                 *
*  All the disks will spin up     *
*  as we flush all data.          *
*                                 *
*  You will have to reboot        *
*  this server when the           *
*  the upgrade is completed.      *
***********************************

Type  YES  to continue with upgrade:

 

Type "YES" and press enter, and the upgrade will be applied.

 

Then you need to reboot.

 

That's it!

  • Author

Added to addon repository: http::/unraid.yi.org

 

Looking extremely good.

 

Can i suggest we start bundling these precursor necessary files in some way so that they can be pre and permanently installed so that everyone can say "you will need the unRAID base addon package to use this script"... rather than us all looking at these pre-requisites separately. Sure if there are some weird dependencies they will be bespoke to a script but if you need say wget its safe to say other will need that to.

There are no prerequsites for this script.  It will bootstrap anything it needs but can't find locally. 

 

Rather than a bundle, I'd suggest that applications should be able to solve dependencies, particularly simple ones, on their own.

 

 

I add "unraid-upgrade.awk" between other *.awk files on USB flash.

From command prompt "awk - f..." execute awk file and upgrade working.

But in UnMenu through web interface UnMenu is not see any link to upgrade process.

 

Can I run upgrade process from UnMenu ?

  • Author

That is a superior if not more complicated solution. All im suggesting is a simple "install this set of tools" everyone can not only take advantage of but also know users will have. Think it of it as the "tools unRAID doesnt have but should".

But in UnMenu through web interface UnMenu is not see any link to upgrade process.

 

@Ropo:  This is not an unMenu plugin.  A separate plugin for unMenu will come later.

 

That is a superior if not more complicated solution. All im suggesting is a simple "install this set of tools" everyone can not only take advantage of but also know users will have. Think it of it as the "tools unRAID doesnt have but should".

 

@NAS: That would be nice, but as a developer, the SUREST way to create problems for yourself and users is to assume someone has something they don't.  Until wget comes standard as stock on unRAID, I'll assume it is there in a script.  Even after it is in the stock unRAID, scripts will still have to handle it not being there since some people don't upgrade for a long time.  I admit I was surprised when I found out the stock unRAID doesn't have wget, or even something as basic as an ftp or tftp client.... but then again, that just made me work harder to find a way to do it without them.

 

I'd like to see just a few more basic tools in the stock unRAID, or at least an "unRAID-Plus" that would be a base for building an application platform.  That would be something between stock unRAID and the full BubbaRaid.

 

 

 

I'd like to see just a few more basic tools in the stock unRAID

 

I posted a topic to gather this type of information so we can present it to Tom.

 

wget or curl (I think with curl you can push a file).

There are times when I really miss having a basic ftp client to do things

I also think unzip is a much needed tool.

 

http://lime-technology.com/forum/index.php?topic=2503.0

 

What else should we lobby for?

 

Wow...things are really whizzing along with some of the cool new feature thingees coming out.

 

Will there be a possibility to "Rollback" to a previous version should the upgrade go south, or a bug is discovered?  I am assuming this upgrade process won't take place automatically, but is instigated manually?

This script does not modify any configuration files or other scripts.  It only updates the unraid kernel and initramfs.

 

There is no "rollback" but you can chose an older version and "upgrade" backwards.... say from the 4.4-Beta back to 4.3.3.

 

The only hiccup would be if the new version broke your network capabilities... then you are back to upgrading (or downgrading) via the traditional method.

  • Author

....

 

The only hiccup would be if the new version broke your network capabilities... then you are back to upgrading (or downgrading) via the traditional method.

 

Unless we cache the zip file which we should probably do anyway (or at least give an option to)

Caching the zip would not help.... all you could do is reapply it.... and if the new version broke your network, reapplying it won't help.

 

I can put an "undo" function in it, so the upgrade would save the old kernel and initramfs, and the "undo" could put them back.

Caching the zip would not help.... all you could do is reapply it.... and if the new version broke your network, reapplying it won't help.

 

I can put an "undo" function in it, so the upgrade would save the old kernel and initramfs, and the "undo" could put them back.

You could add a few lines to the syslinux.cfg to boot the older version as an alternate menu choice. (or, copy it to an alternate name before you add the additional choice, that way, renaming one file would let you boot the older version.)

 

Joe L.

  • Author

Caching the zip would not help.... all you could do is reapply it.... and if the new version broke your network, reapplying it won't help.

 

I can put an "undo" function in it, so the upgrade would save the old kernel and initramfs, and the "undo" could put them back.

 

you would have to donwload the current version before you upgrade. Quite a sensible approach anyway.

 

Caching the zip would not help.... all you could do is reapply it.... and if the new version broke your network, reapplying it won't help.

 

I can put an "undo" function in it, so the upgrade would save the old kernel and initramfs, and the "undo" could put them back.

You could add a few lines to the syslinux.cfg to boot the older version as an alternate menu choice. (or, copy it to an alternate name before you add the additional choice, that way, renaming one file would let you boot the older version.)

 

Joe L.

 

Thats a superior solution. Most people have most of their flash drive empty anyway. Even if you upgrade and all seems ok it might take you a couple of week to locate a bug that is specific for you or if a serious bug is found you will want to immediately revert.

I thought about modifying the syslinux.cfg, but that's fraught with peril since some people have modified them. ... it will be safer to just append an "include" statement to it.

 

I'm going to keep one generation of backups, called "Previous version of unRAID" in the menu and include an undo function in the upgrade script.  I'll copy the bzroot and bzimage to .old extensions.  I'll also improve the detection code so it can identify which version of unRAID it is.

Here is version 1.1.0 of the unraid-upgrade awk script.

 

# Version 1.1.0 - BubbaQ  Oct. 12, 2008

#  - added undo capability

#  - improved version detection

#  - added zip file verify

 

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.