Category Archives: Linux

HomeAssistant on Raspberry Pi

home-assistant-logo

This are my notes to install home-assistant on a raspberry-pi 3. At the end, this is a multipart how-to for installing home-assistant and mosquitto (MQTT) with a NodeMCU and some magnetic contacts.

Copy Raspbian Lite to an SD Card on Mac OSX (use rdisk is faster):

sudo dd if=Downloads/2017-11-29-raspbian-stretch-lite.img of=/dev/rdisk4 bs=4m conv=sync

Enable SSH (create a file named ssh on the SD-Card):
touch /Volumes/boot/ssh

Put the SD-Card into your raspberry and boot it up.

Login and change password of user pi and root:
passwd
sudo passwd root

Configure WLAN:
wpa_passphrase “YourWLANSSID” “yourWLANPassword”
Configure WLAN in /etc/wpa_supplicant/wpa_supplicant.conf:
country=CH
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
ssid=”YourWLANSSID”
#psk=”yourWLANPassword” <<<<<—– REMOVE THIS COMMENTED LINE!
psk=131e1e221f6e06e3911a2d11ff2fac9182665c004de85300f9cac208a6a80531
}

You have a fixed IP? (preferred!)
Edit /etc/dhcpcd.conf and set the hostname inside this file.
Add config for your interface:
interface wlan0
static ip_address=192.168.0.XXX/24
static routers=192.168.0.XXX
static domain_name_servers=XXX.XXX.XXX.XXX, XXX.XXX.XXX.XXX
static domain_search=some.domain.com
static domain_name=some.domain.com

Use raspi-config to configure your raspberry hostname and partition then reboot.

Continue reading HomeAssistant on Raspberry Pi

DIY Airplane tracker (ADS-B tracking)

Do you want to build your Airplane tracker by yourself? It’s easy and it’s realtime, not delayed like flightradar24.

What do you need?

Here are the steps for Linux/Unix Systems:
Download and unzip the Software:

wget https://github.com/antirez/dump1090/archive/master.zip
unzip master.zip

Change into the unzipped directory and execute make:

cd dump1090-master/
make

Plug in your DVB-T stick and launch dump1090:

./dump1090 --interactive --net

The option “interactive” tells the program to output planes with automatically refreshed screen every second
The option “net” enables networking support.

After a few seconds you should see the first planes:

You can even connect with your webbrowser to http://127.0.0.1:8080 to see the planes on a map.

Now you should see planes near you. It’s best to go outside with your antenna to track airplanes. You can even build better antennas 😉 See the links below.

Happy plane tracking!

DIY Antenna: ADS-B wine cork antenna
Or if you use Windows see this post here: dump1090 on Windows

VMware VSAN delete/purge inaccessible objects

Sometimes it could happen, that you get inaccessible files on your ESXi Cluster with VSAN.
Here are the Steps to clean up inaccessible files with vCenter Server on Windows 2012R2:

Connect to vcenter server with rvc.bat in C:\Program Files\VMware\vCenter Server\rvc

login with administrator@vsphere.local@localhost:

C:\Program Files\VMware\vCenter Server\rvc>rvc.bat administrator@vsphere.local@localhost
 password:
 0 /
 1 localhost/
 >

Check command: vsan.check_state “pathToYourCluster”

> vsan.check_state /localhost/myDatacenter/computers/Cluster01/
 2016-07-14 07:34:49 +0200: Step 1: Check for inaccessible VSAN objects
 Detected 1 objects to be inaccessible
 Detected bf9c6a57-9cc3-d20c-ccb3-a0369f89ecac on 192.168.1.4 to be inaccessible

2016-07-14 07:34:50 +0200: Step 2: Check for invalid/inaccessible VMs

2016-07-14 07:34:50 +0200: Step 3: Check for VMs for which VC/hostd/vmx are out
 of sync
 Did not find VMs for which VC/hostd/vmx are out of sync

Delete inaccessible VSWP Objects command:
vsan.purge_inaccessible_vswp_objects /localhost/myDatacenter/computers/Cluster01/

vsan.purge_inaccessible_vswp_objects /localhost/myDatacenter/computers/Cluster01/
 2016-07-14 07:35:00 +0200: Collecting all inaccessible Virtual SAN objects...
 2016-07-14 07:35:00 +0200: Found 1 inaccessbile objects.
 2016-07-14 07:35:00 +0200: Selecting vswp objects from inaccessible objects by c
 hecking their extended attributes...
 2016-07-14 07:35:00 +0200: Found 0 inaccessible vswp objects.

Delete other inaccessible objects:
Connect to ESXi Server and issue the following command, which should show you the related objects:

/usr/lib/vmware/osfs/bin/objtool getAttr --bypassDom -u bf
9c6a57-9cc3-d20c-ccb3-a0369f89ecac -c

Check the output of the related object and make sure you can delete this file.

Delete the file with:

/usr/lib/vmware/osfs/bin/objtool delete -u bf9c6a57-9cc3-d
20c-ccb3-a0369f89ecac -f -v 10

Run check in vSphere Web Client on “Cluster” -> “Monitor” -> “Virtual SAN” -> “Health” -> Click on “Retest”.
Everything should be ok now.

LetsEncrypt on CentOS 6 – Free SSL certificate for everyone!

This is a short manual how to use Let’s Encrypt on CentOS 6 with Apache Webserver:

1. Install dependencies:

Download, unzip and install Python:

wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
tar -xvpzf Python-2.7.11.tgz
cd Python-2.7.11
./configure
make altinstall

Install Git:

yum install git
git clone https://github.com/letsencrypt/letsencrypt

2. Stop apache:

Continue reading LetsEncrypt on CentOS 6 – Free SSL certificate for everyone!

Renew a self signed SSL-Certificate on CentOS

I recieved this e-mail from my webserver:

################# SSL Certificate Warning ################

  Certificate for hostname 'yourservername.com', in file (or by nickname):
     /etc/pki/tls/certs/localhost.crt

  The certificate needs to be renewed; this can be done
  using the 'genkey' program.

  Browsers will not be able to correctly connect to this
  web site using SSL until the certificate is renewed.

 ##########################################################
                                  Generated by certwatch(1)

So I had to renew this certificate on my CentOS Server. I found this blog-entry from Steve Jenkins.

All you have to do is to enter this command:

openssl req -new -days 365 -x509 -nodes -newkey rsa:2048 -out /etc/pki/tls/certs/localhost.crt -keyout /etc/pki/tls/private/localhost.key

And then restart the web server, in my case it’s apache:

apachectl restart

After this, you can check with your webbrowser if the new certificate is active. Check the new expire date. With mozilla firefox it’s “Extra” -> “Site information” -> “Security” -> “Show certificate”.

I know I have to do that again in one year, so I wrote it down here 🙂