# Linux (Other Distribution)

This is a distribution-agnostic package that can be used if eazyBackup does not have a more specific package available for your Linux distribution.

Please note that in order to avoid distribution-specific differences, the package does not automatically start on boot. You should configure your system to run the launch script in `/opt/` on boot (e.g. via a systemd unit, upstart script, `/etc/init.d/` script, or a line in `init.rc`).

### **System Requirements**

***

* CPU: `x86_64`, or `x86_32` with `SSE2`, or `ARM` (see below)
* Kernel 2.6.23 or later
* Dependencies
  * `bash`, `xz`, GNU `awk`, and standard GNU/Linux system utilities
  * `ca-certificates` and `tzdata` (see below)

#### **ARM CPU support**

eazyBackup is available for multiple ARM platform variants. The eazyBackup installer will select the best available binary for your hardware at install-time.

| **Platform** | **Description**                                                                 |
| ------------ | ------------------------------------------------------------------------------- |
| ARMv8l       | ARM 64-bit (Aarch64), no glibc required                                         |
| ARMv7l       | ARM 32-bit with vfp, and a glibc-based OS with the "hard-float" ABI (gnueabihf) |
| ARMv6kl      | ARM 32-bit with vfp, no glibc required                                          |

Timezone database dependency

eazyBackup on Linux requires the OS to provide an up-to-date timezone database, to perform timezone calculations

* On many Linux distributions, installing the `tzdata` or `timezone` package should be sufficient
* Otherwise, eazyBackup will look for a timezone database in all of the following locations;
  * `/usr/share/zoneinfo`
  * `/usr/share/lib/zoneinfo`
  * `/usr/lib/locale/TZ`

#### **CA certificate database dependency**

eazyBackup on Linux requires the OS to provide an up-to-date set of root certificate authorities, to validate HTTPS / SSL connections.

* On many Linux distributions, installing the `ca-certificates` package should be sufficient
* Otherwise, eazyBackup will look for a certificate bundle in all of the following locations;
  * `/etc/ssl/certs/ca-certificates.crt` (used by Debian/Ubuntu/Gentoo etc.)
  * `/etc/pki/tls/certs/ca-bundle.crt` (used by Fedora/RHEL 6)
  * `/etc/ssl/ca-bundle.pem` (used by OpenSUSE)
  * `/etc/pki/tls/cacert.pem` (used by OpenELEC)
  * `/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem` (used by CentOS/RHEL 7)

### **Installation**&#x20;

***

Run the `.run` file. This is a self-extracting archive, and will need to be executed in an elevated environment.

The installer will:

1. Install the software into `/opt/eazyBackup`
2. Prompt you for an initial username and password
3. Register the current Linux device into that eazyBackup account
4. Start running eazyBackup in the background.

If you make a mistake with the username/password prompt, you can run the `/opt/eazyBackup/backup-tool login prompt` command to re-enter login details.

#### **Linux Install options**

You can control the installer by setting environment variables in your shell before running the `.run` file.

The following options are available:\
`WRITE_INSTALL_LOG` Set this to a file path, to record details of the installation.\
`OVERRIDE_INSTALL_SERVER` Set this to a URL (including `http`/`https` and trailing slash) to override the authentication Server URL used by eazyBackup.

You can set an environment variable in bash either on the same line e.g. `WRITE_INSTALL_LOG=install.log ./install.run`\
or as a separate `export` command e.g. `export WRITE_INSTALL_LOG=install.log` followed by `./install.run`<br>

### **Restarting at boot**

***

The installer creates a `backup-daemon-start.sh` script that can start the service. The eazyBackup agent on "Other Distribution" Linux can be restarted by running the `backup-daemon-start.sh` script.

In order for eazyBackup to start after a system reboot, you must configure this script to be run on system boot. Different Linux distributions support different methods for running commands on system boot: choose the most appropriate method for your Linux distribution. Some common choices are documented below.

#### **Preserve HOME environment variable**

eazBackup uses the `$HOME` environment variable to find its saved credentials. When configuring eazyBackup to start at system boot, ensure that the `$HOME` environment variable is set (i.e. to `/root/`), to ensure that eazyBackup can find its saved credentials. If eazyBackup is unable to log in, it's possible that your Linux distribution does not set `$HOME` at this early-boot stage. In that case, you should try running `HOME=/root/ /opt/eazyBackup/backup-daemon-start.sh &` instead. eazyBackup will automatically try to use `/root/` as the `$HOME` directory if `$HOME` is not already set or if it is set to a blank path.

