Transmission is a open source BitTorrent client that can be managed by it’s web-interface.

This application also have an official plugin in FreeNAS, that way you can download files directly from the torrent to your own FreeNAS server.

This is a guide to how you install and configure it.

Install the Transmission 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 Transmission will be stored. This is also the default location for downloaded files, but that can be changed.



To install Transmission, just find Transmission 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 files because the jail is isolated from the base OS.

By default all downloads from transmission will be stored inside it’s own jail, so no additional configuration of mount points are required.

The default download location is as follows:

/mnt/POOL_NAME/iocage/jails/JAIL_NAME/root/usr/local/etc/transmission/home/Downloads

However, if you want to use another dataset to store the downloads just follow these steps:

Go back to Plugins and open the drop-down menu right for the transmission 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.

In Source select a directory where you want your downloads to be stored.

In Destination write down Transmission’s default download location.

/mnt/POOL_NAME/iocage/jails/JAIL_NAME/root/usr/local/etc/transmission/home/Downloads

Click SAVE.

This is how my configuration looks: (volum3 is my pool)

Source: /mnt/volum3/download/transmission

Destination: /mnt/volum3/iocage/jails/transmission/root/usr/local/etc/transmission/home/Downloads

Share permissions

For Transmission to be able to use the added mount point the transmission user must have access to it. This can be done by giving it access by its user ID (UID) 921.

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.

Transmission should now have full access.

Accessing Transmission

Now you can go to Plugins and start Transmission.

Transmission is now starting, to access the web GUI go to http://<transmission_ip>:9091 or just click MANAGE.





Hopefully you now have a Transmission set up properly.