Alle Beiträge von Michael Kofler

Raspberry Pi Pico: MicroPython-Programmierung

In meiner Kurzvorstellung des Raspbery Pi Pico habe ich Ihnen gezeigt, wie Sie auf dem Micro-Controller MicroPython installieren und über eine Konsolen-App (z.B. minicom) interaktiv nutzen können. Das ist ein wichtiger erster Schritt, um den Pico auszuprobieren. Letztlich wollen Sie aber Programme entwickeln, die dauerhaft am Pico laufen. Dazu reicht die interaktive Anwendung des Python-Interpreters nicht aus.

Dieser Beitrag zeigt, wie Sie mit Thonny ein »richtiges« MicroPython-Programme entwickeln und dieses auf dem Pico so speichern, dass es beim nächsten Start des Micro-Controllers automatisch ausgeführt wird.

Raspberry Pi Pico: MicroPython-Programmierung weiterlesen

Sudokus mit Kotlin lösen

Vielleicht liegt es an der merkwürdigen Corona-Zeit — auf jeden Fall hatte ich in den letzten Wochen eine Phase, in der ich fast täglich Sudokus löste. (Meine Quelle: https://www.derstandard.at/lifestyle/raetsel-sudoku.) Die Sudoku-Sucht hat schon wieder nachgelassen, aber Programmierer der ich nun einmal bin, fand sich gleich die nächste Herausforderung: Es kann doch nicht so schwierig sein, ein Programm zu schreiben, das Sudokus löst — oder? Natürlich weiß ich, das Internet ist voller Sudoku Solver. Es ging mir keineswegs darum, das Rad neu zu erfinden oder es noch runder zu machen — ich hatte einfach Lust auf ein paar Stunden Programmieren. Just for fun, nicht als Beispiel für ein Buch oder für den Unterricht …

Gesagt, getan. Wegen der Arbeit an meinem Kotlin-Buch ist mir die Sprache gerade sehr vertraut. Nach ein paar Stunden konnte mein Code bereits einfache Sudokus lösen. Der letzte Feinschliff dauerte dann doch etwas länger als gedacht, aber mittlerweile glaube ich, dass das Programm zuverlässig funktioniert.

Sudokus mit Kotlin lösen weiterlesen

Raspberry Pi Pico

Die Raspberry Pi Foundation hat Ihr neuesten Projekt vorgestellt: Trotz Namensähnlichkeiten handelt es sich beim »Raspberry Pi Pico« nicht um ein Mitglied der Mini-Computer-Serie (Raspberry Pi 1/2/3/4/400 A/B/Zero/Compute Model). Der Pico ist kein vollwertiger Computer samt Betriebssystem, sondern »nur« ein Micro-Controller.

Raspberry Pi Pico (Vorderseite)

Sie können auf dem Gerät selbst entwickelten Code ausführen und dabei über diverse GPIOs eine Menge Hardware-Schnittstellen ansteuern. Es gibt aber kein Grafiksystem samt Monitor-Ausgabe, keine Anschlüssel für Tastatur, Maus oder externe Datenträger, keinen Eingang für ein Kameramodul, keine Netzwerkfunktionen, kein WLAN, kein Bluetooth. Dafür punktet der Pico beim Preis (4 EUR) und beim Stromverbrauch (nur ca. 0,4 W, im Ruhemodus gar nur 0,006 W).

Der Pico ist also keine neue Variante zu den herkömmlichen Raspberry-Pis. Das Gerät spricht einen ganz anderen Markt an, der vor allem von Arduino dominiert wird, in dem sich aber diverse andere Hersteller tummeln. Im Vergleich zu anderen Microcontrollern will der Pico mit relativ viel Rechenleistung für wenig Geld punkten.

Raspberry Pi Pico weiterlesen

Docker ohne root-Rechte

Als größter Vorteil von Podman im Vergleich zu Docker wird üblicherweise die Funktion bewertet, Container ohne root-Rechte auszuführen. Übersehen wird, dass Docker seit Version 19.03 ebenfalls für den rootless-Einsatz geeignet ist; das Feature galt in dieser Version aber als experimentell und war mit erheblichen Einschränkungen verbunden. Deutlich besser sieht das in der aktuellen Version 20.10 aus: der Betrieb von Docker-Containern ohne root-Rechte ist nun eine reguläre Funktion. Bemerkenswert ist, dass die Installation von Docker innerhalb eines Benutzeraccounts erfolgt und ebenfalls ohne root-Rechte gelingt!

Docker ohne root-Rechte weiterlesen

CentOS 8: Umstieg auf CentOS Stream bzw. auf Oracle Linux

Sowohl CentOS als auch Oracle bieten Scripts an, um eine vorhandene CentOS-8-Installation wahlweise in CentOS Stream oder in Oracle Linux umzubauen. Ich habe also eine virtuelle Maschine mit einer ca. ein Jahr alten Installation von CentOS 8 zuerst aktualisiert und dann zweimal geklont. In der Ausgangs-VM waren ein MySQL-Server installiert, EPEL aktiviert und vereinzelte EPEL-Pakete installiert. Einen Klon habe ich anschließend in CentOS Stream umgewandelt, den anderen in Oracle Linux.

Warnung: Es sollte klar sein, dass dies ein sehr simpler Test ist, nicht mehr! Ich habe kein produktives System umgestellt, sondern nur eine einfache Testumgebung.

CentOS 8: Umstieg auf CentOS Stream bzw. auf Oracle Linux weiterlesen

Nachruf auf CentOS

CentOS ist/war ein freier Klon von Red Hat Enterprise Linux (RHEL). Die vorige Version CentOS 7 läuft auf unzähligen Servern und Cloud-Instanzen. CentOS 7 war nie perfekt (bei Versionswechseln gab es Lücken in der Update-Versorgung, typischerweise im Bereich weniger Wochen), aber für viele war es gut genug — für den Produktivbetrieb kleiner Server, für den Unterricht, oder einfach, um ein RHEL-kompatibles Betriebssystem kennenzulernen.

Im September 2019 wurde das aktuelle CentOS 8 auf der Basis von RHEL 8 vorgestellt — und damit beworben, dass es vorausschtlich bis Mai 2029 gewartet werden würde. Heute hat das CentOS-Projekt allerdings verkündet, dass die Zukunft CentOS Stream heißt. Das klingt besser, als die Wahrheit zu sagen: CentOS, wie die Linux-Gemeinde es kannte, ist tot. CentOS 7 wird noch bis zum geplanten Support-Ende im Juni 2024 gewartet. CentOS 8 wird Ende 2021 eingestellt. Danach wird es noch CentOS 8 Stream geben, das aber das »echte« CentOS nicht ersetzen kann.

Nachruf auf CentOS weiterlesen

Raspberry Pi 400

Seit einem Monat gibt es den Raspberry Pi in einer Desktop-Ausführung. Das Gerät ist in eine Tastatur integriert, was Erinnerungen an die Home-Computer-Zeit wach werden lässt. Der Computer wird nicht zufällig mitten in der Corona-Epidemie ausgeliefert: Die Raspberry-Pi-Foundation hofft, dass das Gerät kostengünstig für das Home Schooling verwendet werden kann.

Raspberry Pi 400 weiterlesen

Linux-Kommandoreferenz in der 5. Auflage erschienen

Meine Linux-Kommandoreferenz ist soeben in der fünften Auflage erschienen:

544 Seiten, Hard-Cover
Preis: Euro 24,90 (in D inkl. MWSt.)

Dieses Buch enthält den Linux-Grundwortschatz für das Arbeiten im Terminal – über 500 Kommandos samt Optionen, Erläuterungen und Beispielen. Außerdem umfasst das Buch eine Referenz der wichtigsten Konfigurationsdateien sowie eine Zusammenstellung wichtiger Tastenkürzel.

In dieser Auflage habe ich wieder einige neue Kommandos aufgenommen: acme.sh, aws, boltctl, etherwake, fwupdmgr, gdebi, kbdrate, nft, rdfind, ubuntu-security-status, wakeonlan und wol. Außerdem habe ich die Beschreibung vieler Kommandos aktualisiert und mit zusätzlichen Beispielen versehen, unter anderem bei adduser, certbot, chcon, chsh, cryptsetup, diff, dmesg, dnf, du, find, firewallcmd, flatpak, git, grep, iptables, mysqldump, sudo, sysctl, wsl und zypper.

PS: Von allen meinen Büchern gibt es keines, das ich so oft selbst öffne (wenn auch in der Regel nur die PDF-Version auf meinem Computer). Trotz der Arbeit an fünf Auflagen und der regelmäßigen Anwendung vieler Kommandos scheitere ich daran, mir all die Kommando- und Optionsnamen dauerhaft auswendig zu merken. Sie sehen also: Dieses Buch habe ich nicht nur für Sie geschrieben, sondern auch für mich selbst :-)

