Introduction
The Nx Server application is a lightweight application designed to run on both high and low-power computing hardware – including the Raspberry Pi and various other ARM-based Single Board Computers (SBC).
Which ARM-based SBC's are currently supported?
You may want to read our Arm Support Policy for more information. Additionally, we recommend reviewing the "Building Linux-based NVRs" article.
Installation
Below, you will find the instructions on how to install the Nx Server application onto your ARM-based SBC.
Note: When the *.deb package is installed on the Raspberry Pi OS version (aka headless version) instead of the desktop version, the user needs to install additional dependencies called 'cifs-utils'.
Step 1: Install the Nx Server application
- Log into your ARM-based device and launch the terminal application on your device with Ctrl+Alt+T if you are using a graphical interface. If you installed the operating system headless, you are in the terminal after booting up.
-
Switch to root.
$ sudo -s
-
Download the latest Nx Witness ARM installation package on your ARM-based device with the following command:
# wget https://updates.networkoptix.com/default/37512/arm/nxwitness-server-5.1.1.37512-linux_arm32.deb
-
Install the Nx Witness Mediaserver via the apt command:
# apt -f install ./nxwitness-server-5.1.1.37512-linux_arm32.deb
Step 2: Mount the storage
- Connect the storage to the ARM-based SBC.
-
Find the universally unique identifier (UUID) of the drive:
$ sudo blkid
-
Note the output for
/dev/sda1
(USB devices are often /sda1, but it could be different). -
Create a directory for the storage drive.
$ sudo mkdir /media/usb
-
Change the owner for the storage:
$ sudo chown -R pi:pi /media/usb
-
Mount the storage:
$ sudo mount -v /dev/sda1 /media/usb -o uid=pi,gid=pi
-
Open the file systems table configuration file:
$ sudo nano /etc/fstab
and add the following line to the file:
UUID=<THE NOTED OUTPUT> /media/usb ext4 auto,nofail,noatime,users,rw,uid=pi,gid=pi 0 0
- Press Ctrl+X and select (Y)es.
Step 3: Doing a clean uninstall (if required)
In case you want to do a clean uninstallation of the application on your ARM-based device, please follow the next steps.
- Log into your ARM-based device and launch the terminal application on your device with Ctrl+Alt+T if you are using a graphical interface. If you installed the operating system headless, you are in the terminal after booting up.
-
Remove the networkoptix directory.
$ sudo rm -rf /opt/networkoptix/
-
Remove the networkoptix-mediaserver directory.
$ sudo rm /etc/init.d/networkoptix-mediaserver
Take into account that these commands will not remove the video data that was recorded by the server to added storage.
If necessary, please locate the directory with the data and clean it up. With the rm command, in this example, this would be:
-
Remove the video data directory.
$ sudo rm -r /media/usb
Common issues
32-Bit vs. 64 Bit
Sometimes people experience issues during the installation since they are using the wrong installation package for the operating system (OS). For ARM there are options to use 32-bit OS, and 64-bit OS, and as a result we have a 32-bit version, and a 64-bit version of our VMS application.
You can check the OS with the following terminal command:
$ uname -m
For 32-bit, the result will look like:
$ armv7*
For 64-bit, the result will look like:
$ aarch64
Typically, if it is armv3 to v7, you are running a 32 bits operating system, if it is armv8 or aarch64: You are on a 64 bits operating system, and you should use the applicable installation package.
If a different result appears, a quick search online should reveal which architecture is supported for your ARM-based device.
Updates and missing dependencies
Before installing any application, it is highly recommended to ensure that your operating system and package managers are up-to-date. You can achieve this by using the following commonly used commands:
-
sudo apt update
: Refreshes the package lists. -
sudo apt upgrade
: Upgrades installed packages to their latest versions. -
sudo apt autoremove
: Removes orphaned packages that are no longer needed. -
sudo apt autoclean
: Cleans the local package cache by removing downloaded package files.
In some situations, especially when using a non-supported operating system, you might encounter an error indicating that a certain application is missing and required for our application's installation. In such cases, you should install the missing application before proceeding with the installation of our package. You can do this by using the following command:
$ sudo apt install <name_of_the_package>
The name of the required package will usually be displayed in the error notification. Occasionally, the package name may vary slightly, but it should become evident when you attempt to install the mentioned package.
Comments
0 comments
Article is closed for comments.