Note: If you execute the .run installation script as root, this may have different results than if you execute the .run script using an elevated terminal session with 'sudo'. The 'sudo' command preserves the `$HOME` variable on Ubuntu; whilst on Debian the `$HOME` variable is erased, and sudo then sets it to the home directory of the originating user.

#### **Start in the background**

If you are running commands over SSH, please be aware that the backup-daemon-start.sh script runs in the foreground and will die when the SSH session is closed. You can avoid this by running the script in the background.

You can run the script in the background (daemonize) by using the `backup-daemon-start-background.sh` file instead.

#### **Startup via** `rc.local`

You can make eazyBackup start at system boot by adding an entry to the `rc.local` file.

First, find the `rc.local` file on your system:

* `/etc/rc.local` (Debian/Ubuntu)
* `/etc/rc.d/rc.local` (CentOS/RHEL)

Add the following content to the `rc.local` file:

`/opt/eazyBackupBackup/backup-daemon-start.sh &`

If the `rc.local` file contains an `exit 0` statement, the additional command should be added *before* such a statement.

As of CentOS 7, the `rc.local` file is not executable by default. You should run `chmod +x` on the `rc.local` file to enable using this method for startup scripts.

#### **Startup via** `rc.d`

You can make eazyBackup start at system boot by adding a file to the `rc.d` directory.

First, find the `rc.d` directory on your system:

* `/usr/local/etc/rc.d` (Synology DSM 6.1+)

Add a new file to the `rc.d` directory with the following contents:

```
#!/bin/bash
/opt/eazyBackupBackup/backup-daemon-start-background.sh
```

Mark the file as executable: `chmod +x /usr/local/etc/rc.d/my-eazybackup-startup-script.sh`

#### **Startup via** `cron`

You can make eazyBackup start at system boot by adding an entry to `root`'s crontab.

1. Run `crontab -e -u root` to launch a crontab editor
2. Add the line `@reboot /opt/eazyBackupBackup/backup-daemon-start-background.sh`

#### **Startup via** `init.d`

*No further documentation is available for this topic.*

#### **Startup via** `systemd`

You can use the following unit as an basic example:

```
[Unit]

Description=eazyBackup Client

After=network.target

 

[Service]

Type=simple

RemainAfterExit=true

User=root

ExecStart=/opt/eazyBackupBackup/backup-daemon-start.sh

 

[Install]

WantedBy=multi-user.target
```

This unit file correctly starts the eazyBackup service at system boot.

However, the process management in `systemd` is not fully compatible with the way eazyBackup's multi-process model works. In particular, there are compatibility issues with the software updater. As a result, the above unit is (A) unable to take advantage of process group cleanup; (B) unable to auto-restart the eazyBackup agent service; and (C) after a software upgrade, eazyBackup will keep running but the unit will remain in "exited" state.

#### **Autostart for graphical desktop application**

In the "Other Distribution" package, the graphical application is not automatically configured to start when the desktop logs in. You may add `backup-interface --background` as an autostart command to your desktop environment's settings.

### **Upgrading**

***

The "Other Distribution" version of eazyBackup supports upgrading the software, with some caveats:

* The `.run` file will automatically upgrade the existing version
* The software can be remotely upgraded via the eazyBackup Server web interface.

However, the existing service will only be replaced with the upgraded version if the product brand name is unchanged.

Future "Other Distribution" versions of eazyBackup will support upgrading between installations regardless of product brand name.

### **Uninstall**

***

To uninstall "Other Distribution" versions of eazyBackup, you should

1. Stop all eazyBackup processes
2. Remove the relevant subdirectory under `/opt/`
3. Remove any custom startup scripts

### **Change password on Linux client**

***

Use the 'Change Password' function in the eazyBackup [client area](https://accounts.eazybackup.ca/).

Then fully uninstall and reinstall the client, using the new credentials. Your device settings and Protected Items will be preserved.

***

[eazyBackup](https://eazybackup.com)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.eazybackup.com/documentation/linux-other-distribution.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
