Skip to content

Installation

Benedikt Kuehne edited this page Dec 18, 2023 · 18 revisions

We strongly recommend that you run EMBArk inside a virtual machine, because this software is in alpha state and we cannot guarantee that EMBArk will not fail or cause data loss or other malfunctions on your system.

Prerequisites

EMBArk is using EMBA with a lot of other tools in the background. The needed system resources depend on the firmware you are going to analyze. Usually EMBArk runs quite smoothly in the following environment:

  • VMware running Ubuntu 22.04 LTS (Rec. Server version)
  • RAM: 8GB-32+GB
  • Processors: 4-16+CPUs
  • Hard disk: minimum 20GB(Rec.100+GB)
  • Isolated or otherwise secure network(Rec.NAT, Proxy supported)

Automatic installation on Ubuntu

To install all necessary applications on the host for EMBArk, you only have to run the install script with root permissions. A first overview of the installation options is available when started without options:

cd embark
./installer.sh

image

-d

You can use the -d switch with the installer to run a typical installation with all needed dependencies. We recommend using this for the initial installation.

-U

If you are running into issues with your installation you can try the -U switch. This uninstalls all the EMBArk dependencies, EMBA and the complete docker environment.

-r

Using -rd you can reinstall EMBArk in default-mode. Works the same for all other installations.

-D option is currently NOT supported and will be removed in the future

-F Developer Installation

You may use -F to install Embark for easy use as a Developer.
This installs dependencies only and lets you run the Django Embark Web-server directly on your host machine while isolating EMBA properly from your host.
To learn more

-s Without EMBA

installs only the EMBArk server and its resources for usage. May be used once there is a issue with the installation of EMBA.

Updating EMBA

EMBA is integrated as a submodule into EMBArk and must be controlled separately. sudo git submodule update [--remote --merge] to pull overwrite local changes and update to the currently used release version. You may always use the most recent version of EMBA by manually checking-out EMBA:main