#!/bin/bash #A tool to install AMBE server. #This is essentially a scripted version of: #https://github.com/LX3JL/xlxd/blob/master/ambed/readme #Step 1: Install Debian 9.x and make sure it has internet and is up to date. #Step 2: Plug AMBE Chip(s) into computer. #Step 3: Run this script on the computer with the ambe chips. #Step 4: Reboot after installation. # systemctl status ambed #to show the status # systemctl stop ambed #to stop ambed # systemctl start ambed #to start ambed # ambed logs are part of /var/log/messages #Lets begin------------------------------------------------------------------------------------------------- WHO=$(whoami) #Have to be ROOT to run this script if [ "$WHO" != "root" ]; then echo "" echo "You Must be root to run this script!!" exit 0 fi #Has to be a Debian variant. if [ ! -e "/etc/debian_version" ] then echo "" echo "This script is only tested in Debian 8,9 and x64 cpu Arch. for now." exit 0 fi #Gather variables DIRDIR=$(pwd) LOCAL_IP=$(ip a | grep inet | grep "eth0\|en" | awk '{print $2}' | tr '/' ' ' | awk '{print $1}') ARC=$(lscpu | grep Arch | awk '{print $2}') X64=http://www.ftdichip.com/Drivers/D2XX/Linux/libftd2xx-x86_64-1.4.6.tgz X32=http://www.ftdichip.com/Drivers/D2XX/Linux/libftd2xx-i386-1.4.6.tgz #ARM=http://www.ftdichip.com/Drivers/D2XX/Linux/libftd2xx-arm-v7-hf-1.4.8.gz #Install dependicies echo "------------------------------------------------------------------------------" echo "Installing required software..." apt-get -y install wget apt-get -y install git apt-get -y install screen #XLX Specific apt-get -y install build-essential #Make Directories and get the FTDI driver. mkdir -p /ambed mkdir -p /root/reflector-install-files/ambed if [ ! -e /usr/local/lib/libftd2xx.so ] then echo "" echo "------------------------------------------------------------------------------" echo "Downloading driver and installing it....." cd /root/reflector-install-files/ambed if [ "$ARC" = "x86_64" ] then wget $X64 tar xfvz libftd2xx-x86_64-1.4.6.tgz cd release/build cp libftd2xx.* /usr/local/lib chmod 0755 /usr/local/lib/libftd2xx.so.1.4.6 ln -sf /usr/local/lib/libftd2xx.so.1.4.6 /usr/local/lib/libftd2xx.so else wget $X32 tar xfvz libftd2xx-i386-1.4.6.tgz cd release/build cp libftd2xx.* /usr/local/lib chmod 0755 /usr/local/lib/libftd2xx.so.1.4.6 ln -sf /usr/local/lib/libftd2xx.so.1.4.6 /usr/local/lib/libftd2xx.so fi else echo "------------------------------------------------------------------------------" echo "It looks like the driver is already installed. If this is wrong, see what '/usr/local/lib/libftd2xx.so' is up to. Skipping FTDI Driver install. " fi #Time to get the xlx/ambe software from git echo "------------------------------------------------------------------------------" echo "Getting xlx/ambed from github..." cd /root/reflector-install-files/ambed git clone https://github.com/LX3JL/xlxd.git echo "------------------------------------------------------------------------------" echo "Installing ambed....." cd /root/reflector-install-files/ambed/xlxd/ambed/ make clean make make install if [ -e ambed ] then echo "It looks like everything compiled successfully. There is an 'ambed' application file. " else echo "/ambe directory exists already, I dont need to add it." exit 0 fi echo "------------------------------------------------------------------------------" echo "Copying ambed files and systemd files... " cp ambed /ambed cp $DIRDIR/templates/ambed.service /etc/systemd/system/ sed -i "s/LOCAL-IP/$LOCAL_IP/g" /etc/systemd/system/ambed.service systemctl daemon-reload #That should be it for the install. echo "" echo "" echo "************************************************************************" echo "" echo "" echo " The install is complete. " echo " Now reboot the server. " echo " Use 'systemctl status ambed' to check the status. " echo " ambed logs are part of /var/log/messages. " echo "" echo "" echo "************************************************************************"