Building an Open Media Vault NAS (Part 3— Configuring OMV)

Up and Running with Open Media Vault

Check out the other sections of this guide:

The Story So Far

In part one of this guide we checked out some hardware for a potential NAS build. In part two of this guide we explored some options for a NAS OS, and ultimately decided on Open Media Vault 2.x. We even logged in to our system for the first time and changed the administrative password (and if you didn’t do that, stop reading and go do it now!). In this final section, I’ll show you how I configured my OMV install. It can look like a daunting process, since there are a lot of steps. However, once you have the initial file system setup, you can work on the other configuration options later. And once you’re done, you won’t have to go through the process again — OMV can happily run for months without you having to do much administration.

Let’s start by logging in to Open Media Vault’s web UI. You’ll see a screen similar to the one below. On the right hand panel, choose Update Manager. If you click on the uppermost checkbox, you can choose all the updated packages. Click Upgrade next. OMV will grind away, assuring you it’s getting the newest NAS goodness ready for you.

Welcome home

Preparing your storage

The first thing you want to do is wipe your drives; new drives are likely blank, but we may as well make sure we’re starting fresh, while it’s a good idea to wipe used drives anyway. On the right-hand menu, choose Physical Disks under Storage. This will list all the physical disks on your system. Choose each one and choose the Wipe option.

Next, choose File Systems from Storage on the right. You should see your physical disks. You’ll need to format the drives to use them so hit + Create and from the dialogue box, choose each drive, and enter a label for the filesystem. The file system option should default to ext4, the Linux native disk format — it’s a good option for us, so leave it as-is. Once you’ve done that for all your drives, we’re ready configure the drives.

Pooling your drives

Union Filesystem
I placed four 4TB drives in my NAS build. However, rather than dealing with them as four separate drives, NAS systems can pool the drives together, so their space is added together in one “virtual” drive. Day-to-day, it’s much easier to work with one big drive with folders for your files, rather than remembering which drive has what data.

From the initial screen you see after logging in (above), click on Plugins on the upper-right corner. You’ll see screen like this:

You scream, I scream, we all scream for OS extending plugins

First, click on the Check icon near the top of the panel to get an updated list of OMV plugins. Once OMV is finished updating, use the searchbar and search for “union”. The unionfs plugin should come up. Click on it, and press + Install. OMV will ask to reload, so give it the go ahead.

Under the Storage menu on the right, there should now be an entry for Union Filesystems. Click on it, and on the next screen, you can press + Add, to open a dialogue box similar to the one below.

Yes, my NAS drives are all named after Japanese feudal warlords

Enter a name (I chose “media” because my pooled drive mostly contains my media and photographic/art projects, and I like lower-case drive names). Next you’ll have to choose a type for your pool. I don’t know enough to discuss each option in depth, but some research suggested that mergerfs pairs well with SnapRAID and has some of the best features from the other types.

Next, you’ll want to choose with drives to include in the pool. You’ll almost certainly want to include three of the NAS drives you picked up, if you followed part one of this guide. You can see from the screenshot that not all of my drives were included in the pool —one is being used as a parity drive (more on this when we discuss SnapRAID below), and I have an additional downloads drive that I don’t want to include in the pool.

Finally, you have mount options. This option decides how new data is placed on the drives. You probably want the one I chose, “Most free space,” as the system will place data on the drive that has the most free space. The practical result is that over time the NAS will evenly write data to each drive. You can also choose options, though, such that the machine will fill one drive at a time, or even random add data, if you wish. Save your choices, and your drives will be pooled. We have a little more work to do, so let’s return to the Plugins screen.

SnapRAID
The next thing we want to install is SnapRAID. Search for it, and install it in the same way we installed unionfs. Reload again, and you’ll see an option for SnapRAID under Services.

Before we continue, let’s briefly discuss SnapRAID. RAID systems create parity information for your drive systems, so that, essentially, you give up some drive space to store “backup” data. In SnapRAID, you can choose which drives will store actual data (your files) and which will be a parity drive. If you followed the hardware guide, three of your drives will be data drives, while the fourth will be parity. Should one drive in your pool fail, the parity data means you won’t lose any data (assuming no other drives fail — this is why I suggested you buy two different sets of two drives).

SnapRAID offers a few extra advantages; it hashes the files you place in the RAID, and can use that hash to check if files are becoming corrupt, thereby avoiding silent data rot. It also allows you to recover files and use different drives in the pool (with an important caveat, noted below), which is not something all RAID systems can do.

