Setup Odroid HC2 as DVR storage

In an effort to set up a DVR for Channels I set up a NAS using Odroid HC2. The NAS appears to be working because I can see it on my laptop and can transfer files to/from it. SO, how do I set up the DVR? Channels is working on the same network and I have purchased the DVR subscription.

I can’t find any instructions on the process to set the NAS up as DVR storage. The Channels DVR page says to enter “http://dvr-desktop-s52i2sk.local.:8089/” This seems to point to my laptop and not the NAS. Maybe that’s OK but I get a “The site can’t be reached” message.

Help, please

I don’t know if that chipset is supported, but if you are running the Ubuntu image? You can use the installer listed on https://community.getchannels.com/dvr#install-Linux
Or else pick from the supported OSs listed there.

I tried the Docker version with the following result:
image

If it isn't obvious I have little experience with Linux but am sure that it is something that I can get up to speed on.
OMV is a Debian Linux application.

You seem to have the DVR installed on your windows PC. So first run the installer there and uninstall it.

Then run the Linux installer on your NAS. The docker stuff is much more complicated and not recommended unless you have experience with docker.

I see the Channels DVR in my Windows 10 home start menu. When I right click to uninstall Windows goes to their uninstaller but Channels does not show up on the program list. So, how do I uninstall?

Thanks again for your help.

Run the setup utility again and it will show an uninstall option. You can download it from our site if you deleted it from last time.

Ran setup again restarted laptop. no way to uninstall.

What do you see when you run the setup exe again?

I found SetupChannelsDVR in my downloads folder. The exact name would have helped. I was looking for a file in program files. There is no folder for Channels in Program files. Anyway, it now appears to be uninstalled.

In to Odroid HC2. I’ll let you know.

Thanks

1 Like

That didn’t aake long. I’m very new to Linux. Help from anyone on this failed install, please?

[email protected]'s password:
  ___      _           _     _  __  ___   _ _  _
 / _ \  __| |_ __ ___ (_) __| | \ \/ / | | | || |
