Unionfilesystem Plugin

  • Sorry, I was referring to the mount settings. Others have benchmarked mergerfs and found it had a higher throughput. Of course there are a lot of variables involved but I was curious about the mergerfs settings.


    At some point I need to create a simple benchmark test I can run to test setting impact.

  • Mount settings= fstab? if yes I copy paste mine, but I never edit by hand this file .
    Is created by OMV, if you identify something wrong please tell me how to correct.


  • I'm not familiar with OMV or the plugin so I didn't realize it was selecting settings for you.


    defaults is what I was looking for. It sets up some configuration which seem to provide the best performance.


    Thanks. For the time being that setup is optimal.

  • Is there anything I can do, besides reinstalling the plugin or clearing the browser cache several times, to get mergerfs in the drop-down menu? The version of omv-extras is 2.8 and from the unionfilesystem plugin 2.1
    Thanks

    • Official Post

    Did you install the mergerfs package? Right now, it is just a recommended package so it will not be installed. The plugin does not list it if it is not installed.

    omv 6.0.46-5 Shaitan | 64 bit | 5.19 proxmox kernel | plugins :: omvextrasorg 6.1.1 | kvm 6.2.5 | mergerfs 6.3.3 | zfs 6.0.12
    omv-extras.org plugins source code and issue tracker - github


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • If the plugin is installed properly MergerFS should show up as an option regardless of whether or not you have the underlying deb installed. If you don't, it will just fail to create the pool when you try to do so with the plugin GUI.

    • Official Post

    If the plugin is installed properly MergerFS should show up as an option regardless of whether or not you have the underlying deb installed. If you don't, it will just fail to create the pool when you try to do so with the plugin GUI.


    Ummm... No (maybe with 1.8). The latest version of the plugin enumerates the backends and tests to see if it can execute the command before it will list in the web interface. So, if you are using 2.1 of the plugin and mergerfs is not installed, you will not see it in the list.


    2.1 is in the regular repo now.

    omv 6.0.46-5 Shaitan | 64 bit | 5.19 proxmox kernel | plugins :: omvextrasorg 6.1.1 | kvm 6.2.5 | mergerfs 6.3.3 | zfs 6.0.12
    omv-extras.org plugins source code and issue tracker - github


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

    • Official Post

    The version I was testing was 1.9 I think. In that case, it did, both with an upgrade to the 1.8 plugin, and on a fresh install. But as you say it is moot with the new version.


    In the first question by snook, he specifically said he was using 2.1.

    omv 6.0.46-5 Shaitan | 64 bit | 5.19 proxmox kernel | plugins :: omvextrasorg 6.1.1 | kvm 6.2.5 | mergerfs 6.3.3 | zfs 6.0.12
    omv-extras.org plugins source code and issue tracker - github


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • Hi, thanks for the good works on OMV and Plug-ins.
    This is my first Post here, I hope I'm right.


    Sorry for my English, I will try my best.
    Ihr könnt auch in Deutsch antworten, wäre mir lieber.
    Answer in German would be nice. :)


    ================================================================================
    = OS/Debian information
    ================================================================================
    Distributor ID: debian
    Description: Debian GNU/Linux 7 (wheezy)
    Release: 7.9
    Codename: wheezy
    ================================================================================
    = openmediavault information
    ================================================================================
    Release: 2.1.18
    Codename: Stone burner
    ================================================================================
    = Date
    ================================================================================
    Tue Nov 17 22:59:11 CET 2015
    ================================================================================
    = Locale
    ================================================================================
    de_DE.UTF-8
    ================================================================================
    = System information
    ================================================================================
    Linux nx-02 3.16.0-0.bpo.4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6~bpo70+1 (2015-11-11) x86_64 GNU/Linux
    ================================================================================
    omvextrasorg 2.8
    snapraid 1.5
    unionfilesystems 2.1



    I use mhddfs, update all to latest(in webgui), use backportskernel
    Since the last update a few days ago, I think it was also unionfilesystem updated.
    I think the unionfilesystems plug-in write to fstab is broken/not functional.


    I added a new Disk to my NAS and format the drive.
    I would added the new disk to pool after mount the new fs -> in webgui appears an Error, like:/media/fbf2ee76-a1a4-4423-b1f8-f5a0160ebfbd in fstab or mtab not found ... ,
    and asks again for saving the settings, and again... the pool was also no longer mounted.
    /media/fbf2ee... is the mhddfs pool


    I don't complete remember the order of first steps.


    I go to the union-filesystem tab and open the pool to edit, then it shows in webgui all old pool-disks marked and the mlimit is 4G, I remeber it was about 50G or 55G!?


    Look into /etc/fstab shows this:
    mhddfs#/media/9c73c93c-8032-4a21-a095-2f7ae20aa016,/media/1feaac4d-02ff-42be-9e15-134a05eca07e,/media/e9efd326-2a9c-40f8-a8f0-fa2da5e36978 fuse defaults,allow_other,mlimit=0G 0 0


    I saved the settings mlimit 55G in webgui then this in fstab:
    mhddfs#/media/9c73c93c-8032-4a21-a095-2f7ae20aa016,/media/1feaac4d-02ff-42be-9e15-134a05eca07e,/media/e9efd326-2a9c-40f8-a8f0-fa2da5e36978 fuse defaults,allow_other,mlimit=mlimit=55G 0 0


    Then I google for the correct mount-command and mount it manually - now, in webgui filesystems is it correct mounted.
    In fstab entry, I see, is missing the pool-mountpoint and mlimit=mlimit=55G is also false.
    In webgui it shows right 55G.


    I found the file 15mhddfs under /usr/share/openmediavault/mkconf/fstab.d/
    Starting with the mlimit it seems to be easy to fix.
    In this lines:


    45 # Get filesystem specific mount options.
    46 mlimit="mlimit=$(omv_config_get "${pool_xpath}/options/mhddfs_mlimit")"
    47
    48 # Combine keys and values.
    49 mlimit="mlimit=${mlimit}"


    I changed line 46 to: mlimit="$(omv_config_get "${pool_xpath}/options/mhddfs_mlimit")"
    saves it and in fstab was it right: mlimit=55G.


    But the mountpoint was missing, not so easy.


    This lines looks interesting:


    38 branches="$(omv_config_get "${pool_xpath}/branches/mntentref")"
    39 mntentref=$(omv_config_get "${pool_xpath}/mntentref")
    40 mount_point=$(omv_unionfilesystems_get_mount_point ${mntentref})


    I'm wondering about the different quotes in branches= and mntentref= (line 38 and 39).
    I testing the variables: branches= gives the right id's of each drive e.g. 9c73c93c-8032-4a21-a095-2f7ae20aa016 for disk1 ...
    mntentref= was empty, also mount_point= was empty.


    I know, in my case, the mount_point for pool must be /media/fbf2ee76-a1a4-4423-b1f8-f5a0160ebfbd
    Searching this in the /etc/openmediavault/config.xml > the Path "${pool_xpath}/branches/mntentref" contains the pooled drives uuid's and "${pool_xpath}/mntentref" doesn't exist, but in "${pool_xpath}/uuid" is the needed value.


    Then I changed this to:
    39 mntentref="$(omv_config_get "${pool_xpath}/uuid")"


    hmm, I need the mountpoint
    in /usr/share/openmediavault/scripts/unionfilesystems-helper-functions found this:


    function omv_unionfilesystems_get_mount_point
    {
    omv_config_get "//system/fstab/mntent[uuid='${1}']/dir"
    }


    searching again in config.xml:
    under //system/fstab/mntent/ this: <uuid>2e2e73fb-ac93-4dd2-b22b-756928348224</uuid> <fsname>fbf2ee76-a1a4-4423-b1f8-f5a0160ebfbd</fsname> and <dir>/media/fbf2ee76-a1a4-4423-b1f8-f5a0160ebfbd</dir>


    I changed in this function [uuid='${1}'] to [fsname='${1}']
    Now it works for the mount_point, but the branches was broken, this function is shared:
    # omv_unionfilesystems_get_mount_point mntentref
    # Returns the mount point for a given mntentref.


    Finally I create another new function:
    function omv_unionfilesystems_get_mount_point_pool
    {
    omv_config_get "//system/fstab/mntent[fsname='${1}']/dir"
    }


    and in /usr/share/openmediavault/mkconf/fstab.d/15mhddfs replace the function with:
    40 mount_point=$(omv_unionfilesystems_get_mount_point_pool ${mntentref})


    And it worked for me!


    I'm testing this, edit the old pool to two Disks and create a new pool with the others.
    The new pool has new uuid, and mounted correctly.


    I only edit mhddfs, possible changes in aufs or mergerfs should be in mind.
    I know, its not a fix but a workaround for me.


    Maybe the error lies elsewhere.
    A Plug-in Developer should be check this.


    Thanks, I hope its readable and helpful.
    Billie_30

    OMV 2.1.19 | SnapRaid/MHDDFS | 5x4TB Seagate NAS(Daten)+2x4TB Toshiba(Parity) | G3250/Z87/8GB

    • Official Post

    Thanks for pointing this out. @HK-47 should have a look at this.

    omv 6.0.46-5 Shaitan | 64 bit | 5.19 proxmox kernel | plugins :: omvextrasorg 6.1.1 | kvm 6.2.5 | mergerfs 6.3.3 | zfs 6.0.12
    omv-extras.org plugins source code and issue tracker - github


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

    • Official Post

    Update 2.2 in repo now.

    omv 6.0.46-5 Shaitan | 64 bit | 5.19 proxmox kernel | plugins :: omvextrasorg 6.1.1 | kvm 6.2.5 | mergerfs 6.3.3 | zfs 6.0.12
    omv-extras.org plugins source code and issue tracker - github


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • I'm happy that I could help.
    The changes on Github looks good.
    I'll Install the update and check.

    OMV 2.1.19 | SnapRaid/MHDDFS | 5x4TB Seagate NAS(Daten)+2x4TB Toshiba(Parity) | G3250/Z87/8GB

  • Can you add the fstab options "nonempty" and "direct_io" to the mergerfs plugin ?
    So its selectable in the unionfs plugin and nobody has to edit fstab manual.


    I ask because i added this options to my fstab and after todays update it got overwritten.


    Thanks

  • I freshly installed OMV today, so I'm running OMV 2.1, openmediavault-omvextrasorg 2.9 and openmediavault-unionfilesystems 2.2.
    I want to use mergerfs, but it doesn't appear in the dropdown list. What do I have to do now?

  • *EDIT*:
    Doing

    Code
    wget https://github.com/trapexit/mergerfs/releases/download/2.8.0/mergerfs_2.8.0.ubuntu-trusty_amd64.deb
    dpkg -i mergerfs*.deb


    results in a dependency problem: libc6 has to be >=2.14 but OMV has only 2.13-38+deb7u8 installed.
    What now?

    • Official Post

    Bad idea. Never install ubuntu packages unless you know they will work. You might need to dpkg -r the package now.


    The package you need is in the omv-extras testing repo. Enable it and then: apt-get install mergerfs

    omv 6.0.46-5 Shaitan | 64 bit | 5.19 proxmox kernel | plugins :: omvextrasorg 6.1.1 | kvm 6.2.5 | mergerfs 6.3.3 | zfs 6.0.12
    omv-extras.org plugins source code and issue tracker - github


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!