Keep in mind that SnapRAID is focused on media servers. It works best with larger files that don’t change often. In my use case, I’m storing big files as archives (even my projects on the NAS are “done;” live projects live locally on my computer/Dropbox) which is the ideal use-case for SnapRAID. This is another reason I have an additional downloads drive, as the files on it change more often. If you’re going to be rapidly updating, or working with more small files, you may want to research other RAID options (including the built-in RAID management services in OMV).

One other caveat with SnapRAID is that to keep your parity drive syncd, you’ll have to manually sync it (or create a cron job that does so automatically). The system assumes your files don’t change often, so if that’s actually the case it may not be a huge problem, but it is something to be aware of.

A few other notes about SnapRAID. You don’t need drives exactly the same size in SnapRAID (something that was required on some older RAID systems), but your parity drive needs to be at least as large as your largest data drive. This should make intuitive sense, as it needs to have enough space to store parity information for your other drives. Also, you’ll want to be careful not to completely fill your data drives so that your parity drive has space to breathe.

Keep in mind nothing is keeping you from having multiple parity drives. One parity drive means your NAS can survive one data drive dying — two parity drives would allow you to avoid data loss with two data drives. That said, while SnapRAID (and other RAID systems) keep parity information to help protect your data, this is not a substitute for external backups. It’s easy to hose a RAID system such that even the parity data isn’t usable. Don’t rely on RAID as a backup! This is important enough to repeat. Don’t rely on RAID as a backup!

More information on SnapRAID is available on the project’s page.

Assuming you’re still with me here, let’s checkout SnapRAID’s plugin page.

On the initial Settings tab, the default options should be fine for you. The next tab, Drives, lets you choose the drives that will be in the RAID. Click + Add and you’ll see a dialogue box like this:

The SnapRAID Add drive dialogue box

Choose one of the drives, and give it a name for SnapRAID (give each drive a unique name, but you don’t worry too much beyond that). For your first three drives, tick the Content and Data buttons. Content stores metadata about your files (filenames and hashes), while Data is your actual data (your files and directories), and you want both on your data drives. Click Save, and you’re good to go.

For the last drive, be sure to choose Parity. As we noted above, this is where the redundancy information for your files are stored. SnapRAID also helpfully explains that more parity drives will allow your RAID to survive more drive failures without data loss.

While we’re on the Drives screen, let’s check out the Tools menu. Click it and you’ll see a menu with the following options: Sync, Scrub, Check, Diff, Status, Fix, and Pool. The Information tab has detailed explanations for these tools, so I won’t spend much time on them. However, Sync is the tool we use to update the parity drive’s information, so be sure to use it when you’ve added or removed data. Sync can take some time, so keep in that in mind before sitting down to work. Scrub searches your drives for file errors (It checks approximately eight percent of the files on your RAID, excluding data checked in the last ten days). Check on the other hand, scans everything. Status gives you information on the RAID, while Fix restores your last sync, and Undelete lets you recover specific directories or files, if you have the path.

The SnapRAID tools menu, with the options we explained above

Changing your mind
When I first set up OMV, I bungled through various file options several times. For example, I set up Union FS, but didn’t choose the most free space option. No problem — you can easily delete the Union FS and SnapRAID configurations (as long as you haven’t added data to the drives). My advice is to work with a your configuration for a few days before committing your data to it. Put some test files on the NAS, and make sure things are configured the way you want before copying over your vital data (and keep/test any backups you already have!).

Accessing Your Files

Shared folders
The one thing that took some time for me to wrap my head around was OMV’s shared folders system. Essentially, only the folders you explicitly configure as shared folders will be accessible via SMB or FTP from outside your NAS because OMV services and plugins use shared folders (including SMB and FTP). A plugin that downloads files, for examples, will need a shared folder in its configuration to choose as a destination.

Before we get started with shared folders, note that you’ll have to create them all again if you blow your file system away, so make sure the file system options we configured above are really the way you want before creating a lot of shared folders.

With that out of the way, choose Shared Folders from the Access Rights Management menu at the right. You’ll see a blank-ish screen like this:

A blank shared folders config screen

Clicking on + Add will open a busy dialogue box that looks like this (don’t worry, we’ll discuss these options):

Shared folder dialogue box

First, OMV wants you to enter a name for your shared folder. Unlike SnapRAID drive names, you will potentially see these names often, so use something descriptive. For example, if we’re going to create a folder to store our photos, let’s call it “photos.”

