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.

ZFS plugin for unRAID

Featured Replies

  • Replies 1.6k
  • Views 416.8k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Today I released in collaboration with @steini84 a update from the ZFS plugin (v2.0.0) to modernize the plugin and switch from unRAID version detection to Kernel version detection and a general overha

  • You have truly taken this plugin to the next level and with the automatic builds it´s as good as it gets until we get native ZFS on Unraid!

  • Built zfs-2.0.0-rc7 for unRAID-6.8.3 & 6.9.0-beta35   Great to see that unRAID is finally adding native ZFS so this might be one of the last builds from me   And yes, i´m alre

Posted Images

  • 4 weeks later...

Steini, I just discovered this plugin... really want to use it. But, I am at at current release:

 

kernel: Linux version 4.4.23-unRAID (root@develop64) (gcc version 5.3.0 (GCC) ) #1 SMP PREEMPT Sat Oct 1 13:41:00 PDT 2016

 

I am sure it is a pain to do this each time, but can you compile again vs. current 6.2.1?

 

 

  • Author

No pain at allt. Just had a baby so I have not been keeping up with the releases. Thanks for the heads up, will compile in a few hours [emoji482]

 

 

Sent from my iPhone using Tapatalk

  • 2 weeks later...

@steini84: did you make any progress in putting together a tutorial for compiling zfs and spl for new kernels? I mistakenly updated to new kernel and cannot access my pool now. Maybe a few high-level bullet points could help steer me in the right direction?

 

While I'm new to the forum, I'm not new to unRAID, ZFS or Linux.

 

There are really good performance tests over at http://www.phoronix.com/ but for me it's more about stability and usability (snapshots replication etc that fits my workflow)

 

When unRaid is updated you have to wait for a plugin update. I try to update the plugin as fast as I can, but sometimes it can be a couple of days. If you accidentally update the worst thing that happens is that your Zfs pool won't be imported and the data the won't be accessible until a plugin update is pushed. In my setup that would mean all my dockers and vms.

 

I wanted to wait for 6.1 final before writing a complete how to for Zfs on unRaid, but if there was any interest I could get on that right away.

 

 

Sent from my iPhone using Tapatalk

  • Author

I have updated the plugin for 6.3 rc3 (kernel 4.8.4)

 

But compiling is pretty easy. Here is a rough guide for building the packages:

 

First off download this awesome script from gfjardim

wget https://gist.githubusercontent.com/gfjardim/c18d782c3e9aa30837ff/raw/224264b305a56f85f08112a4ca16e3d59d45d6be/build.sh

Change this line from:
LINK="https://www.kernel.org/pub/linux/kernel/v3.x/linux-${KERNEL}.tar.xz"
to 
LINK="https://www.kernel.org/pub/linux/kernel/v4.x/linux-${KERNEL}.tar.xz

using:
nano build.sh
then make it executable
chmod +x build.sh

run it with 
./build.sh

answer 1, 2 & 3 with Y
answer 3.1, 3.2 with N
answer 3.3 with Y
answer 4 and 6 with N

then make the modules that are needed:
cd kernel
make modules

Then we need to build some dependencies

#Libuuid
wget "http://downloads.sourceforge.net/project/libuuid/libuuid-1.0.3.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flibuuid%2F&ts=1453068148&use_mirror=skylink"
tar -xvf libuuid*
cd libuuid-1.0.3
./configure
make 
make install

#Zlib
wget http://zlib.net/zlib-1.2.8.tar.gz
tar -xvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make 
make install

Then we build zfs and spl

First download the latest zfs and spl from zfsonlinux.org

wget https://github.com/zfsonlinux/zfs/releases/download/zfs-0.6.5.8/spl-0.6.5.8.tar.gz
tar -xvf spl-0.6.5.8.tar.gz
cd spl-0.6.5.8

./configure --prefix=/usr
make
make install DESTDIR=$(pwd)/PACKAGE
cd $(pwd)/PACKAGE
makepkg -l y -c n ../spl.tgz
installpkg ../spl.tgz

load the module

depmod
modprobe spl

Same for zfs
wget https://github.com/zfsonlinux/zfs/releases/download/zfs-0.6.5.8/zfs-0.6.5.8.tar.gz
tar -xvf zfs-0.6.5.8.tar.gz
cd zfs-0.6.5.8

./configure --prefix=/usr
make
make install DESTDIR=$(pwd)/PACKAGE
cd $(pwd)/PACKAGE
makepkg -l y -c n ../zfs.tgz
installpkg ../zfs.tgz

depmod
modprobe zfs

Awesome..thanks! I'll take a look at the script too.

 

I have updated the plugin for 6.3 rc3 (kernel 4.8.4)

 

But compiling is pretty easy. Here is a rough guide for building the packages:

steini84, Congratulations!!! best of times with the new born!

 

I'm using 6.2.2, do you have a compiled version for it?

 

Another thing I'm facing, I have napp-it as an ESXi guest.

It had a SAS card passedthrough and used 4 1TB HDDs to get a total of 1TB.

 

I can't load the old VM, can I use you'r plugin to setup my pool as it was? without rebuilding the pool?

 

Thanks, and congrats!

  • Author

First of all thanks :)

 

I did not even realize that 6.2.2 was out, i thought regjc01 had updated to the new 6.3 RC - I have to setup notifications when a new release is out!

 

No worries I can compile it now and upload later tonight.

 

