Technical features of Linux version🔗

Location of server files

The essential files of the Eocortex server are located on the following paths:

  • Server folder: /opt/EocortexServer

  • Server logs: /opt/EocortexServer/Eocortex/Logs_EocortexServer

  • Server configuration: /opt/EocortexServer/EocortexServerConfigs

Automatic drive mounting when launching a server

At startup, the Eocortex server automatically mounts all suitable drive partitions to the /mnt/{uuid} folder, where uuid is the universal unique identifier of the drive partition. This is done to ensure that when the system is rebooted, the Eocortex server can still write the archive even if the partitions have not been mounted by the user beforehand. It is not recommended to mount drive partitions and configure recording of the archive to them independently and without a particular need.

Automatic drive mounting is not performed for system drives, software RAID drives, etc, i.e. disks flagged as:

  • boot

  • esp

  • bios_grub

  • legacy_boot

  • msftres

  • irst

  • root

  • swap

  • raid

The list of flags for a partition can be obtained by using the command:

parted -l

The following file systems are supported:

  • ext2

  • ext3

  • ext4

  • btrfs

  • reiserfs

  • ntfs

The file system can be identified by using the command:

df -Th | grep "^/dev"
Adding new drives to the system

When manually adding a new disk to the system, it is required to physically connect the disk, format it and create a partition on it. After that, the Eocortex server will automatically mount this disk at startup, as described above.

Disks can be added manually with the fdisk utility:

  1. Check the information about the disk:

    sudo fdisk -l
    
    ../_images/check-disk.png
  2. Create a partition on the disk:

    sudo fdisk /dev/vbd
    
    To further configure the default disk, enter the **n** character, then press **Enter** four times and enter the **w** character.
    
    .. image:: /install/img/create-disk-partition.png
    
  3. Check if the partition was created correctly:

    ../_images/check-disk-partition.png
  4. Create an ext4 file system in the new partition:

    sudo mkfs.ext4 /dev/vdb1
    
    ../_images/create-disk-file-system.png
  5. Restart Eocortex:

    sudo systemctl restart eocortex
    
  6. Once restarted, set up the archive in the Eocortex Configurator application.

Note

Description of working with drives using gnome-disk.

Note

When adding a drive with an existing partition to the system, no additional settings are required.

Warning

The Eocortex server only works with drives that have been partitioned. On drives with no partitions but with a file system the correct operation of the application and the archive is not guaranteed. To use such a drive, follow the steps described above, as when adding a new drive to the system. Note that in this case the data on the drive will be erased.

Operating aspects of Firebird database

After installing the Eocortex server, a situation may arise when writing to the archive is being performed but the database is absent (that is, the events are not saved in the log). This can happen after the drive for writing the archive to has been mounted in the user's folder. To solve this issue, it is necessary for the operating system user under whose credentials the database is accessed (the user firebird) to provide read access at the mounting point of the drive to which the archive is written.

This can be achieved using two methods described below.

  • Remounting the drive for writing to the archive in the system folder rather than in the folder of the current user.

  • Checking the path from the root (/) to the mounting point of the drive. The user firebird must have read access for every directory. It is possible to view directory permissions using the command:

    sudo ls -l
    

    Note

    The user firebird belongs to other users.

    To give the user firebird a permission to read the current directory, use the command:

    sudo chmod o+r
    

Warning

The second method should be used only when it is required to mount the drive in the selected folder, or when it is not permitted to change the mounting point.

Saving frames to drive

Saving frames (according to schedule, in response to a system event, or by user command) is allowed to any drive except the system one. If the frames are not being saved, it is required to make sure that the drive selected for saving is not the system one.

Access to cameras by domain names

By default, Linux prioritizes IPv6 addresses when resolving a domain name. Some camera plugins in Eocortex may not work with IPv6 addresses.

To solve this issue, it is required to add the following entry to the file /etc/gai.conf:

precedence ::ffff:0:0/96 100

As a result, when resolving all domain names, preference will be given to the IPv4 addresses.

If it is required to set an IPv4 address for a specific name, it is possible to add a corresponding entry to the file /etc/hosts. For example:

192.168.100.1 cam-1.mycompany.com
Server shutdown and restart

The commands that control the state of the Eocortex server are shown below.

Server shutdown:

systemctl stop eocortex.service

Server launch:

systemctl start eocortex.service

Server restart:

systemctl restart eocortex.service

Server status check (active/inactive):

systemctl status eocortex.service