• Unraid OS version 6.12.0-rc4.1 available


    limetech

    Please refer to the 6.12.0-rc1 topic for a general overview.

     


    Version 6.12.0-rc4.1 2023-04-27

    Fixes bug in bind-mount when share names contain spaces.

    Version 6.12.0-rc4 2023-04-27

    New in this release is a conceptual change in the way storage is assigned to shares. Normally such a change would not happen in an -rc series; however, in this case the under-the-hood coding was minimal. The concept outlined below is something we planned on introducing in the Unraid OS 6.13 cycle. We decided to introduce this change now because of increased interest in Unraid OS now that ZFS is supported.

    The old concept of main storage being the unRAID array with an optional "Cache" is confusing to many new users, especially since cache has a specific meaning in ZFS.

    Also outlined below, we introduced the concept of an exclusive share. This is simply a share where all the data exists in a single named pool. In this case we set up a bind-mount, bypassing the FUSE-based User Share file system. This feature is primarily aimed at maximizing I/O for large fast ZFS pools accessed via a fast network

    Share storage conceptual change

    Configuring the storage options for a share is specified using two inputs:

    • Primary storage
    • Secondary storage

    Primary storage is where new files/folders are created. If Primary storage is below the Minimum Free Space setting then new files and folders will be created in Secondary storage, if configured.

    Each input presents a drop-down which lists "array", "none", and each named pool as a selection according to some configuration rules:

    For the Primary storage drop-down:

    • the "none" option is omitted, ie, Primary storage must be selected
    • any named pool can be selected
    • "Array" can be selected (meaning the unRAID array)

    For the Secondary storage drop-down:

    • the "none" option is included, ie, Secondary storage is optional
    • if Primary storage is a pool name, then the only options are "none" and "Array"
    • if Primary storage is "Array", then only "none" appears as an option

    When "Array" is selected for either Primary or Secondary storage, a set of additional settings slide in:

    • Allocation method
    • Included disk(s)
    • Excluded disk(s)
    • Split level

    When a btrfs named pool is selected for either Primary or Secondary storage, an additional setting slides in:

    • Enable Copy-on-write

    When a ZFS named pool is selected for either Primary or Secondary storage, there are no additional settings at this time but there could be some in the future. For example, since a share is created as a ZFS dataset, it could have a different compression setting than the parent pool if we need to implement this.

    Mover action

    When there is Secondary storage configured for a share the "Mover action" setting becomes enabled, letting the user select the transfer direction of the mover:

    • Primary to Secondary (default)
    • Secondary to Primary

    Exclusive shares

    If Primary storage for a share is a pool and Secondary storage is set to "none", then we can set up a bind-mount in /mnt/user/ directly to the pool share directory. (An additional check is made to ensure the share also does not exist on any other volumes.) There is a new status flag, 'Exclusive access' which is set to 'Yes' when a bind-mount is in place; and, 'No' otherwise. Exclusive shares are also indicated on the Shares page.

    The advantage of setting up a bind-mount is that I/O bypasses FUSE-based user share file system (shfs) which can significantly increase performance.

    There are some restrictions:

    • Both the share Min Free Space and pool Min Free Space settings are ignored when creating new files on an exclusive share.
    • If there are any open files, mounted loopback images, or attached VM vdisk images on an exclusive share, no settings for the share can be changed.
    • If the share directory is manually created on another volume, files are not visible in the share until after array restart, upon which the share is no longer exclusive.

    Change Log vs. 6.12.0-rc3

    Linux kernel

    • version: 6.1.26

    Misc

    • avahi: enable/disable IPv4/IPv6 based on network settings
    • webgui: DeviceInfo: show shareFloor with units
    • webgui: DeviceInfo: added automatic floor calculation
    • webgui: Added autosize message
    • webgui: Shares: added info icon
    • webgui: Updated DeviceInfo and Shares page [explain]
    • webgui: Fix network display aberration.
    • webgui: Auto fill-in minimum free space for new shares
    • webgui: feat(upc): update to v3 for connect
    • webgui: Share/Pool size calculation: show and allow percentage values
    • webgui: VM manager: Make remote viewer and web console options selectable.
    • webgui: VM manager: Option to download .vv file and start remote viewer is browser set to open file .vv when downloaded.
    • webgui: VM manager: Add remote viewer console support
    • webgui: VM manager: Remove-lock-posix='on'-flock='on'/-

    Base Distro

    • openzfs: version 2.1.11

    Version 6.12.0-rc3 2023-04-14

    Upgrade notes

    If you created any zpools using 6.12.0-beta5 please Erase those pools and recreate.

    If you revert back from 6.12 to 6.11.5 or earlier, you have to force update all your Docker containers and start them manually after downgrading. This is necessary because of the underlying change to cgroup v2 in 6.12.0-rc1.

    Upon boot, if all PCI devices specified in 'config/vfio-pci.cfg' file do not properly bind, VM Autostart is prevented. You may still start individual VMs. This is to prevent Unraid host crash if hardware PCI IDs changed because of a kernel update or physical hardware change. To restore VM autostart, examine '/var/log/vfio-pci-error' and remove offending PCI IDs from 'config/vfio-pci.cfg' file and reboot.

    Linux Multi-Gen LRU is a relatively new feature now included but not enabled by default. You can enable by adding this line to your 'config/go' file:

    echo y > /sys/kernel/mm/lru_gen/enabled

    If you revert back from 6.12 to 6.11.5 or earlier you many need to remove that line.

    Obsolete/Broken Plugins

    There are a few plugins which are known to be incompatible with Unraid 6.12, and upon boot will not be installed. You will get a notification for each plugin that is affected, and can review the list by going to Plugins/Plugin File Install Errors.

    • disklocation-master version 2022.06.18 (Disk Location by olehj, breaks the dashboard)
    • plexstreams version 2022.08.31 (Plex Streams by dorgan, breaks the dashboard)
    • corsairpsu version 2021.10.05 (Corsair PSU Statistics by Fma965, breaks the dashboard)
    • gpustat version 2022.11.30a (GPU Statistics by b3rs3rk, breaks the dashboard)
    • ipmi version 2021.01.08 (IPMI Tools by dmacias72, breaks the dashboard)
    • nut version 2022.03.20 (NUT - Network UPS Tools by dmacias72, breaks the dashboard)
    • NerdPack version 2021.08.11 (Nerd Tools by dmacias72)
    • upnp-monitor version 2020.01.04c (UPnP Monitor by ljm42, not PHP 8 compatible)
    • ZFS-companion version 2021.08.24 (ZFS-Companion Monitor by campusantu, breaks the dashboard)

    Some of the affected plugins have been taken over by different developers, we recommend that you go to the Apps page and search for replacements. Please ask plugin-specific questions in the support thread for that plugin.

    ZFS Pools

    New in this release is the ability to create a ZFS file system in a user-defined pool. In addition you may format any data device in the unRAID array with a single-device ZFS file system.

    We are splitting full ZFS implementation across two Unraid OS releases. Initial support in this release includes:

    • Support raid0, mirror, raidz1, raidz2 and raidz3 root profiles. Up to 4-way mirror in a mirror vdev. Multiple vdev groups.
    • Support removing single device: if device still present in server, 'wipefs' is used to clear the partition table.
    • Support replacing single missing device with a new device of same or larger size.
    • Support scheduled trimming of ZFS pools.
    • Support pool rename.
    • Pool names must begin with a lowercase letter and only contain lowercase letters, digits, the underscore and dash. Pool names must not end with a digit.
    • Non-root vdev cannot be configured in this release, however, they can be imported. Note: imported hybrid pools may not be expanded in this release.
    • Pools created on other systems may or may not import depending on how the the pool was created. A future update will permit importing pools from any system.

    A ZFS pool has three variables:

    • profile - the root data organization: raid0, mirror (up to 4-way), raidz1, raidz2, raidz3
    • width - the number of devices per root vdev
    • groups - the number of root vdevs in the pool

    At time of ZFS pool creation, the webGUI will present all topology options based on the number of devices assigned to the pool.

    Special treatment for root single-vdev mirrors:

    • A single-device ZFS pool can be converted to multiple-device mirror by adding up to 3 additional devices in one operation.
    • A 2-device mirror can be increased to 3-device by adding a single device; similarly a 3-device mirror can be increased to 4-device mirror by adding a single device.

    To add an additional root vdev, you must assign 'width' number of new devices to the pool at the same time. The new vdev will be created with the same 'profile' as the existing vdevs. Additional flexibility in adding/expanding vdevs will be provided in a future update.

    Pools created with the steini84 plugin can be imported as follows: First create a new pool with the number of slots corresponding to the number of devices in the pool to be imported. Next assign all the devices to the new pool. Upon array Start the pool should be recognized, though certain zpool topologies may not be recognized (please report).

    Mixed topologies are not supported. For example, a pool with both a mirror root vdev and a raidz root vdev is not recognized.

    Autotrim can be configured as on or off (except for single-device ZFS volumes in the unRAID array).

    Compression can be configured as on or off, where on selects lz4. Future update will permit specifying other algorithms/levels.

    When creating a new ZFS pool you may choose zfs - encrypted, which, like other encrypted volumes, applies device-level encryption via LUKS. ZFS native encryption is not supported at this time.

    During system boot, the file /etc/modprobe.d/zfs.conf is auto-generated to limit the ZFS ARC to 1/8 of installed memory. This can be overridden if necessary by creating a custom 'config/modprobe.d/zfs.conf' file. Future update will include ability to configure the ARC via webGUI, including auto-adjust according to memory pressure, e.g., VM start/stop.

    Top-level user shares in a ZFS pool are created as datasets instead of ordinary directories.

    btrfs pools

    Autotrim can be configured as on or off when used in a pool.

    Compression can be configured as on or off. on selects zstd. Future update to permit specifying other algorithms/levels.

    xfs

    Autotrim can be configured as on or off when used as a single-slot pool.

    Docker

    It is possible to configure the Docker data-root to be placed in a directory on a ZFS storage pool. In this case Docker will use the 'zfs' storage driver. This driver creates a separate dataset for each image layer. Because of this, here is our recommendation for setting up Docker using directory:

    First, create a docker user share configured as follows:

    • Share name: docker
    • Use cache pool: Only
    • Select cache pool: name of your ZFS pool

    Next, on Docker settings page:

    • Enable docker: Yes
    • Docker data-root: directory
    • Docker directory: /mnt/user/docker

    If you ever need to delete the docker persistent state, then bring up the Docker settings page and set Enable docker to No and click Apply. After docker has shut down click the Delete directory checkbox and then click Delete. This will result in deleting not only the various files and directories, but also all layers stored as datasets.

    Before enabling Docker again, be sure to first re-create the docker share as described above.

    Other changes:

    • CreateDocker: changed label Docker Hub URL to Registry URL because of GHCR and other new container registries becoming more and more popular.
    • Honor user setting of stop time-out.
    • Accept images in OCI format.
    • Add option to disable readmore-js on container table
    • Fix: Docker Containers console will not use bash if selected

    VM Manager

    If you enable copy/paste for virtual consoles you need to install additional software on the client in addition to the QEMU agent if that has been installed. Here is the location for spice-vdagent for both Windows and Linux. Note copy/paste function will not work with web spice viewer you need to use virt-viewer.

    • Add Serial option to vdisk.
    • Spice Bug fix for users with non standard GUI ports defined.
    • OVMF for QEMU: version stable202302
    • Fix for bus text.
    • Enable copy paste option for virtual consoles
    • Update Memory Backup processing for Virtiofs.
    • Fix lockup when no VMs are present
    • Add support for rtl8139 network model.
    • fix translation omission
    • added lock/unlock for sortable items
    • Fix for Spice Mouse if Copy paste enabled.

    Dashboard

    The webGUI Dashboard has been redesigned and it is now possible to move elements (tiles) up and down and between columns. This allows the user to organize the tiles in any way they desire. There is a small lock icon on the menu bar which must be clicked to enable this function.

    Note: The lock icon also appears on the Docker and VM pages and must be clicked to rearrange the startup order.

    Release bz file differences

    Unraid OS is comprised of a set of 5 so-called bz files in the root of the USB Flash boot device:

    • bzimage - the Linux kernel
    • bzroot - the root file system, sans console desktop
    • bzroot-gui - additional files needed for console desktop
    • bzmodules - modules (drivers) associated with the Linux kernel
    • bzfirmware - device firmware required by certain modules

    Starting with 6.12 release, the content of these files has been rearranged:

    • bzimage - the Linux kernel (same as before)
    • bzroot - the root file system excluding the /usr directory tree
    • bzroot-gui - a single file which auto-starts the console desktop (for compatibility)
    • bzmodules - modules (drivers) associated with the Linux kernel and device firmware required by certain modules
    • bzfirmware - the /usr directory and all files contained therein, including console desktop

    The results of this change is to speed up the boot process and free up nearly 1G of RAM. It also permits us to add more "stuff" to Unraid OS in the future without requiring more RAM. Finally, when booted in non-GUI mode, the desktop can be started by logging in at the console and typig the 'slim' command.

    The files bzfirmware and bzmodules are squashfs images mounted using overlayfs at /usr and /lib respectively. Since these files are loopback-mounted, care must be taken if ever you want to perform a manual update.

    What is a manual update? This is a method of updating Unraid OS on your USB flash boot device without using the Tools/Update OS function. Typically one would either:

    • open a Terminal window, wget the release zip file, unzip the release, and then 'cp' the bz files to root of the boot device.

    or

    • export the 'flash' share on your network and drag the bz files from a PC directly to the flash.

    Either method, starting with 6.12 can fail because the bzfirmware file will be overwritten while it is still mounted - not good.

    To get around this, you must first create a temp directory on the flash device and then 'mv' (or drag) all the bz files to this temp directly. Now you can copy the new bz files in place and reboot.

    Linux kernel

    • version 6.1.23
    • md/unraid: version 2.9.27
    • CONFIG_FS_DAX: File system based Direct Access (DAX) support
    • CONFIG_VIRTIO_FS: Virtio Filesystem
    • CONFIG_ZONE_DEVICE: Device memory (pmem, HMM, etc...) hotplug support
    • CONFIG_USBIP_HOST: Host driver
    • CONFIG_INTEL_MEI: Intel Management Engine Interface
    • CONFIG_INTEL_MEI_ME: ME Enabled Intel Chipsets
    • CONFIG_INTEL_MEI_GSC: Intel MEI GSC embedded device
    • CONFIG_INTEL_MEI_PXP: Intel PXP services of ME Interface
    • CONFIG_INTEL_MEI_HDCP: Intel HDCP2.2 services of ME Interface
    • CONFIG_INTEL_PMC_CORE: Intel PMC Core driver
    • CONFIG_DRM_I915_PXP: Enable Intel PXP support
    • CONFIG_SCSI_FC_ATTRS: FiberChannel Transport Attributes
    • CONFIG_FUSION_SPI: Fusion MPT ScsiHost drivers for SPI
    • CONFIG_FUSION_FC: Fusion MPT ScsiHost drivers for FC
    • CONFIG_FUSION_CTL: Fusion MPT misc device (ioctl) driver
    • CONFIG_FUSION_LOGGING: Fusion MPT logging facility
    • CONFIG_X86_AMD_PSTATE: AMD Processor P-State driver
    • CONFIG_LRU_GEN: Multi-Gen LRU
    • CONFIG_SERIAL_8250_NR_UARTS=32: Maximum number of 8250/16550 serial ports
    • CONFIG_SERIAL_8250_RUNTIME_UARTS=4: Number of 8250/16550 serial ports to register at runtime

    Misc

    • cgroup2 now the default
    • loopback images no longer mounted using directio
    • upgradepkg patched to prevent replacing existing package with older version.
    • current PCI bus/device information saved in file '/boot/previous/hardware' upon Unraid OS upgrade.
    • NFS: enable UPD transport
    • emhttp: fix cache pool (null) syslog strings
    • emhttp: fix cache pool display wrong device size for selected replacement device
    • networking: fix nginx recognizing IP address from slow dhcp servers
    • mover: fix: improper handling of symlinks
    • mover: fix: Mover logging syslog entries format different from previous releases
    • plugin: Display Run command retval in error message
    • shfs: igonore top-level hidden directoris (names beginning with '.')
    • terminal: OpenTerminal: change termination signal (hard stop)
    • upgrade Unraid OS: check for earlier upgrade without reboot
    • VM Manager: let page load even when PCI devices appear missing or are misassigned
    • wireguard: add SSL support for WG tunnel IP addresses (myunraid.net wildcard certs only)
    • webgui: support PHP8, increase PHP max memory from 128M to 256M
    • webgui: ManagementAccess: Disable Provision/Renew/Upgrade buttons when no IP on eth0
    • webgui: ManagementAccess: Support wireguard local IP addresses in combination with myservers.unraid.net SSL cert
    • webgui: Move "view" icon on Main and Shares page to the left
    • webgui: Dashboard: fix regression error in "select case"
    • webgui: Dashboard: make items moveable between columns
    • webgui: Keep dismissed banners hidden for a month
    • webgui: Dashboard: API for adding custom tiles
    • webgui: Dashboard: rearrange processor information
    • webgui: Dashboard: rearrange UPS info
    • webgui: Dashboard: rearrange memory info
    • webgui: Dashboard: VPN header rearrangement
    • webgui: Dashboard: header rearrangements
    • webgui: Add jqueryUI touch punch for mobile devices
    • webgui: Changed ID to CLASS for elements occurring more than once
    • webgui: Make header in white and black themes scrollable
      • When more items are present than screen space, the user can now scroll through them (previously these items were invisible)
    • webgui: Dashboard and Docker: introduce lock button for sortable items
      • By default sortable items are locked, which allows mobile devices to scroll the page. Upon request items can be made sortable
    • webgui: Users: add icon to title bar
    • webgui: Tools: new function -> PHP Settings
      • View PHP info
      • Configure error reporting
      • Open LOG to see errors in real-time
    • webgui: System info: fix reading inactive ports
    • webgui: Plugin: Include the actual command, being executed
    • webgui: System info: cache enhancement
    • webgui: System info: memory enhancement
    • webgui: DeviceInfo: disable buttons when erase operation is running
    • webgui: Docker: filetree corrections
    • webgui: Fixed: Dashboard: show heat alarm per pool
    • webgui: Notifications: revised operation
      • Autoclose new notifications after 3 seconds
      • Fix notifications reappearing after closure
    • webgui: DeviceList: add FS type in offline state
    • webgui: Add notification agent for Bark
    • webgui: Main: hide browse icon when disk is not mounted
    • webgui: Diagnostics: add additional btrfs and zfs info
    • webgui: Dashboard: add ZFS memory usage
    • webgui: Revised New Permissions
      • Select either disks or shares (not both)
    • webgui: Add testparm to diagnostics
    • webgui: Support new UD reserved mount point of /mnt/addons
    • webgui: fix issue displaying Attributes when temperature display set to Fahrenheit
    • webgui: Dashboard changes:
      • lock the Dashboard completely: Editing/moving only becomes possible when unlocking the page
      • An empty column is refilled when the respective tiles are made visible again, no need to reset everything
      • added a visual "move indicator" on the Docker and VM page, to make clearer that rows can be moved now.
      • change cursor shape when moving is enabled
      • use tile title as index
    • webgui: fix: Local Firefox account pop-up postmessages not working
    • webgui: VM Manager: fix VM marked as Autostart not starting following manual array Start
    • webgui: SMART test cannot be run on a UD disk because there is no spin down delay selection
    • webgui: status footer stuck on "Starting services" when applying share config setting chagnes.
    • webgui: Fix table layout for orphan images
    • webgui: Plugin: Do not show update button if incompatible
    • webgui: OpenTerminal: limit clients
    • webgui: Context menu: automatic triangle placement
    • webgui: Dashboard: fix pool warnings
    • webgui: Allow SMART long test for UD
    • webgui: Read processor type from /proc/cpuinfo
    • webgui: CSS: solve scrollbar issue in firefox
    • webgui: plugin: Make wget percentage detection more robust
    • webgui: Add share: fix hidden share name check
    • webgui: Display settings: add missing defaults
    • webgui: Array Operation: prevent double clicking of Start button
    • wireguard: fix nginx issue when partial WireGuard config

    Base Distro

    • aaa_glibc-solibs: version 2.37
    • adwaita-icon-theme: version 43
    • at-spi2-core: version 2.46.0
    • bash: version 5.2.015
    • bind: version 9.18.12
    • btrfs-progs: version 6.2.1
    • ca-certificates: version 20221205
    • cryptsetup: version 2.6.1
    • curl: version 7.88.1
    • dbus: version 1.14.6
    • diffutils: version 3.9
    • dnsmasq: version 2.89
    • docker: version 20.10.23
    • e2fsprogs: version 1.47.0
    • encodings: version 1.0.7
    • file: version 5.44
    • firefox: version 111.0 (AppImage)
    • freetype: version 2.13.0
    • fuse3: version 3.12.0
    • gawk: version 5.2.1
    • git: version 2.39.2
    • glib2: version 2.74.6
    • glibc: version 2.37
    • glibc-zoneinfo: version 2022g
    • gnutls: version 3.7.9
    • gptfdisk: version 1.0.9
    • gtk+3: version 3.24.37
    • harfbuzz: version 7.1.0
    • htop: version 3.2.2
    • iproute2: version 6.2.0
    • iptables: version 1.8.9
    • iputils: version 20221126
    • less: version 612
    • libICE: version 1.1.1
    • libSM: version 1.2.4
    • libX11: version 1.8.4
    • libXau: version 1.0.11
    • libXcomposite: version 0.4.6
    • libXdamage: version 1.1.6
    • libXdmcp: version 1.1.4
    • libXpm: version 3.5.15
    • libXrandr: version 1.5.3
    • libXres: version 1.2.2
    • libXxf86dga: version 1.1.6
    • libarchive: version 3.6.2
    • libdrm: version 2.4.115
    • libfontenc: version 1.1.7
    • libglvnd: version 1.6.0
    • libjpeg-turbo: version 2.1.5.1
    • libpcap: version 1.10.3
    • libpng: version 1.6.39
    • libpsl: version 0.21.2
    • liburcu: version 0.14.0
    • libwebp: version 1.3.0
    • libxkbcommon: version 1.5.0
    • libxkbfile: version 1.1.2
    • libxshmfence: version 1.3.2
    • lmdb: version 0.9.30
    • logrotate: version 3.21.0
    • lsof: version 4.98.0
    • lz4: version 1.9.4
    • lzlib: version 1.13
    • mc: version 4.8.29
    • mcelog: version 191
    • mpfr: version 4.2.0
    • nano: version 7.2
    • ncurses: version 6.4
    • nginx: version 1.23.3
    • nghttp2: version 1.52.0
    • openssh: version 9.2p1
    • openssl: version 1.1.1t
    • openssl-solibs: version 1.1.1t
    • openzfs: version 2.1.9
    • pango: version 1.50.14
    • pciutils: version 3.9.0
    • pcre2: version 10.42
    • php: version 8.2.4
    • php-libvirt: version 0.5.7
    • php-markdown: version 2.0.0
    • samba: version 4.17.7
    • sqlite: version 3.41.0
    • sudo: version 1.9.13p2
    • sysstat: version 12.7.2
    • tdb: version 1.4.8
    • tevent: version 0.14.1
    • traceroute: version 2.1.2
    • transset: version 1.0.3
    • tree: version 2.1.0
    • usbutils: version 015
    • xcb-util: version 0.4.1
    • xdriinfo: version 1.0.7
    • xf86-video-vesa: version 2.6.0
    • xfsprogs: version 6.1.1
    • xhost: version 1.0.9
    • xinit: version 1.4.2
    • xkbcomp: version 1.4.6
    • xkeyboard-config: version 2.38
    • xorg-server: version 21.1.7
    • xprop: version 1.2.6
    • xrandr: version 1.5.2
    • xset: version 1.2.5
    • xterm: version 379
    • xz: version 5.4.1
    • zstd: version 1.5.4

     

    • Like 9



    User Feedback

    Recommended Comments



    I'm been a unraid customer since v5, love it and everytime it gets better! 
    To me unraid only need two things to get perfect after 6.12.0-rc4

     

    1. Able to have Primary Storage as Cache drive and Secondary storage as a Pool (zfs)

    2. Allow me to change the ZFS compression instead of lz4 to zstd as it resets everytime the array stops

    Keep the good work guys! 

    Link to comment
    47 minutes ago, Zonediver said:

    What impact does this change have on existing unraid arrays?

     

    Everything functions the same, this is conceptually a different way of looking at things to make it clear how cache pools interact with the array and the actions that mover takes. 

    • Like 3
    • Thanks 1
    Link to comment
    1 hour ago, mdrjr said:

    I'm been a unraid customer since v5, love it and everytime it gets better! 

    Thank you!

     

    1 hour ago, mdrjr said:

    1. Able to have Primary Storage as Cache drive and Secondary storage as a Pool (zfs)

    That's coming and will be implemented at same time we implement multiple unRAID pools - then everything is a pool :)

     

    1 hour ago, mdrjr said:

    2. Allow me to change the ZFS compression instead of lz4 to zstd as it resets everytime the array stops

    Everything I've read says 'lz4' is "better"... but sure we will implement a way to specify the algorithm.  Curious, what do you mean "it resets everytime array stops"?

    Link to comment
    29 minutes ago, limetech said:

    will be implemented at same time we implement multiple unRAID pools

     

    "unRAID pool" is the new name of the old unRAID array? And other pools are just "pools"?

     

    Edited by hawihoney
    Link to comment

    Since the upgrade, I am now getting a nonstop error from:

     

    Apr 27 15:35:40 unRAID emhttpd: error: malloc_share_locations, 5864: Operation not supported (95): getxattr: /mnt/user/Amazon Drive
    Apr 27 15:35:40 unRAID emhttpd: error: malloc_share_locations, 5864: Operation not supported (95): getxattr: /mnt/user/Time Machine

     

    unraid-diagnostics-20230427-1537.zip

    Link to comment
    11 minutes ago, hawihoney said:

    "unRAID pool" is the new name of the old unRAID array? And other pools are just "pools"?

     

    Let's not get ahead of ourselves : ) Today the unRAID array is "The Array". In the future it will be another type of pool along with zfs, btrfs, etc. But let's not confuse this thread with future talk. I'd suggest keeping an eye on the Uncast for discussions of what is coming:

       https://forums.unraid.net/forum/38-unraid-blog-and-uncast-show-discussion/ 

    • Like 2
    • Upvote 1
    Link to comment
    10 minutes ago, riduxd said:

    Since the upgrade, I am now getting a nonstop error from:

     

    Apr 27 15:35:40 unRAID emhttpd: error: malloc_share_locations, 5864: Operation not supported (95): getxattr: /mnt/user/Amazon Drive
    Apr 27 15:35:40 unRAID emhttpd: error: malloc_share_locations, 5864: Operation not supported (95): getxattr: /mnt/user/Time Machine

     

     

    Looks like somebody else reported this as well, here is the bug report:

      https://forums.unraid.net/bug-reports/prereleases/after-update-on-rc4-i-have-this-error-message-every-second-r2373/

     

    Link to comment

    What is the likelihood that an upcoming RC will have Linux kernel 6.2.x? Keen to start working with Intel Arc for transcoding :)

    Edited by jaimbo
    • Upvote 1
    Link to comment
    1 minute ago, jaimbo said:

    What is the likelihood that an upcoming RC will have Linux kernel 6.2.x? Keen to start working with Intel Arc for transcoding :)

     

    You can look forward to that coming in Unraid 6.13

    Link to comment

    Just discovered another issue.  If I set a share for my zfs pool and try to write that setup to other shares it puts them on "cache" instead...

    Link to comment
    10 minutes ago, custom90gt said:

    Just discovered another issue.  If I set a share for my zfs pool and try to write that setup to other shares it puts them on "cache" instead...

     

    This thread is great for discussing a release but not so good for keeping track of bug reports. It would be super helpful if you could create a new bug report, perhaps with screenshots to show what you mean.  Thanks!

    Link to comment
    1 hour ago, limetech said:

    Thank you!

     

    That's coming and will be implemented at same time we implement multiple unRAID pools - then everything is a pool :)

     

    Everything I've read says 'lz4' is "better"... but sure we will implement a way to specify the algorithm.  Curious, what do you mean "it resets everytime array stops"?


    as for lz4 vs zstd, there's no better. Depending on what you are putting on the pool and if you have enough CPU to compress, zstd is great.
    Most of my workload are huge files (100GB+) but some of those files have plenty of 0's inside (sometimes 50%).
    So I can save a lot of disk space my letting ZFS compress and the more I compress more I save disk space.

    zstd vs gz is different, zstd is faster with a marginal compression loss.

    As for the other part, right now I manually set the pool compression to zstd, however everytime I start the pool (aka server reboot or start/stop array) it comes back to lz4. Not that a big issue as I don't restart my server that often.

    Keep the great work guys! Amazing product! I'm starting to build the second sever and it will be another Unraid Pro! 

    • Like 1
    Link to comment
    2 hours ago, ljm42 said:

    this is conceptually a different way of looking

     

    What the heck means "conceptional?

    I dont use (or need) ZFS, i dont use (or need) Cache-Pools and i "know", how they work - so where is the need of a "new Concept"? And of what?

    Now i am more confused then before... 🤪

    Edited by Zonediver
    • Haha 1
    Link to comment
    12 hours ago, Zonediver said:

    Now i am more confused then before... 🤪

    This is definitely an improvement. I never could think of a good way to clear up the confusion of the "old" way of thinking. I think this is it.

     

    What we have with 6.11:

    • A user share setting labeled "Use cache pool", which isn't necessarily about a pool named 'cache' since we can name pools as we wish. The 4 possible values for this setting are not self-explanatory, and has always confused new users.
    • Another user share setting labeled "Select cache pool" which is not necessarily about a pool named 'cache'. This setting is where you specify which pool that other setting is about.

     

    What we have with 6.12rc4:

    • A user share setting labeled Primary storage which specifies where new files are written.
    • A user share setting labeled Secondary storage which specifies where overflow gets written.
    • A user share setting labeled Mover action which specifies source/destination for mover.

     

    The old way and the new way of thinking are functionally the same, but the new way is much easier to explain and understand. And it provides a way forward for future functionality.

     

    • Like 1
    • Upvote 3
    Link to comment
    8 minutes ago, trurl said:

    The old way and the new way of thinking are functionally the same

    If all you have is the array, and no cache or other pools, then your Primary is the array, and secondary is none

     

    If you have a pool named 'cache', then

    • cache:no = Primary:array, Secondary:none
    • cache:only = Primary:cache, Secondary:none
    • cache:yes = Primary:cache, Secondary:array, Mover action: cache->array
    • cache:prefer = Primary:cache, Secondary:array, Mover action: array->cache

     

    Just substitute another pool name for 'cache' above for other pools.

    • Like 1
    • Thanks 7
    Link to comment
    2 hours ago, ljm42 said:

    Let's not get ahead of ourselves : )

     

    I just asked because I am already confused. And as somebody who helps here since over a decade I should use correct naming. So the array is still the array and pools are still pools. And the cache is gone with that RC4 release. Got it now.

     

    Link to comment
    Just now, hawihoney said:

    And the cache is gone with that RC4 release. Got it now.

    Since the advent of multiple pools in 6.9, 'cache' has just been one possible name for a pool (except for the confusing way the word continued to be used for labeling those user share settings).

    Link to comment

    So far I'm liking the new way of listing the primary and secondary pools.  Also with everything set to exclusive access, I have much less CPU usage. Excited to try some zfs transfers to see if it improves speed.  I was getting around 550MB/s transfers to my backup server.

    Link to comment



    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
    Add a comment...

    ×   Pasted as rich text.   Restore formatting

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


  • Status Definitions

     

    Open = Under consideration.

     

    Solved = The issue has been resolved.

     

    Solved version = The issue has been resolved in the indicated release version.

     

    Closed = Feedback or opinion better posted on our forum for discussion. Also for reports we cannot reproduce or need more information. In this case just add a comment and we will review it again.

     

    Retest = Please retest in latest release.


    Priority Definitions

     

    Minor = Something not working correctly.

     

    Urgent = Server crash, data loss, or other showstopper.

     

    Annoyance = Doesn't affect functionality but should be fixed.

     

    Other = Announcement or other non-issue.