---
tags: fabacademy, mdef, workshops, linux
---
# linux

* 1983 Stallman announce GNU project.
* 1991 Linus started the kernel.
* Linux runs on [all](https://www.zdnet.com/article/linux-totally-dominates-supercomputers/) of the top 500 supercomputers in the world.
* Linux runs 97% of the 1,000,000 top webservers.
* 88% of mobile phones runs android wich is (kindof) based on linux.
* Linux runs in many cars, tv's, alexas, etc of the world.
* GNU/Linux is free software: 
* Free as in _Freedom of speech not as in free beer_:
0. The freedom to run the program as you wish, for any purpose.
1. The freedom to study how the program works, and change it so it does your computing as you wish. Access to the source code is a precondition for this.
2. The freedom to redistribute copies so you can help your neighbor.
3. The freedom to distribute copies of your modified versions to others. By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
* Linux is as diverse as the community that builds it.
#  Raspberry pi
* Raspberry pi foundation is a non profit group.
* Created in 2012 to promote computing science learning.
* 19 million raspberry computers are beeing used all over the world.
* It run's linux as OS.
* It is designed for all kind of uses.
* Exposes pins with big number of interfaces to connect and control all kind of peripherals.
* It is used on all kind of projects ranging from firewalls, Network servers, privacy gateways, media centers, desktops, robot controller, game console, wireless camera, radio stations, home automation, etc.
* Raspberry pi zero costs 5 euros an pi 3+ 35 euros.
* There is a big comunity that uses rasperry pi's and finding support is very easy.
* There is a ton of addons, acreens and accesories for the raspberry pi.
#  setup of a Pi
* [Download](https://www.raspberrypi.org/downloads/) an OS image to install.
* Flash it to an sdcard with dd of [etcher](https://www.raspberrypi.org/downloads/)
* Connect Ethernet cable or [configure](https://www.raspberrypi-spy.co.uk/2017/04/manually-setting-up-pi-wifi-using-wpa_supplicant-conf/) wifi on the sdcard.
* Find your pi on the network: All raspberry devices MAC addresses started with B8:27:EB. Or cheit ON the raspi with ifconfig.
* Run raspi-config to setup:
* WiFi if needed
* SSH server
* VNC server
* SPI, I2C, Serial, 1-Wire, GPIO and camera
* CLI or graphicall login/autologin
* Install wath you need with apt package manager
* [MQTT](https://www.hivemq.com/blog/how-to-get-started-with-mqtt/) broker: `sudo apt install mosquitto mosquitto-clients` and `sudo /etc/init.d/mosquitto start`
* [NODE-RED](https://nodered.org/) server following [this](https://nodered.org/docs/getting-started/raspberrypi) guide.
#  Network tools
* [**Wireshark**](https://www.wireshark.org/) packet inspection.
* **nmap** for discovering hosts with a ping scan `nmap -sn 192.168.1.*`
* Find raspberry pi's with **arp** `arp -na | grep b8:27:eb`
* **ping** hosts to check connectivity
* **traceroute** to understand networks.