User Tools

Site Tools


howto:linux:install:ubuntu12-04

This is an old revision of the document!


This guide assumes you've installed a fresh (default) installation of Ubuntu 12.04.5 and assumes you have two storage devices - one for the OS and one for your media. I choose Ubuntu 12.04.5 as newer versions of Ubuntu (at the time of writing this) have some nasty VNC and SAMBA bugs (personally, I hate workarounds).

NOTE: If you plan on using SAMBA to share media you need to be aware of some SAMBA bugs in Ubuntu 12.04.5. If you set your NIC(s) to use a static IP address SAMBA will not function properly. Use a DHCP reservation (via router) instead.

Tested and working without any issues, log warnings, etc. with Serviio 1.5.
When entering commands, change <username> to whatever usename you have (but not root!).

Let's get started…

#openssh-server install, run this in terminal via GUI
sudo apt-get install openssh-server

#bandwidth tracking application (to be responsible about ISP usage):
#run through terminal every once in a while to see bandwidth usage and realtime traffic
sudo apt-get install vnstat, iftop

#base codec install - installs dependancies used in ffmpeg and x264:
apt-get install dcraw libfaac-dev libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev libx11-dev libxfixes-dev texi2html zlib1g-dev libssl1.0.0 libssl-dev libxvidcore-dev libxvidcore4 libass-dev librtmp-dev

#custom serviio version of ffmpeg install (compiled by me), always use Petr's (Serviio developer) customized version of ffmpeg to ensure proper serviio function:
#installing newer git obtainable versions of ffmpeg break Serviio's transcoding functions (cause stuttering, player disconnections, poor quality video, etc.).
cd /tmp
wget http://209.148.82.207/downloads/ffmpeg_201502201629-git-1_amd64.deb
wget http://209.148.82.207/downloads/x264_0.144.2525+git40bb568-1_amd64.deb
wget http://209.148.82.207/downloads/rtmpdump_201502201618-git-1_amd64.deb

#install the custom serviio packages:
sudo dpkg -i ffmpeg_201502201629-git-1_amd64.deb
sudo dpkg -i x264_0.144.2525+git40bb568-1_amd64.deb
sudo dpkg -i rtmpdump_201502201618-git-1_amd64.deb

#java 8 install:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

#serviio 1.5 download:
wget http://download.serviio.org/releases/serviio-1.5-linux.tar.gz
tar xzf serviio-1.5-linux.tar.gz

#we keep everything neat and organized on our user profile directory:
mkdir /home/<username>/Programs
cp -r serviio-1.5 /home/<username>/Programs

#make serviio start automatically after network is active:
sudo nano /etc/init/serviio.conf

start on started networking
script
/home/<username>/Programs/serviio-1.5/bin/serviio.sh
end script

#latest sabnzbd install
sudo add-apt-repository ppa:jcfp/ppa
sudo apt-get update
sudo apt-get install sabnzbdplus

sudo nano /etc/default/sabnzbdplus

USER=<username>
HOST=0.0.0.0

#Couchpotato installation:
cd /home/<username>/Programs
sudo apt-get install git
git clone https://github.com/RuudBurger/CouchPotatoServer.git
sudo cp /home/<username>/Programs/CouchPotatoServer/init/ubuntu.default /etc/default/couchpotato

sudo nano /etc/default/couchpotato
CP_USER=<username>
CP_HOME=/home/<username>/Programs/CouchPotatoServer

sudo ln -s /home/<username>/Programs/CouchPotatoServer/init/ubuntu /etc/init.d/couchpotato
sudo update-rc.d couchpotato defaults

#SickRage installation - I suggest using dev version once installed (supports more indexers):
git clone git:github.com/echel0n/SickRage.git
sudo nano /etc/default/sickbeard

SB_USER=<username>
SB_HOME=/home/<username>/Programs/SickRage

sudo ln -s /home/<username>/Programs/SickRage/init.ubuntu /etc/init.d/sickbeard
sudo update-rc.d sickbeard defaults

#create media storage using gparted (aligns disk correctly, Ubuntu 12.04.5 native Disk utility does not):
#disks which are not aligned properly perform very poorly and can cause Serviio to stutter / jitter when transcoding!
sudo apt-get install gparted

#select your disk (eg: sdb) can create a partition table, format as ext4:
#now let's mount the new storage:
sudo mkdir /media/storage

#automatically mount storage after a reboot:
sudo nano -Bw /etc/fstab
/dev/sdb1 /media/storage ext4 defaults 0 2

#remount the storage so we can take ownership:
sudo mount -a
sudo chown -R <username>:<username> /media/storage

#reboot to make our changes effective:
sudo reboot -n

Create directories on storage as required (you can do this via the GUI) on /media/storage/
data
> data > movies
> data > television
transcoding
downloads
downloads > completed
> downloads > movies
> downloads > television

Downloads go into downloads folder and once complete the applicable sudirectory (by sabNZBd) then are post-processed / moved to “data > movies” or “data > television”

#run the Serviio console to define what media is to be shared and set transcoding directory:
#defemine media storage location as the transcoding dump for Serviio hence the trancoding directory (eg: /media/storage/trancoding)
cd /home/<username>/Programs/serviio-1.5/bin
sudo ./serviio-console.sh

Via GUI and enable file sharing (right click on directory) - you'll be asked to install 2 packages (samba and libpasswd - an automatic process), just click install.
I would enable guest access (but not RW access) other other players that don't require transcoding can play video (eg: KODI).

#reboot is required for shares to work.
sudo reboot -n

#if not done already, enable port forwarding (your router) as follows:
#crappy routers additionally require you turn on UPNP and enable IPv4 multicast support.
MediaBrowser: <LAN-IP>:23424 (UDP + TCP)
SickRage: <LAN-IP>:8081 (TCP)
sabNZBd: <LAN-IP>:8080 (TCP)
Couchpotato: <LAN-IP>:5050 (TCP)

LAN computers can access your shares via:
Windows: \\<LAN-IP> or \\<MACHINENAME>
Linux / Mac OS: smb:
<LAN-IP> or smb:<MACHINENAME>

If you want to access services outside your LAN I strongly suggest using SSL.

howto/linux/install/ubuntu12-04.1424721169.txt.gz · Last modified: 2015/02/23 19:52 by webclaw