Hello,
First off, I’m new to the forum, but I’ve been using rockstor for a while now. Love the software – great option for those wanting a btrfs nas solution that can run on arm.
I’m hoping for a solution to a specific problem I didn’t realize I had until recently. My use-case is pretty typical. I run rockstor on a dedicated machine in my home network with 2x8TB HDDs in RAID0, exporting shares over NFS. In addition to this I have a raspberry pi running your run-of-the-mill media server stuff in docker using linuxserver images (jellyfin, torrents, *arr apps, etc).
I recently took an interest in optimizing my setup, and discovered TRaSH Guides. Reading through the section on hardlinks, I realize where I’ve gone wrong.
The section provides tips on how to properly set up shares and directory structure for various platforms (I think the guide that most closely matches rockstor is unRAID). Specifically it describes how it is not a good idea to create and export multiple shares, for example, a share for books, a share for movies, etc, but to have one share, with different categories of media organized into subfolders. This is important because in order to create hardlinks (performed by the *arr apps), target files need to exist on the same logical device.
Unfortunately I have done exactly what I wasn’t supposed to do, and have gone with the share-per-category approach. I know that I can fix it, but the methods known to me are rather unpalatable. Because of the limited remaining space in my pool, I can purchase more drives, and create an additional pool with the desired configuration and transfer everything over, or I can create a new share on the same pool, and painstakingly migrate everything by hand, resulting in significant downtime for my services.
With all that background out of the way, is there a better solution I can try? I’m not too knowlegeable on btrfs, but I’m hoping that it will have some special sauce I can utilize with snapshots or something.
I’m grateful for any tips!