User Tools

Site Tools


howto:linux:install:centos7

2014-12-29
This was tested on CentOS 7 with Serviio 1.41.

Prerequisites

1. SELinux is disabled
2. Install Java (Serviio version 1.5 and later requires minimum Java 8):

yum install java-1.7.0-openjdk

Some repo's do not have a late enough Java version available. In these cases, downloading Java manually will be required. In this case please follow this recipe:

2a. Go to Oracle Java 8 JRE Downloads Page (http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html) and download the appropriate version. You will need to accept the t's and c's, after that the URL can be copied using your browser.
2b. Use wget to download the package. Example instructions follow, your URL may be different.

cd ~
wget http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jre-8u131-linux-x64.rpm
sudo yum localinstall jre-8u131-linux-x64.rpm

2c. Assuming all goes well, delete the RPM when done:

rm ~/jre-8u131-linux-x64.rpm

2d. If you install the openJDK and find it doesn't work, you may need to remove it to allow instructions 2a thru c to work. I did this by using YUM to search for installed packages, finding the jre package, and then issuing sudo yum remove (package) to get rid of it. Uninstalling the “java-1.7.0-openjdk” on its own was not enough.

3. Install necessary repositories for ffmpeg:

yum -y install http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
yum -y install http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
yum -y install http://linuxdownload.adobe.com/linux/x86_64/adobe-release-x86_64-1.0-1.noarch.rpm

4. Install ffmpeg:

yum install ffmpeg

Install/Extract Serviio

Always check http://www.serviio.org/download for the latest version first.

wget http://download.serviio.org/releases/serviio-1.4.1.2-linux.tar.gz
tar -C /opt -zxvf serviio-1.4.1.2-linux.tar.gz
mv /opt/serviio-1.4.1.2 /opt/serviio

Create Serviio's user

useradd -d /opt/serviio -r serviio
chown -R serviio:serviio /opt/serviio
passwd serviio
//enter a secure password you just have to remember for one login//

After the password for the user serviio is set, please logon and logoff with this user via console or ssh. If you won't, user serviio won't have any access to directories you want to share.

Create Service called serviio

Create systemd service file:

touch /lib/systemd/system/serviio.service

File /lib/systemd/system/serviio.service requires the following content:

[Unit]
Description=Serviio Server Daemon
After=syslog.target network.target

[Service]
User=serviio
Type=simple
ExecStart=/opt/serviio/bin/serviio.sh

[Install]
WantedBy=multi-user.target

Enable Serviio Service on Linux startup:

systemctl daemon-reload
systemctl enable serviio

Start Serviio Service:

systemctl start serviio

Firewall issues

1. Register Serviio as a configurable firewall package
Create firewall configuration file / etc/ firewalld/services/serviio.xml (Sorry for the blanks in the path above, but unfortunately this wiki says 'access denied' when trying to code subdirs of etc without blanks)
File requires the following content:

<?xml version="1.0" encoding="utf-8"?>
<service version="1.0">
	<short>serviio</short>
	<description>Serviio Server</description>
	<port port="8895" protocol="udp"/>
	<port port="8895" protocol="tcp"/>
	<port port="1900" protocol="udp"/>
	<port port="1900" protocol="tcp"/>
	<port port="23423" protocol="udp"/>
	<port port="23423" protocol="tcp"/>
	<port port="23424" protocol="udp"/>
	<port port="23424" protocol="tcp"/>
</service>

2. Open Firewall for Serviio:

systemctl stop firewalld
systemctl start firewalld
firewall-cmd --permanent --zone=public --add-service=serviio
firewall-cmd --reload
howto/linux/install/centos7.txt · Last modified: 2017/06/05 07:30 by milkmansson