Decode access secret key from Terraform IAM user creation

Problem

You want to use the pgp encryption when using Terraform to create an AWS IAM user, and you have the secret access token returned as an output but encoded.

Solution

Use the following to get the actual secret key decoded (after copying your encoded key to a file encrypted_key.txt:

Raspberry, Ubuntu and Megatools

To install megtools (command line utilities for Mega.nz), in your raspberry with ubuntu installed follow the steps below (thanks to the instructions from here: https://www.instructables.com/id/Descarga-archivos-de-Mega-con-Raspberry-Pi/)

  • Install the necessary packages

You may also need to add some additional packages if there is an error about the documentation.

  • Get the latest source code from https://megatools.megous.com
  • Compile and install them
  • Add your Mega account credentials in ~/.megarc like:
  • use the mega tools commands (megacopy, megals, megaget etc.

WiFi, Raspberry Pi 4 B, Ubuntu 20.04

After installing an image of the Ubuntu server on the Raspberry 4, the wifi is not automatically configured after the initial book.

In order to be able to use the WiFi follow the steps described below for setting up your wifi in your SD card, and then reboot your raspberry (make sure that the indentation in the yaml file is correct, and also your WiFi access point is enclosed in quotes):

https://ubuntu.com/tutorials/how-to-install-ubuntu-on-your-raspberry-pi#3-wifi-or-ethernet

Find your public IP address from linux command line

Problem

You would like to find out your public IP from the command line without using an online service

Solution

Use dig like the following line (taken from https://www.cyberciti.biz/faq/how-to-find-my-public-ip-address-from-command-line-on-a-linux/):

dig +short myip.opendns.com @resolver1.opendns.com

you could also add it as an alias:

alias myip=”dig +short myip.opendns.com @resolver1.opendns.com”

Automatic emails using bash and sendgrid

Problem

You would like to be able to automatically send some emails (ie reports) from a linux server, using a bash script that runs in cronjob, without installing an email server on the linux server.

Solution

  • Create an account in Sendgrid and follow the directions for using WebAPI with curl
    here
  • Set up your bash script to use the API key and have a script like the following. If you want to use big or multiple files you will need to use a temporary file for the base64 encoding, as in the example below, as there is a limit in curl.
  • Add your script to crontab
  • ERROR: Couldn’t connect to Docker daemon at http+docker://localunixsocket – is it running?

    Problem

    Using docker-compose up (or build), displays the following error message (even though the same command used to work previously):

    Solution

    This is quite possible caused by permissions issue, as one of the folders files that docker is trying to use is owned by a different user/group from the one trying to use the docker-compose commands. Try to find the file/folder with the different permissions and change it to your user name and group, or use change the files by using something like:

    Copying files between two folders without overwriting existing ones in destination folder.

    Problem

    You would like to copy the contents of a source directory to a destination directory without overwriting existing files on the destination.

    Solution

    You can use

    and you can also use the –dry-run option to test before running it.