| | | |/ _` | '__/ _ \| |/ _` |  \  /| | | | || |_
| |_| | (_| | | | (_) | | (_| |  /  \| |_| |__   _|
 \___/ \__,_|_|  \___/|_|\__,_| /_/\_\\___/   |_|


Welcome to ARMBIAN 5.46 user-built Debian GNU/Linux 9 (stretch) 4.9.103-odroidxu                                                                                                                     4
System load:   0.15 0.06 0.01   Up time:       4 days
Memory usage:  12 % of 1993MB   IP:            10.113.65.145
CPU temp:      56°C
Usage of /:    12% of 7.4G      storage/:      1% of 916G

Last login: Tue Oct  2 13:14:55 2018 from 10.113.65.135

$ curl -f -s https://getchannels.com/dvr/setup.sh | sh
Downloading Channels DVR 2018.09.06.1912 (linux-armv7l) to /srv/dev-disk-by-labe                                                                                                                     l-NAS/HDHomeRun/GAC/channels-dvr.....
sh: 75: channels-dvr/install.sh: Permission denied

ERROR: Installation of Channels DVR failed.
ERROR: Please contact [email protected] with the full output above.

Can you run it again as so and then copy/paste all the output:

curl -f -s https://getchannels.com/dvr/setup.sh | sh -x

$ curl -f -s https://getchannels.com/dvr/setup.sh | sh -x
+ set -e
+ trap atexit EXIT
+ curl --version
+ have_curl=1
+ uname -s
+ tr [A-Z] [a-z]
+ os=linux
+ uname -m
+ arch=armv7l
+ fetch https://channels-dvr.s3.amazonaws.com/latest.txt -
+ options=
+ [ 1 = 1 ]
+ test -n
+ curl -f -s https://channels-dvr.s3.amazonaws.com/latest.txt -o -
+ version=2018.09.06.1912
+ [ armv7l = amd64 ]
+ [ armv7l = armv8l ]
+ [ armv7l = aarch64 ]
+ [ linux = freebsd -a armv7l = i386 -a 2018.09.06.1912 = 2018.07.01.1750 ]
+ pwd
+ printf Downloading Channels DVR 2018.09.06.1912 (linux-armv7l) to /srv/dev-disk-by-label-NAS/HDHomeRun/GAC/channels-dvr
Downloading Channels DVR 2018.09.06.1912 (linux-armv7l) to /srv/dev-disk-by-label-NAS/HDHomeRun/GAC/channels-dvr+ mkdir -p channels-dvr/2018.09.06.1912 channels-dvr/data
+ fetch https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/linux-armv7l.sha256 channels-dvr/2018.09.06.1912/linux-armv7l.sha256
+ options=
+ [ 1 = 1 ]
+ test -n
+ curl -f -s https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/linux-armv7l.sha256 -o channels-dvr/2018.09.06.1912/linux-armv7l.sha256
+ printf .
.+ fetch https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/ffmpeg-linux-armv7l channels-dvr/2018.09.06.1912/ffmpeg
+ options=
+ [ 1 = 1 ]
+ test -n
+ curl -f -s https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/ffmpeg-linux-armv7l -o channels-dvr/2018.09.06.1912/ffmpeg
+ printf .
.+ fetch https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/ffprobe-linux-armv7l channels-dvr/2018.09.06.1912/ffprobe
+ options=
+ [ 1 = 1 ]
+ test -n
+ curl -f -s https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/ffprobe-linux-armv7l -o channels-dvr/2018.09.06.1912/ffprobe
+ printf .
.+ fetch https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/comskip-linux-armv7l channels-dvr/2018.09.06.1912/comskip
+ options=
+ [ 1 = 1 ]
+ test -n
+ curl -f -s https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/comskip-linux-armv7l -o channels-dvr/2018.09.06.1912/comskip
+ printf .
.+ fetch https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/channels-dvr-linux-armv7l channels-dvr/2018.09.06.1912/channels-dvr
+ options=
+ [ 1 = 1 ]
+ test -n
+ curl -f -s https://channels-dvr.s3.amazonaws.com/2018.09.06.1912/channels-dvr-linux-armv7l -o channels-dvr/2018.09.06.1912/channels-dvr
+ echo .
.
+ chmod +x channels-dvr/2018.09.06.1912/channels-dvr channels-dvr/2018.09.06.1912/comskip channels-dvr/2018.09.06.1912/ffmpeg channels-dvr/2018.09.06.1912/ffprobe channels-dvr/2018.09.06.1912/linux-armv7l.sha256
+ ln -nsf 2018.09.06.1912 channels-dvr/latest
+ test -n
+ fetch https://getchannels.com/dvr/install-linux.sh channels-dvr/install.sh
+ options=
+ [ 1 = 1 ]
+ test -n
+ curl -f -s https://getchannels.com/dvr/install-linux.sh -o channels-dvr/install.sh
+ fetch https://getchannels.com/dvr/uninstall-linux.sh channels-dvr/uninstall.sh
+ options=
+ [ 1 = 1 ]
+ test -n
+ curl -f -s https://getchannels.com/dvr/uninstall-linux.sh -o channels-dvr/uninstall.sh
+ chmod +x channels-dvr/install.sh channels-dvr/uninstall.sh
+ channels-dvr/install.sh
sh: 75: channels-dvr/install.sh: Permission denied
+ atexit
+ [ 126 -ne 0 ]
+ echo

+ echo ERROR: Installation of Channels DVR failed.
ERROR: Installation of Channels DVR failed.
+ echo ERROR: Please contact [email protected] with the full output above.
ERROR: Please contact [email protected] with the full output above.

Thanks. How about the output of these commands:

mount
ls -alh channels-dvr

$ mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=951536k,nr_inodes=186488,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=204184k,mode=755)
/dev/mmcblk1p2 on / type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
mqueue on /dev/mqueue type mqueue (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
tmpfs on /tmp type tmpfs (rw,relatime)
/dev/mmcblk1p1 on /boot type ext4 (rw,relatime,errors=remount-ro,commit=600,data=ordered)
/dev/mmcblk1p2 on /var/folder2ram/var/log type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/log)
folder2ram on /var/log type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk1p2 on /var/folder2ram/var/tmp type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/tmp)
folder2ram on /var/tmp type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk1p2 on /var/folder2ram/var/lib/openmediavault/rrd type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/lib/openmediavault/rrd)
folder2ram on /var/lib/openmediavault/rrd type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk1p2 on /var/folder2ram/var/spool type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/spool)
folder2ram on /var/spool type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk1p2 on /var/folder2ram/var/lib/rrdcached type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/lib/rrdcached)
folder2ram on /var/lib/rrdcached type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk1p2 on /var/folder2ram/var/lib/monit type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/lib/monit)
folder2ram on /var/lib/monit type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk1p2 on /var/folder2ram/var/lib/php type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/lib/php)
folder2ram on /var/lib/php type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk1p2 on /var/folder2ram/var/lib/netatalk/CNID type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/lib/netatalk/CNID)
folder2ram on /var/lib/netatalk/CNID type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk1p2 on /var/folder2ram/var/cache/samba type btrfs (rw,noatime,nodiratime,compress=lzo,ssd,space_cache,commit=600,subvolid=5,subvol=/var/cache/samba)
folder2ram on /var/cache/samba type tmpfs (rw,nosuid,nodev,noexec,relatime)
/dev/sda1 on /srv/dev-disk-by-label-NAS type ext4 (rw,noexec,relatime,stripe=8191,data=ordered,jqfmt=vfsv0,usrjquota=aquota.user,grpjquota=aquota.group)
/dev/sda1 on /sharedfolders/HDHomeRun type ext4 (rw,noexec,relatime,stripe=8191,data=ordered,jqfmt=vfsv0,usrjquota=aquota.user,grpjquota=aquota.group)
/dev/sda1 on /sharedfolders/DVR type ext4 (rw,noexec,relatime,stripe=8191,data=ordered,jqfmt=vfsv0,usrjquota=aquota.user,grpjquota=aquota.group)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
nsfs on /run/docker/netns/default type nsfs (rw)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=204180k,mode=700,uid=1000,gid=100)

