Debian Linux installieren update

Schritte der Installation:

Die genaue Schritt für Schritt Installation des Betriebsystems wird hier nicht beschrieben, das hier ist der falsche Ort dafür. Jedoch werden als Referenz die Paketauswahlen während der Installation hier beschrieben. Am kompaktesten ist die Netinstall ISO-Datei. Zur Installation auf einem externen Rechner (z.B. NUC o.ä.) kann die ISO-Datei mit Tools wie z.B. Linux Live USB Creator, Universal-USB-Installer oder UNetbootin auf einen USB Stick übertragen.

Raspberry Pi

Die Installation auf einem Raspberry Pi kann idealerweise über ein fertiges Image erfolgen bei dem fast alles vorbereitet ist. Ansonsten beginnt man am besten mit dem aktuellsten Raspbian Image von der raspberrypi.org Seite. Dieses Image kann mittels Etcher oder Win32Diskimager auf eine SD-Karte übertragen werden. Die unten stehenden Schritte bis Einloggen via SSH entfallen. Es ist allerdings notwendig, sich beim ersten Start direkt am Raspberry Pi einzuloggen (User: pi, Passwort: raspberry - Achtung, englische Tastatur!) und mittels

sudo systemctl start ssh
sudo systemctl enable ssh

den SSH server jetzt und bei zukünftigen Neustarts automatisch zu zu starten.

Im allgemeinen braucht ein Server keine grafische Benutzeroberfläche, also ganz normale Installation wählen. Einige Einstellungen die jetzt vorgenommen werden sind:

  • Sprache, Tastaturlayout
  • Rechnername z.B. sh, shmuc, smarthome23, …
  • Das root Passwort bitte leer lassen
  • Benutzer smarthome anlegen
  • Zeitzone (z.B. Berlin)
  • Festplatte geführt partitionieren und alles verwenden, Änderungen auf Platten schreiben

Jetzt erfolgt die Grundinstallation des Systems aus dem Basispaket. Anschließend wird aufgrund der Landesauswahl der Spiegelserver für die weiteren Dateien festgelegt. Nach der Festlegung konfiguriert das System apt und lädt Pakete aus dem Spiegelserver nach. Das ist die Gelegenheit sich ein Heiß- oder Kaltgetränk nach Wahl zu holen da der Vorgang je nach Hardware und Netzwerkgeschwindigkeit zwischen 4 und 8 Minuten dauert. Die Rückmeldung des Systems an die Entwicklung darf abgelehnt werden.

Softwareauswahl

Wenn ihre keine grafische Benutzeroberfläche braucht, dann bitte abwählen:

  • Debian Desktop Environment

abwählen:

  • Druckserver

auswählen:

  • Web Server
  • SSH Server (wird für SSH z.B. via PuTTY oder Bitvise SSH client benötigt)
  • Standard-Systemwerkzeuge

Nun ist es Zeit für das nächste Getränk, das nachladen der zu installierenden Pakete dauert jetzt wiederum 5 bis 20 Minuten. Die angebotene Installation von GRUB wird akzeptiert und anschließend neu gestartet.

Einloggen via SSH oder an der Konsole

Mit einem SSH Client jetzt auf den frisch installierten smarthome Server einloggen: Unter OSX dazu einfach eine Kommandozeile öffnen und folgendes eintippen: ssh <ip_des_servers>.
Unter Linux genau das gleiche, Kommandozeile öffnen und folgendes eintippen: ssh <ip_des_servers>.
Unter Windows gibt es Putty als SSH Client, download hier. Noch komfortabler ist Kitty. Einfach zunächst Putty installieren und umbenennen in Putty.exe.bak. Dann Kitty ins Verzeichnis vom Putty schreiben und umbenennen als Putty.exe. Natürlich <ip_des_servers> ersetzen durch die IP Adresse oder den Namen des neuen smarthome Servers.

Oder alternativ direkt an der Konsole anmelden.

Benutzer zum Anmelden ist smarthome und das weiter oben erstellte Passwort für diesen User. Wurde kein Passwort angegeben und möchte man SSH so konfigurieren, dass man sich mit einem leeren Passwort einloggen kann, sind folgende Operationen notwendig:

