The Inovato Quadra Setup

2 minute read

Ok this here is a quick test to see what I have setup is working well.

Since Raspberry Pis are out of stock in lots of places, I’ve picked up a very neat new toy. The Inovato Quadra is comparable to a Raspberry Pi 3 but does not have the very cool General Purpose IO exposed on the board. Instead it is just a full-fledged Linux box running Armbian.

This is good for me as I can migrate some services from my Pi to this new toy. Fortunately a lot of the guides you find for installing things on the Raspberry Pi work well for the Quadra. The Inovato forums also have a FAQ section with a lot of useful information.

After the first boot and looking around on the desktop, we do the usual song and dance:

$ sudo apt-get update && sudo apt-get upgrade

Next came some house keeping and setup steps:

  • Setup SSH access
  • Setup shared drives
  • removed brltty (advice came from some ham radio related sites)
  • setup Docker

SSH stuff

This is pretty basic stuff here. Run ssh-keygen. The output are your keys into the server. I renamed them and copied them to the computer I will used to access the server.

I then setup my console shortcuts (tasks in ConEmu) to call ssh with the correct identity files:

Here’s the ConEmu task for completeness:

cmd.exe /k "%ConEmuBaseDir%\CmdInit.cmd" ssh quadra@inovato -i ~/.ssh/inovato_rsa

Mounting a remote Windows folder

We need cifs-utils to mount the Windows shared folder.

$ sudo apt install cifs-utils

# make aspot to hold the mount
$ sudo mkdir /mnt/fractal_share 

From here you can test out if it all works with this command:

sudo mount.cifs //<INSERT_IP_HERE>/Fractal_Shared/ /mnt/fractal_share/ -o user=<USERNAME>,pass=<PASSWORD>

This command is not a proper solution because we have to run it everytime we reboot the machine. Instead we want to edit /etc/fstab to resemble something like this:

# <file system>                           <mount point>      <type>     <options>                                                       <dump>  <pass>
\\<IPADDRESS>\Fractal_Shared             /mnt/fractal_share  cifs      credentials=/etc/fractal_creds,file_mode=0755,dir_mode=0755     0       0

Note the /etc/fractal_creds this stores the credentials need to access the remote windows shared folder. It looks like this:

username=cainan
password=<secret secret i got a secret>
domain=domain

Install Docker

The setup here is pretty boilerplate (this is from a random setup Docker on Raspberry Pi guide):

$ mkdir docker
$ cd docker/
$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sh ./get-docker.sh

Once this was done I could get by with the basic docker commands, but most required the use of sudo which is inconvenient. The quadra user has to be added to the docker group to get around this:

$ sudo usermod -aG docker quadra
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

Now docker is ready to go and deploy my amazing services! But it is a bit of a resource hog and, well, this small $30 computer doesn’t have that much power.

Regaining resources

The best thing to do is run htop and see what’s taking up the most resources. This biggest offender is the desktop services themselves (x11 stuff). Also the mentioned brltty took some as well.

This little system is going to go in a closet somewhere and not have a keyboard or mouse or monitor hooked up to it. I will remote in via SSH for all operations. So we can disalbe the desktop using this command:

$ sudo systemctl disable lightdm

If we need it back we can do the inverse:

$ sudo systemctl enable lightdm