How a tractor beam was created out of beams of ultrasound energy, and build your very own Free NAS Plex Server. Tractor Beam Article YouTube Center on GitHub FreeNAS Plex Setup Step One: Prepare your Storage The first step in creating your FreeNAS Plex Media server is to prepare it by creating a Volume, two datasets and a share. 1. Click the "Storage" tab from the main menu You'll see two options. "UFS Volume Manager" and "ZFS Volume Manager". UFS uses fewer resources than ZFS, making it ideal for lower-powered systems, but it's not as robust as ZFS and you CAN'T use it for plugins. 2. Click "ZFS Volume Manager" and give your new volume a name. (I'm calling mine CrankyVolume) 3. Click the "+" to add all available disks to the volume Our Machine has two 1TB drives, so FreeNAS will automatically select a Mirror as the optimal layout. Don't mess with this unless you REALLY know what your doing. Even then, don't mess with it unless OTHER people think you know what you're doing… Even then, don't mess with it unless those other people who think you know what you're doing, actually know what THEY'RE doing. – In other words… don't mess with it. 4. Click "Add Volume" Once the volume has been created, you'll see it added to the "Active Volumes" list 5. Select the volume you just made, and click the "Create ZFS Dataset" icon on the menu bar towards the bottom of the window. A window named "Create ZFS Dataset" will pop open. 6. Give your new Dataset a name (I'm calling mine, "CrankyMedia") and click "Add Dataset" We now need to set permissions. Permissions tells the FreeNAS Operating System who should be able to access the Dataset we just created. 7. Select your newly created Dataset and click the "Change Permission" icon on menu towards the bottom of the screen. The "Change Permissions" window will pop open. 8. In the "Mode" section, check the "Write" box under the "Other" Mode. – Then click the "Change" Button. We're doing this so that guests can add media files to you dataset. – If this is NOT a new Installation and you're using a previously created dataset, then you should enable the "Set Permission Recursively" option so that proper permissions will be given to older files. We just created a dataset for our media, but now we need another dataset to hold our plugins. 9. Select the VOLUME – NOT THE DATASET -- you created earlier, remember that mine was called "CrankyVolume", and click "Create ZFS Dataset" on the menu towards the bottom of the screen. As before, the "Create ZFS Dataset" window will pop open. 10. Name your new Dataset and click "Add Dataset" Technically, what we're doing is creating a JAIL for our Plugin information… so I called my new volume "CrankyJails" 11. Click the "JAILS" tab on the main menu. 12. In the section called "Jail Root" – browse though the file tree to find the path to the dataset you just created to hold your plugin information. In our case, the path was root/mnt/CrankyVolume/CrankyJails 13. Click "Save" We've created a volume, two datasets and told FreeNAS where to put plugins. Now we need to create a Sharing Tree. – On the left side of the main menu, you'll see the "Sharing" tab. This is where you choose the sharing options that work for your network and clients. There will be three options available to you: Apple (AFP) Share, Unix (NFS) Shares and Window (CIFS) Shares. I typically use CIFS (or SMB) because most every Operating System knows how to use them. You can get OS specific performance boosts by using AFP or NFS, but if you want the maximum compatibility possible – and trust me… you do -- use CIFS. 14. Expand the "Sharing" dropdown on the left side of the main menu, then expand the "Windows (CIFS) Shares" tab. 15. Click "Add Windows (CIFS) Shares" The "Add Windows (CIFS) Share" window will pop up. 16. Give the Share a name. I'm calling my share: CrankyShare 17. In the "Path" section, browse to the dataset you created to hold your media. In our case, the path would be "root/mnt/CrankyVolume/CrankyMedia 18. Scroll down and enable "Allow Guest Access" This will allow anonymous users on your network to read the media files in your share. You can close this down later to restrict access, but we're just trying to get the share up and running. 19. Click "OK" A Window will open, asking you if you want to Enable the Service 20. Click "Yes" Woot! - Your FreeNAS Dataset is now accessible by any computer on your network, using the CIFS protocol Step 2: Accessing and Filling your Media Server You just created a usable Volume, Dataset and share, but now you need to connect and copy to that share. I'm going to show you how to access and fill the Media server using a Windows machine, but you can use any OS that speaks the CIFS protocol. Just substitute your access method for mine. 21. Open Windows Explorer and type "\\IP address of your FreeNAS" You'll see the share that you created. You can now drag and drop your media files directly into your FreeNAS Share. 22. Copy your Files – And be quick about it. Pro Tip: Don't just dump your files into the Share Directory. It's better to keep them out of the root share by creating a folder in which all your media will reside. In our case, I've created a folder called, "CrankyContent" Step 3: Install and Enable Plex With you share properly enabled and filled with content – We now need to install the Plex Media Server plugin. Make sure your FreeNAS is connected to the Internet, because it will need to download the plugins you select, then: 23. Click the "Plugins" tab on the main menu. You'll get a list of all the available plugins in the FreeNAS database. 24. Scroll down to "PlexMediaServer", select it, and click "Install" You'll get a popup window asking you if you're SURE you want to install the plugin. 25. Click "Ok" Download and installation will take a while. Once that's done: 26. Click the "Jails" tab from the top menu You'll see the "PlexMediaServer" in your Jails list 27. Select the "Plex Media Server" Jail and then click the "Add Storage" icon on the menu to the bottom of the screen. An "Add Storage" window will pop open. This is where you give the Plex plugin the location of the Dataset you've created to hold your media. 28. In the "Source" section, click "Browse", then navigate to the Dataset you created for your media. In our example, I used "root/mnt/CrankyVolume/CrankyMedia" You also need to tell Plex where it's going to store the index it makes of the media in your Dataset. This is important, because you don't want Plex to have to search through ALL of your content every time takes a look at your library. 29. In the "Destination" section, click "Browse", then navigate to "/media" 30. Click "Ok" With the Plex Media Server initial configuration completed, we now need to turn it on: 31. Click the "Plugins" Tab on the main window. 32. Then Click the "Installed" tab on the bar below the "Plugins" menu You'll see a slider under "Service Status" that defaults to "off" 33. Click the slider – and it will turn the service on. To the left of the screen, you'll see a plugins dropdown. Open it to see the "PlexMediaServer" selection. 34. Click "PlexMediaServer" A window named "PlexMediaServer" will pop open. 35. Check the box next to "Disable Remote Security" to make it easier for us to manage our Plex Server 36. Click "Ok" 37. Once again, click the "PlexMediaServer" dropdown on the left side of the screen. As before, a window named "PlexMediaServer" will pop up, but this time, notice that the word "here" in the sentence "Click here to access your Plex Media Server" is a hotlink. 38. Click "Here" You will now navigate to the Plex Plugin User Interface. The first thing you'll see is the "End User License Agreement" – Ignore it, like you've ignored every other EULA you've ever seen, and 39. Click "Agree" Registering with Plex will give access to some features on the Plex website, but for now: 40. Click "Skip" – and "Skip" again in the popup window Your Plex Media server needs a unique network name so it can be identified on the network. Our server is called "CrankyServer" 41. Click "Next" You'll come to a screen sub-titled "Create your Media Library" 42. Click "Add Section" The "Add Section" window will pop up, asking you what type of media you want to add to your Plex Media Server" – You can choose between Movies, TV Shows, Music, Photos and Home Movies, but for simplicity, we're going to: 43. Choose "Movies" The "Add Section" Window will pop-up. Remember when we were doing the initial configuration of the plugin and we had to tell Plex where to store the index? Well here is where you tell the Interface where that index can be found. 44. Click "Add Folder" And browse to the "media" folder where we told Plex to store its index. 45. Click "Add" 46. Click "Save" Plex is now looking through that index and the folder that it indexes. In just a few moments, it will be done with its search and you'll see the "Refresh" icon go static. 47. Click "Next" You'll now find yourself in the Channels page. Plex will suggest a few channels for you to add to your media server, but you can just skip this step – Of course, first adding the only channel that you MUST have on your Plex server. Scroll to the bottom and: 48. Click "Next" You should find yourself on the "Congratulations" screen. Unless you did something horribly wrong, in which case, you're a bad person, and should start over. In any case, I'm going to assume you're a good person and now you should: 49. Click "Done" You'll be able to see all of the movies that you added to your dataset. Clicking any of those movies will start the video in your player. You have now successfully setup the Plex Server plugin on your FreeNAS box. Treat yourself to an ice-cream and relax. If you're lactose intolerant, who cares… it's not like YOU have to suffer through the bouts of horrible gas. Bonus Round! Of course you'll be adding more media to your media server. You don't have to go through this procedure every time you do so. If you add more movies, go to the "My Library" section of the Plex interface and click "Movies", "More" and "Force Refresh" – Plex will re-index your dataset. I would have told you that sooner, but I was busy passing ice-cream gas down the halls of my rectory.