sudo sed -i -e 's/#PermitEmptyPasswords no/PermitEmptyPasswords yes/g' /etc/ssh/sshd_config
sudo sed -i -e '/console/s/.*/&\nssh/' /etc/securetty
sudo systemctl restart sshd

Generell wird aber empfohlen, den SSH-Zugang mit Zertifikaten abzusichern und ein Einloggen mittels Username/Passwort zu unterbinden. Informationen zum Erstellen von Zertifikaten gibt es z.B. bei Thomas Krenn.

Systemaktualisierung

Nach der Anmeldung ist zunächst mit

sudo apt-get update
sudo apt-get upgrade

das frisch installierte System mit den neuesten Systemupdates zu versorgen. Eigentlich sollte dabei nix zu installieren sein aber sicher ist sicher.

Hinweis

Für den Fall das SmartHomeNG in einer virtuellen Maschine installiert wird, ist jetzt eine gute Gelegenheit diese herunterzufahren mit sudo poweroff um einen Snapshot zu erstellen. Falls im weiteren etwas nicht so funktioniert wie erwartet, kann so neu angesetzt werden ohne alles erneut herunterladen zu müssen. Alternativ kann der Snapshot natürlich auch nach Abschluß der Restarbeiten weiter unten ausgeführt werden.

Raspberry Pi

Hat man das Image auf einem Raspberry Pi installiert, können nach dem ersten Start sämtliche Einstellungen über ein übersichtliches Menü getätigt werden. Es empfiehlt sich, die Sprache auf de_DE.UTF-8 und das Tastaturlayout auf Deutsch umzustellen. Außerdem können hier diverse Services aktiviert und das Filesystem auf die Größe der SD-Karte erweitert werden.

sudo raspi-config

Hinweis

Alternative Netzwerk Konfiguration für feste IP:

Hierfür sei auf diese Seite verwiesen

Optional: Installation der Open VM Tools bei Verwendung als virtuelle Maschine unter VMWare Workstation oder ESXi

Wenn die Installation virtuelle Maschine erfolgt ist, wird von VMWare empfohlen die Open VM Tools zu installieren:

Für die reine Servervariante vom Debian geht das über

sudo apt-get install open-vm-tools

bei Vorhandensein einer GUI dann alternativ mit

sudo apt-get install open-vm-tools-desktop

Die automatische Anpassung der Bildschirmgröße funktioniert erst nach einem Neustart.

Optional: Installation der Gästeerweiterungen bei Verwendung als virtuelle Maschine unter Oracle VM VirtualBox

Um die Gästeerweiterungen zu installieren zuerst unter Geräte -> Gästeerweiterungen einlegen anklicken. Diese nun via Terminal/Shell ausführen und den Anweisungen folgen:

sudo sh /media/cdrom/VBoxLinuxAdditions.run

Nach einem Neustart passt sich nun bspw. bei Verwendung einer GUI die Auflösung dynamisch an.

Restarbeiten am System

Wenn kein Passwort für root vergeben wurde, dann wird der bei der Installation erstellte User (hier: smarthome) automatisch in die Gruppe für sudo aufgenommen.

Falls man einen anderen Benutzernamen bei der Installation gewählt hat, muss man den User smarthome zunächst erstellen:

sudo  adduser smarthome --disabled-password --gecos "First Last,RoomNumber,WorkPhone,HomePhone"

Den Benutzer smarthome in die www-data und sudo Gruppe hinzufügen:

sudo usermod -aG www-data,sudo smarthome

Auch wenn der Benutzer smarthome schon existiert muss er in die Gruppe www-data mit folgendem Befehl eingetragen werden.

sudo usermod -aG www-data smarthome

Vor dem Neustart wird jetzt noch die Datei .bashrc bearbeitet um einige Befehle auf der Shell (Kommandozeile bzw. Konsole) abzukürzen:

cd ~
nano .bashrc

Dort an am Ende anfügen oder wenn bereits vorhanden das Kommentarzeichen # am Zeilenanfang entfernen:

alias la='ls -A'
alias ll='ls -l'
alias ..='cd ..'

Der Benutzer smarthome muß nun abgemeldet und neu angemeldet werden, damit die Rechte neu eingelesen werden. Dies ist eine gute Gelegenheit um einen alternativen Snapshot zu erstellen. Dazu dann wiederum das System ausschalten mit:

sudo poweroff