Experience on Reactivating WD MyBookLive (MBL single) with OpenWrt

Hi Folks!

I just wanted to share my experience on how I reactivated my MBL via openWrt after
WD dropped support for the device.
I write this, because I had to gather a lot of information from different website/resources and
I was not sure, if my desired use case would be possible. Maybe some of you have similar or other experiences.

LET US MBL OWNERS KNOW!

In the end, I was happy to get my MBL back online. OpenWrt (21.02) works perfectly fine for
replacing the original device and functionality 1:1, everything from performance to usability
was on par with the original functionality.

For further use cases however, the device's capabilities seem to be a little bit overstrained.
Tips for increasing performance in my use case are very welcome!!!

What I wanted to achieve:

  • Windows Shares in LAN, preferable with multiuser connections
  • NEW: Encrypted Device, so in case of unplugging the MBL all data is secure
  • NEW: Snapshot functionality (via btrfs)
  • NEW: Increase storage capacity of MBL (single)

What I achieved/use case:

  • OpenWrt runs on an 8 TB HDD.
    Besides the two standard partitions I use an 7.3 TB LUKS partition with btrfs inside.
    I created btrfs subvolumes per share to use snapshot functionality.
  • If the device is disconnected/powered down, the LUKS partition stays encrypted. No automatic mount or decryption is in place.
  • In case of a reboot I manually login into the device to unlock and mount the LUKS partition.
    This is my desired behavior, as I did not want the device to have any plain (text) information about the key.
    In standard operating mode, the device is never without power, just in standby.
    Samba is perfectly fine, after booting up, if the mount points are not present.
    If you unlock and mount the partition, everything works automatically.

Transfer speed is ~15-17M/s over LAN with a 100% CPU load.

What I learned:

  • Pure, unencrypted performance with Samba4/Ext4 was pretty much on par with the original MBL performance.
    Transfer speed is ~33-37MB/s

  • Windows 10 uses SMB version 3.1.1 in connection with samba4

  • Encrypted LUKS/BTRS performance does not exceed 15-17MB/s.
    Every tweak of Samba/LUKS/Encryption/mount option did not result in more performance.

  • I could not get openwrt running with using a 2 TB SSD.
    It looked like it was stuck in a boot loop.

  • "cryptsetup benchmark" is BS
    Although AES XTS gave the worst results, in "cryptsetup benchmark"
    the AES/SHA Performance was much better than twofish oder serpent.

  • LUKS1 and LUKS2 have the same performance

  • AES encryption/decryption is supported via HW acceleration

  • NFS shares did not result in better performance in comparison to samba4.
    In fact it was worse. Tested via MBL <> Linux and MBL <> Windows10

  • Btrfs has a litte (1-2MB/s) performance impact in comparison to ext4

  • Exposing HW accelerated crypto functionality from kernel to user mode via /dev/crypto
    did not result in better performance

  • smbshares via KSMBD did not give a performance improvement over samba4

  • Multi-User connections don't work with Windows-10 clients

  • 8TB HDDs need GPT partitioning which require special "treatment" when using OpenWrt.

  • hdparm settings for powering down the HDD after a specified timeout stay intact after a reboot

  • MBL cannot be fully shut down (see other thread)

Thanks openWrt-Team for bringing my MBL back to live!
Maybe this helps anyone :wink: