18 Apr 2022
I will be deploying OpenMediaVault (OMV) 5.6.13 as a virtual machine on Proxmox. Providing a full step by step installation and some basic configuration, such as email notifications, NTP, configuring a RAID1 mirror, creating users and groups, sharing via SMB and NFS and finally how to add OMV-Extras for additional plugins and Docker support.
OMV is a network attached storage (NAS) solution based upon Debian with a web interface and easy to use features. Thanks to the modular design of the framework it can be enhanced via plugins, espcially the community OMV-Extras repository.
OMV is primarily designed to be used in small offices or home offices, but is not limited to those scenarios. It is a simple and easy to use out-of-the-box solution that will allow everyone to install and administrate a Network Attached Storage without deeper knowledge.
At the time of writing the stable version is 5.6.13 with version 6.0 currently in testing. - Lets get started!
The first step is to download the latest stable ISO file from OpenMediaVault.org. Once downloaded upload this file to your ISO images repository.
Now start the VM creation wizard. I have summarised some of the wizard steps, where I felt changes are necessary.
On the General tab, ensure that the “Start at boot” option is enabled. To ensure that our file server is serving content before starting other virtual machines or containers I have set a “Start/Shutdown order” of 0 with a “Startup delay” of 2 minutes.
On the OS tab, select the ISO image and leave type as Linux as OMV is based upon Debian.
On the System tab, I have set the SCSI controller to VirtIO SCSI single, this is to leverage some features such as SSD emulation and best performance. I have also enabled the QEMU agent, which I will install at a later date.
On the Disks tab, I have set the storage location and size, a minimum of 4 GB is recommended by OMV.
I have also enabled other features such as Discard, SSD emulation and IO thread.
On the CPU tab, I have set 1 core and left the type as kvm64. - A single core is perfect for light-weight usage.
On the Memory tab, I have set memory and minimum memory to 1 GB and left ballooning device enabled. - Post install this idles at 300-500MB
Lastly on the Network tab, I have connected to my LAN bridge and left the network model as VirtIO (paravirtualisation) as this is the recommended option for best performance.
This completes the VM creation wizard. The last alteration I am going to make is on the VM options and is to disable the “Use tablet for pointer” option.
Now we are ready to start the OMV installation process.
Below is each step of this process, with any notes I feel may be useful. Otherwise the process is straight forward.
Set a language.
Set your location.
Configure the keyboard.
As I have a DHCP server this was assigned an IP, if this step fails you can manually configure an IP address using the install wizard.
Configure a hostname for this system.
Configure a domain name, I have used an internal domain called “home.lan”.
Set a password for the root
user.
Installation begins.
Configure the package manager location.
Configure an archive mirror.
Set a proxy if you have one, I do not therefore I can leave this blank.
Set the device for the boot loader installation, if you have more than 1 device, select the one that contains the OS installation.
Installation complete.
Now remove the CD/DVD drive (ide2) from the VM in Proxmox. Shutdown the VM and restart it to apply the changes.
Log into the OMV server from the shell or SSH as root, which we configured during install. Now using the command below install the QEMU agent package.
apt install -y qemu-agent-client
Once that has been installed reboot the VM and Proxmox will display the IP address information in the summary panel, which is a good indicator that it is installed and working.
reboot
With installation complete we can visit the OMV web panel, which is available via the IP address, hostname or FQDN (fully qualified domain name) of the virtual machine.
To find the IP address of the VM, either use
ip addr
on the VM to list its interfaces,http://192.168.1.27/
http://omv/
http://omv.home.lan/
The default login credentials for OMV are admin:openmediavault. Once logged in you’ll be presented with the dashboard as shown below.
To change the default password, navigate to System > General Settings and select the “Web Administrator Password” tab.
A few other settings that are worth configuring, they are:
To configure NTP, first navigate to System > Date & Time, configure your timezone and set a time server, I have used my router by other suggestions include the NTP Pool Project.
To configure email notifications first navigate to System > Notification and configure your SMTP settings, don’t forget to click “Enable”.
Notifications topics can be configured on the Notifications tab, as shown below I have chosen to receive only “Filesystems”, “S.M.A.R.T”, “Software Raid” and “Software Update” notifications.
To create a user, navigate to Access Rights Management > User, on the Users tab click “Add”.
Provide details such as:
Users can be assigned to groups using the Groups tab, but by default all created users become part of the “Users” group.
To create a group, navigate to Access Rights Management > Group, and click “Add”. Provide a name for the group and a comment if you wish.
On the Members tab I have assigned users to the group, as shown in the figure below I have added my own user.
For demonstration purposes I have added two additional hard disks via Proxmox
To start I will create a RAID1, which is a mirror. Navigate to Storage > RAID Management and click “Create”.
Set a name for the RAID array and the appropriate level, options are listed below.
Lastly check which disks to include within this array.
Once complete the State will list as “clean”.
Now we can create a File System on to of our RAID, navigate to File Systems. The file system decision is a hard one, but I will be exploring XFS in this demonstration, I have listed a few points regarding each below.
Once the file system has been created click the Mount button.
To create a shared folder, navigate to Access Rights Management > Shared Folders and click “Add”.
I have created a shared folder called “OMV-Data” using the newly created “DataDisk” RAID 1 XFS file system. There are plenty of pre-set permissions, I have set the permissions to:
Administrator: read/write, Users: read-only, Others: no access
Now click the ACL button, which stands for Access Control List.
From this window we can configure the shared folder permissions to meet our requirements.
I have set my user to have read/write access and changed the group to our previously created group “NetworkingDream”.
Now that we have a shared folder we can offer this through the SMB service. Navigate to Services > SMB/CIFS and check the “Enable” button on the Settings tab.
Next change to the Shares tab and click “Add”. Here I will enable our shared folder called “OMV-Data”. - There are plenty of other options and its worth viewing them all, but for a basic share this is all we need.
We can test our share by opening the SMB location and logging in using our username.
smb://omv.home.lan/
To enable the NFS service, first navigate to Services > NFS and click “Enable” from within the Settings tab.
Now switch to the Shares tab and click “Add”. NFS does not use usernames instead it has allowed networks and clients, therefore its important to not expose the NFS share with read/write access to the whole network as shown in the figure below.
Instead only use a trusted IP address such as: 192.168.1.25
Update are easy to perform via the web panel. First navigate to System > Update Management and click the “Check” button, this will perform a package manager repository update and then we can check which packages to update and click “Install”.
This is the same as updating via SSH using apt update && apt upgrade -y
.
To install plugins, first navigate to System > Plugins and click the “Check” button, this will update the available plugins list and display all install-able plugins.
In this demonstration I will install NUT, which stands for Network UPS Tools. Find the plugin in the list, check the selection box then select “Install”.
Once installation has completed the page will reload and the appropriate new item can be found in the navigation pane.
The third party plugin list can be found at omv-extras.org. OMV-Extras is what allows us to easily install docker.
To install OMV-Extras either use SSH and enter
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash
Or for OMV5 we can use the web interface, navigate to Plugins and click “Upload” and enter. - for OMV6 use the above terminal command.
https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/openmediavault-omvextrasorg_latest_all5.deb
Once installation has completed there will be many more plugins available for installation and the OMV-Extras menu, containing Docker, Cockpit and Kernel.
That concludes this article, it is only a basic walk through but hopefully enough to get your feet wet and explore OMV.