January 18, 20251 yr Hello, I’m a new NAS user. I plan to move the hard drives I previously installed in my desktop into a separate NAS system. Originally, I was considering Xpenology SHR2 or Truenas Raid6 configurations, but I’ve seen some people recommend Unraid, so I’m having second thoughts. Especially, unlike RAID 6, it does not use data striping, so not all disks need to be active when storing data, which helps reduce power consumption. This is the feature I appreciate the most. I intend to use it for personal file storage, 2 for parity 1 for torrent temporary files 21 for data storage (combined into a single array) 1. I’ve heard that Unraid is not like RAID6 or SHR2, but more like a JBOD structure with added parity. Instead of data striping where data is distributed across multiple drives, it stacks data one drive at a time from the first drive, which might make the read speed slower than RAID6/SHR2. However, I’ve also heard that even if 3 drives fail (with at least 2 parity drives), data can still be accessed from the remaining drives. Is this correct? (Of course, I understand that data recovery from the 3 failed drives is impossible.) On the other hand, with SHR2/RAID6, I’ve read that if 3 drives fail, access to the entire data becomes impossible. Is that true? 2. I’ve also heard that Unraid actively utilizes SSD cache. Can I use just an extra hard drive as a cache? I’m thinking about dedicating one hard drive for torrent temporary files. 3. Is an SSD cache essential? The motherboard for my new NAS has 3 NVMe slots, and I originally planned to use them all for data storage. If I need an SSD cache, I would have to reduce the number of SSDs for storage from 3 to 2, which is making me reconsider. Alternatively, is it possible to store data on an SSD that I’ve allocated for cache? Or is the cache strictly for caching and storing Docker data? 4. I’ve seen concerns about Unraid’s security. What’s your opinion on that? My use case is primarily to store data downloaded from the internet and access it from other devices at home. However, after building my NAS, I might occasionally want remote access. I’ve heard that using Tailscale can solve security issues, so is it feasible to use it this way? (1) Download files using Gluetun + Mullvad VPN (2) Access files at home via SMB (3) Access files remotely via Tailscale I’ve done some research, but since I’m new to the NAS world, I have a lot of questions. Previously, I just used a single hard drive in Windows without any RAID configuration, and downloaded files using VPN split tunneling.
January 18, 20251 yr Community Expert Solution 1. Your assumptions are correct when applied to the main Unraid array, although you have some order over how drives get filled up depending on the settings for shares. Since each drive is a self-contained file system (which means you can have a mixture of file system types in the array) reading/writing is constrained at max to the speed of a single drive. Regarding redundancy since each drive is self-contained one of the strengths of Unraid is that if you have more failures than parity drives is that the data on the remaining drives is still available. However this does mean that writing directly to the parity protected array is slower than many people expect although tends not to be an issue if storing large numbers of media files (a typical use) which are only written once. It is also worth pointing out that with Unraid 7 the main array is optional and you can have your drives in pools outside the main array that use standard RAID techniques (with their standard advantages and disadvantages) from both a performance and resilience view. 2. Any type of drive can be used as cache and its purpose is to improve performance. It is intended to improve the 'perceived write' speed by caching the initial write and later moving files to the main array, although whether this caching happens is configured at the individual share level. It can also be used for application purposes (docker containers, VMs) to avoid the performance penalty of slow writes to the main array. 3. The 'cache' is completely optional. Do not get confused that you can have by the fact that you can have a pool named 'cache' and the caching cap[ability that is configured at the individual share level. The name is just a legacy from before support for docker and VMs when caching was the only thing it could be used for and the pool name is up to the user. 4. You can do what you want even without using Tailscale, although it is now probably the easiest to set up.
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.