After watching the Pro Week vids (thanks!) I decided to finally replace my ancient and noisy Dell Optiplex machine as my Plex server and bought a little N100 machine at your suggestion. The old machine had a Windows-only software RAID called Windows Storage Spaces. After seeing that Linux was more capable at transcoding and the like, I wanted to convert the N100 to Linux, at least in part. It’s a Windows 11 Pro machine and would be a useful addition to my network as such, and right now I have a new hard drive onto which I copied the Storage space from the Dell. I’d like to create a RAID-like setup again, but accessible under Linux, but I’m a bit lost. I’ve seen that there’s TrueNAS - perhaps that would be a better bet for this than Ubuntu? The Storage Space is just a bunch of disks or different sizes (plus this new 4 TB of drive). There’s no backup or redundancy, the main thing was that it was all available from a single drive letter. Can anyone advise?
There are 2 flavors of TrueNAS, Core and Scale.
Core (which is what I am using) is based on FreeBSD which is an evolution of Unix. It is rock solid but has no hardware transcoding.
Scale is based of of Debian Linux which is the same a Ubuntu. I have never used scale but I do have a box set up that runs Ubuntu just so I can have a PMS that will hardware transcode. I am going to assume that it might be able to transcode like Ubuntu, could someone using Scale please confirm this?
I will also assume that that the TreuNAS portion that runs on each is fairly similar. If that is the case then Scale would also be running the Zero File System (ZFS). It is also rock solid and has multiple different flavors of RAID. Raid-0 (striped) for speed, Raid-1 for 1+1 redundancy and 3 different flavors of RAID 5/6; RaidZ1 with 1 parity drive, Z2 with 2 parity drives and Z3 with 3 parity drives.
You will set up your HDD into VDevs (Virtual DEVices) with one of these flavors of Raid and can then even combine the VDevs in larger VDevs and then into storage pools(but multi VDev pools can get complex to keep track of so be careful how you set things up). You can create more than 1 pool instead of 1 huge pool. The only restriction that I know of is that all the HDD in a VDev need to be of the same size, unlike the old WHSv1 where you could throw drives of any size/type together and just have a big blob of storage. (which was really nice BTW) You can then set up your storage to be shared on your network using SMB, NFS and Apple protocols to add and remove files. (I am mounting the shares from a TrueNAS box on to my Ubuntu PMS and that is how it gets it’s storage.)
If a drive on a Raid 1 or Z1,2,3 goes bad the system with throw up an alert, you follow the procedure for replacing the drive and it will Resilver all the data in a few min to hours depending on the drive’s size.
Running PMS happens inside a Jail of the Core version, I will assume that a similar thing happens with the Scale version (again can someone using scale confirm?)
The jail is a self contained version of the base OS and almost works as a VM but uses less resources. On the Core version there is some setup that needs to be done, mounting your storage and setting up network resources, but there are plenty of online guides and how-to guides to help you through.
The only downside (and it is a small one) of TrueNAS is that, unlike a bare metal Ubuntu or Windows machine, it doesn’t have a desktop that you can sit down and administer things from. Everything is done from a web gui, but I have never needed to use a desktop or CLI when setting up and doing admin on my TrueNAS boxes.
The Core version can run VMs so I will assume that Scale can as well, and then you can RDP or VNC into the VM to do other things but that uses more resources than the jails do.
The big advantage is that both versions are free to download and use so you can try one or both and if you don’t like them you haven’t waisted money on an OS.
Go slow, read the guides and forums, and above all, have fun.
Thanks for that, this bit sticks out “throw drives of any size/type together and just have a big blob of storage”. That’s exactly what I have. A bunch of disks of different sizes and maybe even speeds, though I imagine they are all 5,400 RPM. I was hoping to be able to carry on using such a system, but I guess a proper RAID/NAS will have to wait for when I have some real money. Oh well
To pick a nit, you’re not paying for Linux… you’re paying for support and the “special sauce” that’d come with TrueNAS or Unraid. Same principle with BlueBeanie, I mean, RedHat, OpenSuSE, etc.
I know that kinda bites but it keeps the VDevs and redundancy working well. Also, that form of software pooling uses a lot of resources.
You can mix and match drive sizes in TrueNAS but the VDev’s size will be limited by the smallest drive;
ie; a VDev with 5 drives with the following sizes 2T, 4T, 2x5T and an 8T will look like a Vdev with 5 2TB drives, the rest of the storage space will be unused.
One of the ways to increase a VDev or pool size is to, one at a time, replace smaller drives with larger ones. If you have a 5 drive VDev with 2TB drives, and you replace them one at a time with 12TB drives (replace and let them resilver before replacing the next one), once the last drive is done resilvering the entire VDev/Pool will have a size equal to having all 5 drives being 12TB drives. Until that point it will look like all the drives are still 2TB.
Storage is always the biggest expense for a large NAS system.
If you are just building a TrueNAS system to be only a NAS, a Ryzen3 or 5 would be more than enough. If you want to run Plex on it too I would go with a Ryzen7 or more.
Figure out how much storage you need, go 3x that and you should be good for several years with out having to add another pool.
You can also just add a new pool if you need more storage. My 1st TrueNAS box had a 28TB pool that quickly got filled w/ videos and backups, so I got an 8-bay USB3 enclosure and loaded it with larger drives to make a 75TB pool and moved all of my videos to that.
There are lots of options. The WHSv1 was the nice simple way of just using what you had laying around, but building a good NAS should always be planned out well.
If you go with an AMD CPU, then also allocate budget, space, and power for a Nvidia GPU.
On Linux systems (not just TrueNAS), AMD GPUs are currently limited to SDR transcoding. Hardware accelerated HDR to SDR transcoding and tonemapping is not supported.
With Intel CPUs, be aware the F models do not have on-board Quick Sync Graphics. If you choose such a CPU you will also need to plan for a Nvidia GPU.
Pooling different drives into one virtual volume does effectively disable the safety mechanism that is built into Plex.
The safety mechanism that is preventing metadata from being ousted, if the whole drive with media is temporarily missing.
Because with pooling, the contents of several drives are made to appear as one drive. If one of the hardware drives is missing (loose cable etc.) then it looks to Plex as if only a few files are missing from the media volume. So will remove them from the library if so instructed.
I specifically got an N100 mini PC from the recommendation from one of those Pro Week videos and right now it’s running Windows 11 Pro. I have a partition set aside for Linux that I installed Ubuntu on, but Unraid sounds better suited because the windows storage space is a couple of 4tb drives, one 2 tb and one 1 tb. The size reported is only about 4tb total so I bought another 4tb drive and copied everything on there, but would like to use the three 4tb and one 2tb drives as a new raid-type thing and retire the 1tb drive since my enclosure can only take four drives in total. As it stands, I don’t really care about redundancy or protection - Plex content is not so important. Hopefully, unraid will suit my needs.
What you want to do is called JBOD – “just a bunch of disks”.
You can do that in pretty much every OS. IMHO, there is no need to use a special NAS OS just for that.
If you are not concerned about loosing all of your media if you have a HDD failure, then I would stick w/ W11P if you are familiar w/ that OS and set up a JBOD array. Just remember it will eventually fail.
If your goal is to pool your disks in one aggregate volume on Ubuntu, LVM2 will allow you to do this. The general process is:
Partition each disk that is to be a member of the pool using fdisk/gparted and set the partition type to ‘lvm2.’
Configure each disk as a physical volume for LVM2 using pvcreate.
Add each disk to the same new volume group using vgcreate.
Allocate a logical volume from the volume group using lvcreate.
Format the newly-created logical volume using one of the mfks.* commands, such as mkfs.ext4 to create the filesystem.
Mount the filesystem using mount.
This is a very high-level overview. Each of the commands above takes various arguments to control its operation. But what you’ll end up with is a pool of storage (JBOD) roughly equivalent to the aggregate size of all the partitions (disks) in the volume group.