About your napp-ip VM.. if you dont have a newer version of zfs that is in zfs on linux you should be able to import it no problem. The plugin tries to mount all pools on startup. Try that and if that does not work you can try zpool import -a or zpool import [poolname]

Thanks.

 

Can't remember the version I had, but it was a napp-it dist from 2013 I think...

 

I'll wait for the 6.2.2 version, how do I get it specifically?

  • Author

Thanks.

 

Can't remember the version I had, but it was a napp-it dist from 2013 I think...

 

I'll wait for the 6.2.2 version, how do I get it specifically?

It's already uploaded - just press "check for updates" in the unRAID plugin manager

Worked like a charm!

 

Had to zpool import -a -f and THAT IS IT!

 

Thank you!!!

steini84, The pool is set on /pool01 (when I did zpool import -a)

 

How do I change it to /mnt/zfs

 

I don't want to break it :)

  • Author

Of the top of my mind you should do:

zpool export pool01

zfs set mountpoint=/mnt/zfs pool01

zpool import pool01

 

If you run into any problems (like pool busy) pm me and I will get back to you when I'm on a computer tomorrow.

 

 

Sent from my iPhone using Tapatalk

It was close :)

 

zpool export pool01

zpool import -R /mnt/zfs pool01

 

will do: /mnt/zfs/pool01

 

  • Author

If you set the mountpoint it will be permanent

 

 

Sent from my iPhone using Tapatalk

  • 2 weeks later...
  • 4 weeks later...

Does this need fstrim to be run on it daily?

 

E: This may be relevant: https://github.com/zfsonlinux/zfs/pull/3656

 

E2: I have successfully built this using the vbatts/slackware container as a basis, with the following packages from Slackware64 14.1:

 

attr-2.4.46-x86_64-1.txz
autoconf-2.69-noarch-1.txz
automake-1.11.5-noarch-1.txz
bc-1.06.95-x86_64-2.txz
ca-certificates-20160104-noarch-1.txz
curl-7.31.0-x86_64-1.txz
cyrus-sasl-2.1.23-x86_64-5.txz
gcc-4.8.2-x86_64-1.txz
gcc-g++-4.8.2-x86_64-1.txz
git-1.8.4-x86_64-1.txz
glibc-2.17-x86_64-7.txz
kernel-headers-3.10.17-x86-3.txz
less-451-x86_64-1.txz
libmpc-0.8.2-x86_64-2.txz
libtool-2.4.2-x86_64-2.txz
m4-1.4.17-x86_64-1.txz
make-3.82-x86_64-4.txz
perl-5.18.1-x86_64-1.txz
zlib-1.2.8-x86_64-1.txz

 

And the following from Slackware64 14.2, due to a bug in how the Git package was built:

 

cyrus-sasl-2.1.26-x86_64-1.txz

 

Begin by preparing a kernel directory, which involves fetching a matching kernel's source package, applying all patches from unRAID's /usr/src, and copying any new files. Then make oldconfig and make to build it, and you'll have a tree for the Slackbuild packages for spl-solaris and zfs-on-linux.

 

You'll also need to follow the comment I posted at the bottom of the train at that pull request, since it outlines an spl commit that's not in master yet, to rebase the ntrim branch against. Otherwise, rebase the zfs tree against upstream/master, which is github.com/zfsonlinux/zfs.git.

 

Then:

 

LINUXROOT=/root/linux-whatever ./spl-solaris.SlackBuild

 

Then the zfs-on-linux.SlackBuild needs to be modified to pass a --with-spl=/tmp/SBo/spl-your-version.

 

E3: Now running spl:master and zfs:ntrim on unRAID 6.3.0-rc6. Fine so far, but benches slightly slower. Strange.

 

Alternative to echoing stuff to /sys config variables is to create a full zfs.conf of settings to apply, depending on which types of devices you'll be pooling, and copying that to /etc/modprobe.d before modprobe zfs.

  • 1 month later...

Maybe I'm just too new with unraid or zfs, but I can't seem to figure out how to utilize the zpool.

I'm able to manage the pool, and see that all the disks I assigned are "zfs members" in the 'Main' tab on unraid.

 

How can I access the pool and share it? Or alternatively access it from my VMs?

 

***EDIT***

I've managed to figure it out! Probably very inefficient (or maybe not) but I've managed to use a bound mountpoint to point to my zpool within a share.

If anyone has suggestion on something better, let me know.

 

Thank you so much steini84 for making this awesome plugin!

  • Author

Good that you figured it out, but a better way would be to add a mountpoint.

 

Normally ZFS pools are mounted automatically on the root of the file system - for example a pool named tank is mounted at /tank

 

To easily use it in unraid you would want to mount it under /mnt/tank

 

You can do that with

 

zfs set mountpoint=/mnt/tank tank

 

Read more here -> http://docs.oracle.com/cd/E19253-01/819-5461/gaztn/

I'll give that a shot once I get off work today.

 

So if I set the zfs mountpoint to /mnt/<tank>, will unRAID supply the directory as a share? Or do I need to manually create one?

 

 

 

  • Author

You need to manually crate the share since unraid does not integrate with ZFS by default.

 

I guess via smb.conf - maybe you will find something in the documentation.

 

 

Sent from my iPhone using Tapatalk

Looks like samba was the way to go! Can't believe I didn't look there first...  :-\

 

I ended up using the /boot/config/smb-extra.conf to add the share since it was removed upon reboot from the smb.conf file.

 

Thanks again!

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

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.