Other OS

Make a Torrent/ Media NAS with Fedora and Banana Pi

2 7257
Salvo  
Post Last Edited by Salvo at 2014-6-23 04:50

Let's say you want to make a NAS (Network Attached Storage) device on your home network to share your media/movies/music collection.
And you also want it to run the Transmission daemon so that you can use it to download torrents directly into it

You'll need :

1) A hard drive which will contain your media
2) A bananapi
3) A SD card with the fedora image I posted in another thread.
4) An ethernet cable
5) A fixed ip address for your NAS


let's begin:

Insert the SD card into your banana pi and turn it on. You should be greeted with a login screen. Log in into it with your username and password .
Become root  : sudo su -

If your banana pi did not get an address from a DHCP server we are going to set one manually. This version of the kernel has a little bug that causes the MAC address to be changing at every boot, but we want it to stay static, so here's what to do:

cd into /etc/sysconfig/network-scripts

there should be a  number of files beginning by ifcfg-xxxx
locate the one that belongs to the ethernet connection (it should be called ifcfg-Wired_Connection, or something like that). Open it with a text editor and edit it

TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=eth0
UUID=9f5585cc-c036-4330-ab4d-18a79ffb9560
ONBOOT=yes
MACADDR=EA:40:12:13:C1:01
IPADDR0=192.168.1.70
PREFIX0=24
GATEWAY0=192.168.1.1
DNS1=8.8.8.8
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes


Edit it so as to change the following items : MACADDR (this has to be set to your desired static MAC Address, just generate one from here : http://www.miniwebtool.com/mac-address-generator/
now change IPADDR0 to be the desired IP address for your NAS
change PREFIX0 to the desired netmask (prefix 24 means 255.255.255.0)
change GATEWAY0 to be the ip address of your home router
change DNS1 to be the ip address of your favourite DNS server (this example is using google's)

Save it and reboot your banana pi

Once it has booted log back in and edit the file /etc/yum.conf , we want to disable automatic update of kernel. Add this line
exclude=kernel* (just under installonly_limit=3)

turn off firewall
systemctl disable firewalld
systemctl stop firewalld


Now run a yum -y update. This will take some time as the system downloads updates and updates itsefl. Again once it's finished do a reboot. (it 's not necessary but it does not hurt either)

Create a mountpoint for the media

mkdir /mnt/mymedia

attach the hard drive to the banana pi (either via SATA or USB)

we must create a partition on it and then format it  (if you don't know how to partition your drive,  chances are it's already partitioned, same goes with the formatting).
I would suggest you to use a linux filesystem on it. So if your partition is called /dev/sda1

mkfs.ext4 /dev/sda1 -L MYMEDIA

create an entry in the fstab

LABEL=MYMEDIA                  /mnt/mymedia                 ext4                       defaults 0 0

and mount all :

mount -a


Now install the NAS software

yum -y install samba transmission-daemon

Let's configure samba first:

edit the file /etc/samba/smb.conf


in the [global] section locate

workgroup = MYWORKGROUP  

and change it to something you like

uncomment the  host allow line and change it to reflect your network

hosts allow = 127. 192.168.1.

comment out  load printers = yes and cups options = raw

scroll down to the end of the file and add these lines

        [torrents]
        comment = Torrents Stuff
        path = /mnt/mymedia/torrents
        public = yes
        writable = yes
        printable = no
        valid users = myuser

You need to create the samba user myuser (replace it with a name that you like)


useradd -G transmission -d /mnt/mymedia/torrents myuser
mkdir /mnt/mymedia/torrents
chown -R myuser:transmission /mnt/mymedia/torrents
chmod 2775  /mnt/mymedia/torrents
smbpasswd -a myuser
(this will allow you to set a password for myuser)

enable the service

systemctl enable smb
systemctl start smb


Now for the torrent daemon

edit the file /usr/lib/systemd/system/transmission-daemon.service

change the line that begins with ExecStart like this

ExecStart=/usr/bin/transmission-daemon -a 192.168.1.* -w /mnt/mymedia/torrents -f --log-error

where basically 192.168.1. is the whitelist (all addresses in this network will be able to use the transmission daemon) and the /mnt/mymedia/torrents is the download directory

enable and start the service

systemctl enable transmission-daemon
systemctl start transmission-daemon


and disable graphical login screen

systemctl isolate multi-user.target
systemctl set-default multi-user.target

now fire up your browser to the address of your NAS http://192.168.1.70:9091/transmission/web/ and you should see the web UI

You can use the NAS share smb: //192.168.1.70/torrents from Windows/Linux/Mac by authenticating as 'myuser' with the password you set.

Happy NAS'ing!
I am going to make this torrent really soon. I just need to make sure that I work for the https://educatingessays.co.uk/write-my-essay/ site first. If I don't do that right now, then things will get really messay for me.

It is good thing that you have shared on the study of the place. I think that studies like this will be helpful in evaluating about the places and to know about the residential values of the place. Thank you for sharing.
123 movies

You have to log in before you can reply Login | Sign Up

Points Rules