The next field asks for a volume — this is one of the drives on the system. You’ll see your individual drives, but more likely than not, you want to use your drive pool (I don’t know what happens if you start saving stuff to individual pooled drives, and I don’t want to find out — don’t do it!). Look for the name you gave your pool in the drop-down menu and choose it (recall that mine drive pool was named media — therefore I would want to choose media from this menu).

The path field asks for a directory for your new shared folder. For example, if we want to create a photos folder, we could enter the following:

photos/

Note that you don’t need a forward slash at the beginning. You can also add a comment to help remind you any information about the folder. Once you’re done, click Save, and OMV will create the folder for you.

(You can skip this for right now, but as a side note, if a folder already exists — as in you created it when accessing your NAS from another computer — OMV won’t overwrite it, but will start using it as a shared folder. This doesn’t matter for us now, since we’re starting fresh but is something to keep in mind for the future).

The way I set up shared folders was to create shared folders at the following paths on my media pooled drive.

Photos: photos/
Projects: projects/
Archives: archives/
Music: music/
Downloads: downloads/

Your shared folders don’t necessarily have to be these top level paths, though. For example, I have three directories under photos, one for my organized photos (album), one for new photos that haven’t been organized yet (newphotos), and one for photos I’m currently working on in Photoshop or Lightroom (editing). I can create these as shared folders by entering their full paths in the new shared folder dialogue box.

For example, in the dialogue box, I’d call the newphotos folder New Photos, choose the same drive as photos (in our case our pooled drive, and specifically in my case media), and then enter the path as

photos/newphotos

If the directory doesn’t already exist, OMV will create it. A subdirectory you’re using as a shared folder can be useful if you want it to show up when you access your NAS or as a source or destination for OMV services.

We have two more stops on the shared folders screen before moving on, though at this point they are more informational than practical. Click on any shared folder and then click Privileges near the top of the panel. This will show a list of “users” (most of them will be system services) and their ability to access the folder. Your user name should already be on the list and configured for Read/Write access.

Click Cancel and then click ACL, which is next to Privileges. This opens a modal which always you to modify the permissions to subdirectories. You can reset access (in order to say give your user account access), and make sure that access is applied to subfolders and files (via the recursive option). If you have issues creating data in a folder, especially via SMB or FTP, be sure to check here and make sure you have the appropriate access.

Configuring SMB access

With your shared folders configured, we can now configure access from our personal computers. While SMB has been superseded by other technologies on both the Windows and Mac sides, it remains a common file transfer protocol because it’s widely supported, so we’ll configure this option in OMV. Machines sharing files on your local home network (e.g., accessing the same wifi as you) will show up in your OS’s network options (on a Mac, this is accessible via Go/Network in the Finder, or on the app’s sidebar; in Windows, you can access it via Window’s Explorer’s Network location). Note that these SMB shares will only be available via your local network.

On the right, choose SMB/CIFS from the Services menu.

The SMB configuration screen

On the configuration screen, tick Enable (to enable the plugin). You may enter a name in Workgroup, which will show up as the NAS’s name on the network. Local Browser Master should be ticked by default — if not, tick it on. Ditto the options for Browsable, Use sendfile, and Asynchronous I/O. Then chose Save at the top of the panel. Open Media Vault will then ask you to confirm the configuration change with a banner at the top of the screen. Click Apply, and the page will reload to incorporate your changes.

Next, click the Shares tab. This is where we’ll configure our shared folders to show up when we access the NAS on the network. Click + Add, and a dialogue will appear. Here are the important options:

  • Enable — Enables the shared folder in SMB. It seems obvious, but is actually useful if you want to turn a folder on and off without having to completely remove it and re-configure it.
  • Shared folder—From this drop down menu, you can choose any of the shared folders you configured before. Most other services and plugins access shared folders this way, and if you need to create a new folder to share via SMB, you can do that from the shared folder screen and it will show up here.
  • Name — You can configure a name for the folder specifically when it shows up in SMB — this need not be the name from the shared folders screen. This can be useful to group shared folders together when you access them from your computer. For example, I have photos and music configured to show up on my network as “media-photos” and “media-music.”
  • Public — You can configure if “guests” can access this folder or if you have to enter your OMV web password to access it. If you’re the only one accessing your NAS, it’s more secure to require your login information.
  • Read-only — Tick this to allow only read access to the shared folder via SMB. You probably don’t want this on now, but there may be situations, especially if multiple users are using the NAS, that you may want to turn this on.
  • Browsable — Allows you to choose whether the folder is shown when accessing the NAS via SMB. Almost certainly you want this on.
  • Inherit ACLs — New files and folders created under a parent directory will take on the ACLs of the parent directory. You likely want this on; if you don’t folders and files you create may take other ACLs, and you’ll have to change that on the shared folders screen.
  • Enable Recycle Bin — This basically creates a recycle bin similar to the one on Mac and Windows systems. Files you delete will be stored here until be stored here until you totally delete them. This may be an option you want to turn on, depending on your data and the work you’re doing.
  • Hide Dot Files — Mac OS (er, now macOS) and Unix systems mark hidden system files by putting a period in front of the filename. macOS especially spews these files everywhere when it accesses a drive (a lot of folder and file metadata is stored in each directory in these files). Ticking this option will hide these largely useless files, which is especially helpful if anyone creating files on the NAS is using a Mac.

