If you have a FreeNAS server where you store all your media this will be the perfect place to integrate a media streaming solution.
Plex Media Server are probably the most popular media streamer out there. It is free to use, but has a Premium subscription with some extra features.
I just go with the free version since I don’t have any interest in the Premium features.
Here is a easy step-by-step guide of the installation process.
Install the Plex Media Server plugin
The first step is to open up FreeNAS GUI and navigating to Plugins in the left menu.
If you want to change the default pool for Plugins and Jail storage click the gearwheel icon and select your preferences.
This is where Plex will be stored, but not (necessarily) the media files.
To install Plex, just find Plex Media Server and hit INSTALL.
If you want to configure static IP that can be done by leaving DHCP unchecked, this can also be done later if needed.
Enter a Jail name and click SAVE. Wait a a few minutes for the installation to complete.
Set up Mount Points
Mount points are “links” between the FreeNAS filesystem and the jail filesystem. This is needed to reach media files because the jail is isolated from the base OS.
Go back to Plugins and open the drop-down menu right for the Plex jail. Click Stop to stop it, after this click on Mount Points.
Click on Actions and ADD. Here you need to select the correct path for Source and Destination.
You can add multiple Mount Points if you don’t have all your media in the same place. I will add two mount points, one for my video files and one for my audio files.
In Source select a directory where you have the media you want to add.
In Destination select where Plex will find the media files inside it’s own jail.
The last directory in the source path is not mounted, just the sub-files and folders inside of it. So make sure to add it to the end of the destination path as well.
Click SAVE and repeat for each new mount point.
This is how my configuration looks: (volum3 is my pool)
For Plex to be able to access the added mount points the plex user must have access to it. This can be done by just open up for guest access, or to give it access by its user ID (UID) 972.
Assuming this dataset uses ACL permissions go to Storage and then Pools.
Select the tree dots right for you dataset and then hit Edit ACL.
Click ADD ACL ITEM and fil as shown in the image below.
(Ignore message “Could not find a user name for this user ID.”)
Check “Apply permissions recursively” and click SAVE.
Plex should now have access.
Now you can go to Plugins and start Plex.
Plex is now starting, to access the web GUI go to
http://<plex_ip>:32400/web/ or just click MANAGE. Now you can log in to Plex with your Plex account and go trough it’s wizard.
When you are going to add a library all your media will be in
/media (or anywhere you chose to mount it).
This is how the structure of my added library is set up:
|Musikk – Enkeltsanger – Dubstep & DnB||Music||/media/audio/Enkeltsanger/Dubstep, DnB|
|Musikk – Enkeltsanger – EDM Generell||Music||/media/audio/Enkeltsanger/EDM Generell|
|Musikk – Enkeltsanger – Hardcore EDM||Music||/media/audio/Enkeltsanger/Hardcore EDM|
|Musikk – Enkeltsanger – Hardstyle||Music||/media/audio/Enkeltsanger/Hardstyle|
|Musikk – Utgivelser||Music||/media/audio/Utgivelser|
|Musikk – Utgivelser – Rippet||Music||/media/audio/Utgivelser-Rippet|
Hopefully you now have a functional Plex Media Server up and running.
To stream your media you can use the free web app or one of the other clients. To access Plex outside the LAN you will properly need to configure a port forward in your router, but there is no need for a static IP or dynamic DNS for this to work. Plex use port 32400 as default, this can be enabled under remote access in settings.
Enjoy your media.