# Installation

## New Installation

This guide will step you through the set up of remote.it on **Debian, Ubuntu and Linux** devices using the command line/terminal and an installation package on a device which remoteit has not been previously installed.

{% hint style="warning" %}
Prerequisites:&#x20;

1. You have a remote.it account (If not, please go ahead and create an account at <https://app.remote.it>)
2. You are on <https://app.remote.it> OR have installed the remote.it Desktop application on a machine you will be using to configure and connect to your device. (This doesn't need to be on the same network as the device you are setting up) See <https://remote.it/download/> for the different options available.
3. SSH access to the device you want to install remote.it and connect to
   {% endhint %}

## Quick Install

This quick install allows you to just paste a single command into the terminal of the target device. You must have the Desktop App or access to <https://app.remote.it> installed and a remote.it account created before proceeding.

### 1. Open the remote.it Desktop App or <https://app.remote.it>

If using the desktop app, it must be version 3.5.2 or greater.&#x20;

### 2. Click add device and select your system

<figure><img src="https://413684331-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LUSyCxfB8Qr7Kz5eeQu%2Fuploads%2FbmUWfpErGbBKOcG3wRgp%2FRemote_It_Application.png?alt=media&#x26;token=0be1c51b-d5d5-4d6b-b546-6a18abb3c7c8" alt=""><figcaption></figcaption></figure>

### 3. Copy the registration command and paste into the terminal window of your target device

{% hint style="warning" %}
Devices are registered using the Host name of the device. You can add a variable to the command to override this before you run the command by adding the following before the the R3\_REGISTRATION\_CODE plus a space.

R3\_DEVICE\_NAME="Your device name"

Otherwise, you can rename the device after in the RemoteIt Desktop, app.remote.it or Mobile application. [See documentation on devices and Editing Device Name](https://link.remote.it/support/device-rename)
{% endhint %}

This command will automatically detect the platform and architecture of your device. It then downloads and installs the appropriate package. It will then register the device to your account.

### 4. Set up services

Your desktop app should notify you that your new device has been registered. remote.it will automatically detect and set up SSH.

If you have additional services you would like to add, follow the directions provided [here](#id-4.-set-up-services-on-your-device).<br>

## Manual Installation

We recommend using the quick install method above since it will download the package and install it automatically. You can use this method if you prefer to select the package and install it manually.

### 1. Download the package

Open a terminal window on the device where remote.it will be installed, then download the package.&#x20;

Example below is for a specific pi package. Please use the appropriate package url. This will place the file in your home directory [click here ](https://www.remote.it/download-list?products=device-package#Download-Results)for specific packages and urls.&#x20;

**For Debian OS distributions, if you are not sure of the architecture, you can run the following command:**

```
sudo dpkg --print-architecture
```

{% hint style="info" %}
sudo command is only required on systems where you are not logged in as root.&#x20;
{% endhint %}

```
sudo wget [URL for Package 
(i.e. https://downloads.remote.it/remoteit/v4.14.1/remoteit-4.14.1.arm64.deb)]
```

### 2. Update your package manager and install

{% tabs %}
{% tab title="apt" %}
Continue in terminal on the target device

```
sudo apt update
```

Once that completes, then continue with the installation replacing the path and file name as appropriate

```
sudo apt install [file name (i.e. ./remoteit-4.14.1.armhf.rpi.deb)]
```

**When this completes you will see the claim code to use in the desktop application to complete the setup.**
{% endtab %}

{% tab title="opkg" %}
Continue in terminal on the target device

```
opkg update
```

Once that completes, then continue with the installation replacing the path and file name as appropriate

```
opkg install ./file
```

**When this completes you will see the claim code to use in the desktop application to complete the setup.**
{% endtab %}

{% tab title="yum" %}
Continue in terminal on the target device

```
sudo yum update
```

Once that completes, then continue with the installation replacing the path and file name as appropriate

```
sudo yum install ./file
```

**When this completes you will see the claim code to use in the desktop application to complete the setup.**
{% endtab %}

{% tab title="pacman" %}
Continue in terminal on the target device

```
sudo pacman -Syy
```

Once that completes, then continue with the installation replacing the path and file name as appropriate

```
sudo pacman -U ./file
```

**When this completes you will see the claim code to use in the desktop application to complete the setup.**
{% endtab %}
{% endtabs %}

{% hint style="warning" %}
You will need this claim code to complete the setup in the next steps. Save it until you complete registering the device.&#x20;

**This claim code is valid for 24 hours. If not used before then, re-run your installation command to get a new code.**
{% endhint %}

![](https://413684331-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LUSyCxfB8Qr7Kz5eeQu%2F-MeWg2KZ_fAlLk-mvbpw%2F-Meb--NTV_eH1aKVfIH_%2F2021-07-14-124424_3840x2160_scrot.png?alt=media\&token=b1a83779-7e54-49ca-889b-0ae1bf12404c)

### 3. Claim and register the device

Open your remote.it desktop application and log in. Then add the device using the registration claim code by clicking the + (Device Registration) in the upper left, then enter the claim code in the provided field.

![](https://413684331-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LUSyCxfB8Qr7Kz5eeQu%2Fuploads%2FIVYQ294tUACvynKoEjh8%2FRemote_It_-_add.png?alt=media\&token=80593ff2-d06a-4686-be90-8ef95c6de490)

You have now successfully registered the device to your account and should see it in your device list. If you get a message that it was not found, this indicates that the device was already claimed.

### 4. Set up services on your device

You will now define the services/ports for connections. For example SSH, HTTP, VNC, etc.

{% hint style="info" %}
The device itself must be online to set up any services. The services you define in remote.it need to be set up and running on the device. For example if you set up VNC in remote.it, but do not have it running, it will not be reachable by remote.it
{% endhint %}

Click on the device to see its details and click the + in the Services panel to add a new service.<br>

![](https://413684331-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LUSyCxfB8Qr7Kz5eeQu%2Fuploads%2FjrJj48oVYiNdn6ji21dj%2FRemote_It_-_Devices_-_rpi-zero-w_-_details.png?alt=media\&token=438ea70c-788a-43d5-8cb3-bd9ab8ff086d)

Select the appropriate service type. Then provide a name and port (Defaults are provided for most services). Only override default port if you have assigned a different port for this service on your device.  Override the service host address if you are using this device as a [jump service](https://link.remote.it/support/jumpbox).

Click save. You will now see the new service.&#x20;

![](https://413684331-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LUSyCxfB8Qr7Kz5eeQu%2Fuploads%2FW46Xkyf57tXkNYhZc8XT%2FRemote_It_-_Devices_-_rpi-zero-w_-_SSH_-_connect.png?alt=media\&token=f76bbc70-5c1b-40a9-b2d1-753532b464a9)

Repeat this process until you have all the services you want available via remote.it. You are now ready to connect and/or share this device. Visit [connections page](https://support.remote.it/hc/en-us/articles/360048935411-Connections) or the [sharing page](https://support.remote.it/hc/en-us/articles/360053354671-Device-Service-Sharing).

## Upgrades

{% hint style="warning" %}
If you have a device with Desktop or CLI installed, upgrade those applications directly. If you have a version of remoteit which is older than 3.0, please [contact support](https://support.remote.it/hc/en-us/requests/new) so that we can assist you directly.
{% endhint %}

To upgrade a device with remoteit device package Version 3.0 and higher installed follow these instructions.

### 1. Connect to ssh service on your device

Start an ssh connection (either directly or through remoteit) OR terminal and direct access to the target device

### 2. Download the package

Create an ssh connection to the device via remote.it and open terminal. (If you do not have a remoteit ssh service defined, you can [create one](#4-set-up-services-on-your-device) or connect directly by using either the LAN or direct hardware console access)

Download the installation package to the device where remote.it will be installed. Example below is for a specific pi package. Please use the appropriate package url. This will place the file in your home directory [See above](#supported-platforms).

```
sudo wget https://downloads.remote.it/remoteit/v4.13.7/remoteit-4.13.7.armhf.rpi.deb
```

### 3. Install the new package

This will step will update the remoteit target daemon and preserve the previously defined services and configurations. age manager as appropriate. i.e. Opkg, RPM or another package manager

{% tabs %}
{% tab title="apt" %}
Continue in terminal on the target device

```
sudo apt update
```

{% hint style="warning" %}
If using remoteit to access ssh to the device, you will lose your ssh connection to the device during this step. This is normal since we are replacing the daemon and remoteit will restart the service.&#x20;
{% endhint %}

During this step your desktop app will notify you that the device has gone offline. This is normal as the remoteit target service will stop during upgrade. \
Once this step completes you will again be notified that the device has come back online. If you were using the desktop for your connection, this connection will resume.

```
sudo nohup apt install ./file &
```

{% endtab %}

{% tab title="opkg" %}
Continue in terminal on the target device

```
opkg update
```

{% hint style="warning" %}
If using remoteit to access ssh to the device, you will lose your ssh connection to the device during this step. This is normal since we are replacing the daemon and remoteit will restart the service.&#x20;
{% endhint %}

You may also need to install nohup which is not installed by default on most systems. This allows the installation to continue once the upgrade is in process and ssh hangs up temporarily.

```
opkg install coreutils-nohup
```

During this  next step your desktop app will notify you that the device has gone offline. This is normal as the remoteit target service will stop during upgrade. \
Once this step completes you will again be notified that the device has come back online. If you were using the desktop for your connection, this connection will resume.

```
nohup opkg install ./file &
```

{% endtab %}

{% tab title="yum" %}
Continue in terminal on the target device

```
yum update
```

{% hint style="warning" %}
If using remoteit to access ssh to the device, you will lose your ssh connection to the device during this step. This is normal since we are replacing the daemon and remoteit will restart the service.&#x20;
{% endhint %}

You may also need to install nohup which is not installed by default on most systems. This allows the installation to continue once the upgrade is in process and ssh hangs up temporarily.

```
yum install coreutils
```

During this  next step your desktop app will notify you that the device has gone offline. This is normal as the remoteit target service will stop during upgrade. \
Once this step completes you will again be notified that the device has come back online. If you were using the desktop for your connection, this connection will resume.

```
nohup yum install ./file &
```

{% endtab %}
{% endtabs %}

## Uninstall

These instructions apply to the remoteit Device Package Version 4 and higher.

{% hint style="danger" %}
**If you remove remote.it software while using a remote.it connection you will lose access to the device through our service immediately.**
{% endhint %}

Follow this link:

<https://support.remote.it/hc/en-us/articles/360054866351-Removing-the-remoteit-package-or-Desktop-application>

At this point, you can then go to your device list (either in the Desktop Application or in the web portal at <https://app.remote.it/#devices> and delete the device to remove it from your device registry.


---

# 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.remote.it/software/device-package/installation.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.