Once configured, Save, then Apply when OMV asks to confirm the configuration change. The folder will now be accessible via SMB, and you can continue adding other shared folders the same way. Keep in mind, you don’t have to add all your shared folders — I like to keep the list clean, so most of the shared folders I access via SMB are top level directories.

Moving files on your NAS

The other thing that threw me for a loop using OMV was file transfers on the NAS itself. On my QNAP machine, the system included a GUI file browser, similar to Windows Explorer or Finder, and it was relatively easy to move files. OMV — at least out of the box — doesn’t include a GUI file browser.

Therefore, realtalk — it can be harder to move files on your NAS than it would be on your desktop computer or a QNAP system. That said, once you get the basic idea, it’s not too hard, and OMV’s rsync is a powerful tool.

Keep in mind though, depending on your configuration and workflows, you may not need to move files internally. I use rsync to move files from my downloads drive to my main media pool. You may have other uses for it as well.

Find rysnc in the Services menu on the right. Click on Add+ to see the following screen.

The rsync dialogue, similar to the other service dialogue boxes we’ve seen so far

A brief overview of the options I use in rsync:

  • Enable — Like the other services we’ve seen so far, rsync has an enable option. However, it works a little differently than you (or at least I) expected. Ticking enable here allows rsync to keep your source and destination directories in-sync, so that new files in the source will automatically get copied over. Essentially rsync will keep two folders in sync with each other with no intervention. I don’t have a need for this, but I can see several situations where this would be mighty handy. Leaving enable unticked means you’ll have to manually run the rsync job.
  • Type — Rsync can let you copy to a local destination (one on your NAS) or remote (to another computer). I haven’t used remote much, so I don’t have much to add, but this is a more powerful option than manually copying files via SMB or FTP.
  • Source and destination shared folder — Pretty self-explanatory, choose the source and destination from your list of shared folders.
  • Time options — If you tick enable, you can choose how often the job automatically runs.
  • Trial run — Rsync has the option to simulate a job, so you can see what the results will be before pulling the trigger. Usually you will want this off, but you may want tick it when first configuring a job to make sure it does what you want.
  • Recursive — This toggles whether rysnc dives into subdirectories to copy files and other directories.
  • Preserve permissions/ACLs — You may want to tick these, if you want to keep the same access rights in the destination as in the source.

Once you’re configured, click Save, and you’ll have an rsync job on your list. If you checked enable, it will run automatically, but if you didn’t, you can run it manually by clicking on the job and then choosing Run from the top of the panel.

As a warning, when I first set up my NAS I ticked the Enable button, and was surprised when, periodically, my NAS’s free space seemed to plummet. Eventually I figured out that rsync was trying to keep my source (a backup USB drive I was copying my data from) and my NAS folder in sync, even when I deleted files from the NAS.

Note you could use SSH or FTP to move files as well. You could even use SMB to move files via Windows or Mac. However, these systems will treat different top-level shared folders as different “drives” so they will copy a file from the source to destination, which is definitely slower than rsync if the files are on the same drive.

SSH

The last thing I want to help you configure is SSH. SSH allows you to use the command line to access your NAS. You likely will not need this now, but it’s been useful for me in a few instances, like figuring out where certain folders were in my pool so that I can pull those paths, and resetting my web admin password. Keep in mind, allowing SSH access to your NAS is a security risk, however. I’ll point out specific issues, and let you decide if enabling SSH is worth the tradeoffs.

Look for SSH in the Services menu.

The SSH screen in OMV

It’s a relatively simple screen, compared to what we’ve seen already. Enable allows SSH access. Port configures the port you’ll access at—it’s a good idea to change this number, as hackers and bots often try to SSH into machines at the default port.