Fedora 33

In Fedora 33 gibt es abseits der üblichen Versions-Updates drei vier grundlegende Neuerungen:

  • Als minimaler Texteditor ist nano vorinstalliert, nicht vim. Persönlich empfinde ich das als großen Fortschritt. Alle vi-Freunde müssen eben dnf install vim ausführen (so wie ich nach jeder Linux-Installation dnf/apt install joe ausführe, damit mir der Mini-Emacs jmacs zur Verfügung steht).
  • Das Defaultdateisystem für die Desktop-Version von Fedora lautet nun btrfs und nicht mehr ext4. (Details dazu folgen gleich.)

  • Als lokaler DNS-Client kommt systemd-resolved zum Einsatz.

  • Update 29.10.2020: Standardmäßig wird weder eine Swap-Datei noch eine Swap-Partition eingerichtet. Stattdessen werden bei Bedarf Datenblöcke komprimiert in ein ZRAM-Device ausgelagert.

Überraschenderweise wird Fedora in diesem Fall seiner Vorreiterrolle nur teilweise gerecht. (open)SUSE verwendet btrfs schon seit Jahren standardmäßig. systemd-resolved kommt wiederum in Ubuntu schon seit geraumer Zeit zum Einsatz (wenn ich mich recht erinnere, seit Version 18.04).

Fedora 33 weiterlesen