The second command didn’t run:

ls -alh channels-dvr

Do this one too:

sh -x channels-dvr/install.sh

I entered my PW when requested

sh -x channels-dvr/install.sh
+ set -e
channels-dvr/install.sh: 5: channels-dvr/install.sh: Bad substitution
+ cd
+ pwd
+ base_path=/srv/dev-disk-by-label-NAS/HDHomeRun/GAC
+ which sudo
+ sudo_path=/usr/bin/sudo
+ id -u
+ uid=1000
+ sudo -n true
+ echo NOTE: Your root password is required to install Channels DVR as a service.
NOTE: Your root password is required to install Channels DVR as a service.
+ echo NOTE: Please enter it at the prompt below.
NOTE: Please enter it at the prompt below.
+ systemctl
+ grep -q \-.mount
+ install_systemd
+ sudo tee /etc/systemd/system/channels-dvr.service
+ [ 1000 = 0 ]
+ /usr/bin/sudo tee+  /etc/systemd/system/channels-dvr.service
id -n -u
+ id -n -g
+ cat
[sudo] password for GAC:
+ sudo systemctl enable channels-dvr
+ [ 1000 = 0 ]
+ /usr/bin/sudo systemctl enable channels-dvr
Created symlink /etc/systemd/system/multi-user.target.wants/channels-dvr.service → /etc/systemd/system/channels-dvr.service.
+ sudo systemctl start channels-dvr
+ [ 1000 = 0 ]
+ /usr/bin/sudo systemctl start channels-dvr

Okay, I think the DVR is installed and running now. You can open http://x.x.x.x:8089 to access it using your Odroid IP.

Can you paste the output of this command:

sh --version

and this command

ls -alh channels-dvr

It refused connection

sh --version
sh: 0: Illegal option –
$ ls -alh channels-dvr
total 24K
drwxr-sr-x 4 GAC users 4.0K Oct 3 16:03 .
drwx–S— 3 GAC users 4.0K Oct 3 15:50 …
drwxr-sr-x 2 GAC users 4.0K Oct 3 15:51 2018.09.06.1912
drwxr-sr-x 2 GAC users 4.0K Oct 3 15:50 data
-rwxr-xr-x 1 GAC users 3.2K Oct 3 16:03 install.sh
lrwxrwxrwx 1 GAC users 15 Oct 3 16:03 latest -> 2018.09.06.1912
-rwxr-xr-x 1 GAC users 990 Oct 3 16:03 uninstall.sh
$ ^C

Okay, I see the problem.

First uninstall using this command:

sh channels-dvr/uninstall.sh

Then you need to install bash:

sudo apt-get install bash

and verify this command doesn’t error:

ls -alh /bin/bash

and then you can re-run the original installer command that you copied from our website to install from scratch.

$ sh channels-dvr/uninstall.sh
Removed /etc/systemd/system/multi-user.target.wants/channels-dvr.service.

$ sudo apt-get install bash
Reading package lists... Done
Building dependency tree
Reading state information... Done
bash is already the newest version (4.4-5).
0 upgraded, 0 newly installed, 0 to remove and 27 not upgraded.

$ ls -alh /bin/bash
-rwxr-xr-x 1 root root 726K May 15  2017 /bin/bash

$ curl -f -s https://getchannels.com/dvr/setup.sh | sh
Downloading Channels DVR 2018.09.06.1912 (linux-armv7l) to /srv/dev-disk-by-label-NAS/HDHomeRun/GAC/channels-dvr.....
sh: 75: channels-dvr/install.sh: Permission denied

ERROR: Installation of Channels DVR failed.
ERROR: Please contact [email protected] with the full output above.