PressePi Image
Allgemein
Hier wird erklärt, wie die das Betriebssystem-Image für einen PressePi erstellt wird.
Kopieren des Grundimages
Als Grundimage wird "Raspbian Stretch Lite" vom 2018-06-27 verwendet. Ist die
Datei /var/nfs/iso-images/2018-06-27-raspbian-stretch-lite.zip
nicht vorhanden wird diese von http://www.raspberrypi.org heruntergeladen.
Anschließend wird die Datei entpackt:
unzip 2018-06-27-raspbian-stretch-lite.zip
Nun wird das entpackte Image auf eine SD-Karte kopiert:
dd if=/var/nfs/iso-images/2018-06-27-raspbian-stretch-lite.img of=/dev/sdb bs=1M
Vor dem Booten
Nach dem Kopieren das Laufwerk mit eject /dev/sdb
auswerfen, den
Cardreader abziehen und neu einstecken. Unter Ubuntu werden die Partitionen auf
der SD-Karte automatisch gemountet.
Die Datei /cmdline.txt
auf der Boot-Partition editieren und dort
die Zeichenketten init=/usr/lib/raspi-config/init_resize.sh
und
console=serial0,115200
entfernen. Dies sorgt zum einen dafür das
die Root-Partition beim ersten Booten des Pis nicht auf die maximale Größe der
SD-Karte erweitert wird, sondern klein bleibt. Zum Anderen wird die Ausgabe der
Kernel-Nachrichten auf die serielle Konsole unterdrückt.
Die Datei /config.txt
auf der Boot-Partition editieren und dort am
Ende folgende Zeile hinzufügen:
enable_uart=0
Dies sorgt dafür, das die serielle Konsole an den GPIOs 14 und 15 deaktiviert wird diese für andere Dinge verwendet werden können.
Das Keybord-Layout wird auf deutsch umgestellt, indem die Datei
/etc/default/keyboard
auf der Root-Partition wie folgt editiert
wird:
XKBLAYOUT="de"
Die Dateien /etc/hostname
und /etc/hosts
auf der
Root-Partition anpassen und dort die Zeichenkette raspberrypi
durch
pressepixx
ersetzen.
Datei /etc/ssh/sshd_config
auf der Root-Partition editieren und die
folgende Zeile anpassen:
PermitRootLogin yes
Danach den SSH-Dienst aktivieren:
ln -s /lib/systemd/system/ssh.service <root>/etc/systemd/system/multi-user.target.wants/ssh.service
Pi Booten
Das Laufwerk mit eject /dev/sdb
auswerfen. Die SD-Karte in einen Pi
stecken und diesen mit Bildschirm und Tastatur und Netzwerk booten. Einloggen mit Benutzer
pi
und Passwort raspberry
.
Die Passwörter der Benutzer pi
und root
mit den
Befehlen passwd
bzw. sudo passwd
ändern.
Die bereits installierten Pakete aktualisieren:
sudo apt update sudo apt dist-upgrade
Noch fehlende Pakete installieren:
sudo apt install wiringpi tmux pigpio git python3-pip
Pipenv unter /root/.local installieren
sudo pip3 install --user pipenv
Path anpassen
sudo nano /root/.bashrc export PATH="/root/.local/bin:$PATH"
SSH-Key vom server aus kopieren:
ssh-copy-id pi@<raspberrypi ip> ssh-copy-id root@<raspberrypi ip>
Und den Pi herunterfahren
poweroff
Image erstellen
SD Karte entfernen und mit Cardreader an PC anschließen. Terminal starten und
folgende Befehle als root
Benutzer ausführen
umount /dev/sdb1 umount /dev/sdb2 dd if=/dev/sdb of=2018-06-27-pressepi-base.img bs=1M count=2000 scp 2018-06-27-pressepi-base.img root@server02:/var/nfs/iso-images
Damit ist nun unter /var/nfs/iso-images/2018-06-27-pressepi-base.img das
Basis-Image für den PressePi vorhanden. Produktivsysteme werden durch das
push
-Skript konfiguriert.
Test-Image erstellen
TODO