Permit root login allows or disallows root logins via ssh. As mentioned in part two, root is the superuser on Unix systems, so allowing this allows you to remotely reset your password, but disallowing this option is more secure. Interactive authentication allows you to login via the prompt (rather than having the login information in the command you use to SSH into the NAS). Turning this on also makes your login less secure.

Public key authentication allows you to use a public key to log in as well. A guide to using public key authentication to log in to your NAS is available on the Open Media Vault forum. Once you save and apply these changes, you can access your NAS via the command prompt.

Under macOS this means starting Terminal.app (or an equivalent like iTerm) and then entering the following command:

ssh 111.111.1.1 -p 00

Where 111.111.1.1 is the IP address of your NAS we used back in part two and 00 is the port number you just configured. Under Windows, the process is similar, but you will need PuTTY to use ssh.

If you’re going to login as root, you can modify the SSH command to include root, which means your NAS will only prompt you for your password.

ssh root@111.111.1.1 -p 00

If you frequently access your NAS via SSH, you can even set up an alias in terminal to make it easier.

You can also access OMV’s command line by physically hooking up a monitor and a keyboard to your NAS, but that’s a real pain if it’s running headless (that is, without a monitor). Conversely though, if you are particularly worried about security, it may be better to not enable SSH, and to only allow these admin tasks via physical access to your NAS.

Some Awesome Open Media Vault Services and Plugins

While I hope this guide has helped you get started with your NAS, we’ve only scratched the surface of some of the cool things OMV can do. With your experience configuring services and plugins so far, it shouldn’t be difficult to enable others on your OMV installation (recall that you can find new plugins by going to the Plugins screen and searching). Explore the plugins list and OMV forums on your own to find your favorites, but here are a few I use.

Services
FTP — Much like SMB access, you can access (and copy or download) the files on your NAS via FTP if you wish. You’ll also need an FTP client — I recommend WinSCP on Windows and Cyberduck or Transmit on Mac.

Backup — This service lets you backup your OMV installation. You’re spending considerable time configuring it, so it’s worth your while to have a backup.

USB Backup — USB Backup lets you backup the data files on your NAS to an external USB drive. Use this to create offsite backups for your storage.

UPS — Remember that battery backup system I advised you to buy way back in part one? Here’s where you can configure it. Generally, the only configuration you’ll need to give it is the following:

driver = usbhid-ups
port = auto

BitTorrent — Open Media Vault’s built-in torrent client is based on Transmission, and has most of the same features as its desktop cousin. You can access these options on BitTorrent page in the Services menu.

Downloader — I only really use Downloader to grab YouTube videos, but it’s super useful just for that alone.

Plugins
Subsonic — I’m a long-time fan of Subsonic, software that allows you to access and stream your music collection over the Internet, and OMV’s plugin is pretty good. Three notes though; one, when the plugin’s config page says Subsonic can take a minute to load, they aren’t kidding — don’t wig out if it doesn’t start immediately, as it can take several seconds. Second, I don’t believe HTTPs works with Subsonic’s vanity URL systems, if you’re a premium member and use those (I do). Finally, remember that you’ll have to configure your router to access Subsonic from outside your internal network. Read the end of the guide above if you need more help.

jDownloader — Another useful tool for downloading files from the Internet, particularly from web file hosts like Mega. You’ll have to create an account on the jDownloader site and link that to the plugin.

Flash Memory — While I advised you not to install OMV on flash memory in part one of this guide, if you do go this route, install this plugin. It helps limit the writes OMV makes to your drive, hopefully extending the drive’s life.

Deluge — Deluge is the other good torrent client on OMV. Feature-for-feature, it’s roughly at parity with Transmission (and by extension the native OMV BitTorrent client). I like having an app-like UI slightly better than the plugin UI of the native BitTorrent client, but the later is admittedly easier to configure. All that is splitting hairs, though, as both get the job done.

Moar Halp!

While you should now be set up with the basics, and with an understanding of how Open Media Vault administration works, that doesn’t mean you’ll be able to solve every problem on your own. Like most Linux distros, often your best bet will be leveraging Google for answers.

I also highly recommend signing up for an account at the Open Media Vault forums. The forums contain a wealth of information, including troubleshooting tips and announcements. If you’re experiencing a problem with OMV, it’s almost certain someone has experienced that problem (and posted about it!). One note — use Google to search the forums, as the built-in search isn’t great.

Moreover, feel free to comment on this article — I can’t promise I’ll have all the answers, but am happy to host questions and discussions.

Best of luck!