Lese-Ansicht

GPIO Reloaded I: Python

Dieser Artikel ist der Auftakt einer Mini-Serie, die sich mit der Script-Programmierung des Raspberry Pi 5 beschäftigt. Geplant sind drei Artikel:

  • GPIO Reloaded I: Python (gpiozero, lgpio, gpiod, rpi-lgpio)
  • GPIO Reloaded II: Bash (gpiod, gpioget, gpioset, pinctrl)
  • GPIO Reloaded III: Kamera (rpicam-xxx, Picamera2)

Hinter den Kulissen hat sich mit der Vorstellung des Raspberry Pi 5 mehr geändert, als es in den ersten Testberichten den Anschein hatte. Schuld daran ist der neue I/O-Chip RP1, der unter anderem für die Kommunikation mit der GPIO-Leiste und der Kamera zuständig ist. Der RP1 bringt natürlich viele Vorteile mit sich (u.a. die Möglichkeit, zwei Kameras anzuschließen und größere Bild- bzw. Videomengen zu verarbeiten); er führt aber auch dazu, dass über Jahre etablierte Module und Kommandos nicht mehr funktionieren. Ja, die Raspberry Pi Foundation hat vorgearbeitet und empfiehlt schon eine Weile alternative Werkzeuge. Aber aus Bequemlichkeit blieben viele Programmierer bei langjährig bewährten Tools. Damit ist jetzt Schluss. Wer den Pi 5 als Maker-Tool nutzen will, muss umlernen.

Wo ist das Problem?

In der Vergangenheit gab es mehrere GPIO-Kommuniktionsmechanismen, z.B. das Lesen/Schreiben von sysfs-Dateien (sys/class/gpio) bzw. das direkte Verändern von Speicherbereichen. Diese Verfahren haben schon in der Vergangenheit oft Probleme bereitet. Beim Raspberry Pi 5 funktionieren sie schlicht nicht mehr. Neue Verfahren verwenden die lgpio-Bibliothek, die wiederum auf eine neue Kernel-Schnittstelle zurückgreift. Diese ist nach außen hin durch die Device-Dateien /dev/gpiochip* sichtbar.

Aus Python-Sicht ist insbesondere das Modul rpi.gpio betroffen. Es ist inkompatibel zum Pi 5 und es gibt anscheinend auch keine Pläne, den Code RP1-kompatibel zu reorganisieren.

Welche Alternativen gibt es?

Schon seit einiger Zeit empfiehlt die Raspberry Pi Foundation, das gpiozero-Modul zu verwenden. Es stellt für den Einstieg gut geeignete Klassen wie LED oder Button zur Verfügung, eignet sich aber auch für anspruchsvollere Maker-Aufgaben.

Wenn Sie sich partout nicht mit gpiozero anfreunden wollen, gibt es drei Alternativen: lgpio, gpiod und rpi-lgpio.

gpiozero

Das Python-Modul gpiozero macht die Steuerung von Hardware-Komponenten durch GPIOs besonders einfach. Für häufig benötigte Hardware-Komponenten gibt es eigene Klassen. Dazu zählen unter anderem:

  • LED (Leuchtdiode ein-/ausschalten)
  • PWMLED (Helligkeit einer Leuchtdiode mit Software Pulse Width Modulation steuern)
  • RGBLED (dreifarbige LED, die über drei GPIO-Ausgänge gesteuert wird)
  • TrafficLights (Kombination aus einer roten, gelben und grünen Leuchtdiode)
  • MotionSensor (für PIR-Bewegungssensoren)
  • LightSensor (Lichtdetektor)
  • Button (Taster)
  • Buzzer (Summer)
  • Motor (zur Steuerung von zwei GPIOs für Vorwärts- und Rückwärts-Signale)
  • Robot (zur Steuerung mehrerer Motoren)
  • MCP3008 (für den gleichnamigen A/D-Converter)

Das Modul gpiozero ist umfassend dokumentiert:

https://gpiozero.readthedocs.io/en/latest

Ein Hello-World-Beispiel sieht so aus:

#!/usr/bin/env python3
from gpiozero import LED
import time
myled = LED(7)    # BCM-Nummer 7 = Pin 26 des J8-Headers
print("LED ein")
myled.on()
time.sleep(1)
print("LED aus und Programmende")
myled.off()

Dieses Script setzt voraus, dass Pin 26 der GPIO-Leiste (intern BCM/GPIO 7) über einen Vorwiderstand mit einer Leuchtdiode verbunden ist. Anstelle der GPIO-Nummer gibt es einige alternative Adressierungsverfahren, wobei Sie den gewünschente GPIO-Kontakt als Zeichenkette angeben:

# alternative, gleichwertige Schreibweisen
myled = LED(7)          # GPIO 7 = BCM-Nummer 7
myled = LED("GPIO7")    # GPIO 7 (Achtung, nicht "GPIO07")
myled = LED("BCM7")     # BCM 7  (nicht "BCM07")
myled = LED("BOARD26")  # Pin 26 auf der GPIO-Leiste des Boards
myled = LED("J8:26")    # Pin 26 des J8-Headers (= GPIO-Leiste)

lgpio

lgpio (der Projektname lautet noch kürzer lg) ist eine C-Bibliothek zur lokalen Steuerung der GPIOs. Das gerade erwähnte Modul gpiozero verwendet intern seit Version 2.0 die lgpio-Bibliothek. Alternativ stellt das gleichnamige lgpio-Modul eine direkte Python-Schnittstelle zur lgpio-Bibliothek her. Deren Funktionen sind Hardware-näher implementiert. Der GPIO-Zugriff verbirgt sich also nicht hinter Klassen wie LED oder Button, vielmehr werden die GPIO-Schnittstellen direkt angesprochen.

Ein Hello-World-Beispiel mit lgpio sieht so aus:

#!/usr/bin/env python3
import lgpio, time

# Zugriff auf /dev/gpiochip4 für RP1-Chip
handle = lgpio.gpiochip_open(4)

# Raspberry Pi 4 und früher:
# handle = lgpio.gpiochip_open(0)

# GPIO 7 = Pin 26 als Output verwenden
led = 7
lgpio.gpio_claim_output(handle, led)  

# LED zehnmal ein- und ausschalten
for i in range(10):
    print("LED ein")
    lgpio.gpio_write(handle, led, 1)
    time.sleep(1)
    print("LED aus")
    lgpio.gpio_write(handle, led, 0)
    time.sleep(1)

# nichts blockieren
lgpio.gpiochip_close(handle)

Beachten Sie, dass die Initialisierung des Handles für den GPIO-Zugriff je nach Modell variiert! Bei den älteren Raspberry-Pi-Modellen bis einschließlich 4B/400 müssen Sie handle = lgpio.gpiochip_open(0) ausführen. Beim Raspberry Pi 5 ist für die GPIO-Steuerung dagegen der neue RP1-Chip zuständig, den Sie mit gpiochip_open(4) ansprechen. (Die richtige Chip-Nummer stellen Sie am einfachsten mit dem Kommando gpioinfo aus dem Paket gpiod fest. Der hier benötigte Kontakt GPIO7 heißt in gpioinfo ein wenig verwirrend PIN7.)

Wenn Sie mit Python ein lgpio-Script schreiben wollen, das auf allen Pi-Modellen funktioniert, müssen Sie Code zur Erkennung des Pi-Modells integrieren.

Weiterer Codebeispiele finden Sie hier:

rpi-lgpio

Was tun, wenn Sie Code für ältere Modelle entwickelt haben, den Sie nun für den Raspberry Pi 5 portieren möchten? Am schnellsten wird dies oft mit dem neuen Modul rpi-lgpio gelingen, das weitgehende Kompatibilität zu rpi.gpio verspricht.

Vor der Installation müssen Sie das in Raspberry Pi OS standardmäßig installierte Modul rpi.gpio installieren. Eine Parallelinstallation beider Module ist ausgeschlossen, weil rpi.gpio und rpi-lgpio den gleichen Modulnamen verwenden (import RPi.GPIO).

sudo apt remove python3-rpi.gpio

Da es in Raspberry Pi OS für rpi-lgpio kein fertiges Paket, installieren Sie dieses am einfachsten mit pip. Da es kein passendes Systempaket gibt, sind keine Konflikte zu erwarten. Wenn Sie die Option --break-system-packages dennoch vermeiden möchten, müssen Sie eine virtuelle Python-Umgebung einrichten.

pip install --break-system-packages rpi-lgpio

Das obige pip-Kommando installiert das Modul lokal, also nur für Ihren Account. Wenn Sie Ihr Script in einem anderen Account ausführen möchten (z.B. als Cron-Job), stellen Sie dem Kommando sudo voran und installieren so rpi-lgpio systemweit.

Nach diesen Vorbereitungsarbeiten sollten viele Ihre alten Scripts ohne Änderungen laufen. Einige Sonderfälle sind hier dokumentiert:

https://rpi-lgpio.readthedocs.io/en/release-0.4/differences.html

Die folgenden Zeilen zeigen einmal mehr eine Schleife zum Ein- und Ausschalten einer Leuchtdiode:

#!/usr/bin/env python3
# Das Script setzt voraus, dass vorher 
# rpi-lgpio installiert wurde!
import RPi.GPIO as gpio
import time

# BCM-GPIO-Nummern verwenden
gpio.setmode(gpio.BCM)

# LED an Pin 26 = GPIO 7 
gpio.setup(7, gpio.OUT)

# LED über Pin 26 fünf Mal ein- und ausschalten
for _ in range(5):
    print("LED ein")
    gpio.output(7, gpio.HIGH)
    time.sleep(1)
    print("LED aus")
    gpio.output(7, gpio.LOW)
    time.sleep(1)

# alle vom Script benutzten GPIOs/Pins wieder freigeben
gpio.cleanup()

gpiod

Das Python-Modul gpiod wird durch das Paket python3-libgpiod zur Verfügung gestellt, das unter Raspberry Pi OS standardmäßig installiert ist. Das Modul stellt eine Python-Schnittstelle zur Bibliothek libgpiod her. Diese Bibliothek ist wiederum eine Alternative zu der schon erwähnten lgpio-Bibliothek. Da es zum Python-Modul kaum Dokumentation gibt, ist gpiod nur für Entwickler von Interesse, die mit libgpiod bereits C-Programme entwickelt haben. Als Ausgangspunkt für eine eigene Recherche eignen sich die beiden folgenden Seiten:

Das folgende Minibeispiel zeigt, wie Sie eine LED an Pin 26 (GPIO 7) fünf mal ein- und ausschalten:

#!/usr/bin/env python3
import gpiod, time
chip = gpiod.Chip('gpiochip4')  # RP1 (Raspberry Pi 5)
led = chip.get_line(7)          # GPIO 7 = Pin 26 des J8-Headers
led.request(consumer="example", type=gpiod.LINE_REQ_DIR_OUT)

for _ in range(5):              # 5x ein- und ausschalten
    led.set_value(1)
    time.sleep(1)
    led.set_value(0)
    time.sleep(1)

Quellen/Links

  •  

Mein Linux Jahresrückblick 2023

Das Jahr 2023 war für Linux voller spannender Entwicklungen. Linux, ein kostenloses und quelloffenes Betriebssystem, das von einer großen Gemeinschaft entwickelt wird, hat viele Fortschritte gemacht. In diesem Jahresrückblick werden wir uns die wichtigsten Ereignisse des Jahres anschauen. Es geht los mit Feststellungen und geht dann über in meinen persönlichen Blickwinkel. Neue Linux-Distributionen Ein Kalenderjahr...

Der Beitrag Mein Linux Jahresrückblick 2023 erschien zuerst auf MichlFranken.

  •  

PHP8.2-fpm für Nextcloud 28

Dieser Beitrag baut auf dem Artikel „PHP7.4-fpm auf PHP8.1-fpm für Nextcloud“ auf.

Im Januar 2023 hatte ich erklärt, wie ich mein Raspberry Pi OS 11 (basierend auf Debian 11 Bullseye), durch Einbinden einer Fremdquelle, von PHP7.4-fpm auf PHP8.1-fpm aktualisiert habe. Warum ich zu diesem Zeitpunkt die Version 8.1 installiert habe, ist recht einfach zu beantworten. Die aktuelle Version Nextcloud 25 war noch nicht kompatibel zu PHP 8.2. Erst mit Nextcloud 26 war ein Upgrade möglich.

Nun habe ich mich nach der Aktualisierung auf Nextcloud 28 entschieden auf PHP 8.2 zu wechseln. Da ich den FastCGI-Prozessmanager FPM bevorzuge, unterscheidet sich das Upgrade etwas von einer herkömmlichen PHP-Installation.

Unterstützungszeiträume der aktuellen PHP-Versionen
Quelle: https://www.php.net/supported-versions.php

Installation

Zuerst wird das System auf den aktuellen Stand gebracht.

sudo apt update && sudo apt upgrade -y

Ein Check zeigt, welche PHP-Version momentan aktiv ist.

php -v

Hier die Ausgabe:

PHP 8.1.27 (cli) (built: Dec 21 2023 20:17:59) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.27, Copyright (c) Zend Technologies
with Zend OPcache v8.1.27, Copyright (c), by Zend Technologies

Jetzt werden alle benötigten Pakete nachinstalliert (auch das von Nextcloud 28 verlangte bz2 und der von mir eingesetzte Redis-Server).

sudo apt install php8.2 php8.2-mbstring php8.2-gd php8.2-curl php8.2-imagick php8.2-intl php8.2-bcmath php8.2-gmp php8.2-mysql php8.2-zip php8.2-xml php8.2-apcu libapache2-mod-php8.2 php8.2-bz2 php8.2-redis

Nun wird via CLI die PHP-Version von 8.1 auf 8.2 mit

sudo update-alternatives --config php

umgestellt.

sudo update-alternatives --config php
Es gibt 5 Auswahlmöglichkeiten für die Alternative php (welche /usr/bin/php bereitstellen).

  Auswahl      Pfad                  Priorität Status
------------------------------------------------------------
  0            /usr/bin/php.default   100       automatischer Modus
  1            /usr/bin/php.default   100       manueller Modus
  2            /usr/bin/php7.4        74        manueller Modus
* 3            /usr/bin/php8.1        81        manueller Modus
  4            /usr/bin/php8.2        82        manueller Modus
  5            /usr/bin/php8.3        83        manueller Modus
sudo update-alternatives --config php
Es gibt 5 Auswahlmöglichkeiten für die Alternative php (welche /usr/bin/php bereitstellen).

  Auswahl      Pfad                  Priorität Status
------------------------------------------------------------
  0            /usr/bin/php.default   100       automatischer Modus
  1            /usr/bin/php.default   100       manueller Modus
  2            /usr/bin/php7.4        74        manueller Modus
  3            /usr/bin/php8.1        81        manueller Modus
* 4            /usr/bin/php8.2        82        manueller Modus
  5            /usr/bin/php8.3        83        manueller Modus

Ein abschließender Check zeigt die aktuelle Version.

php -v
PHP 8.2.14 (cli) (built: Dec 21 2023 20:18:00) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.14, Copyright (c) Zend Technologies
with Zend OPcache v8.2.14, Copyright (c), by Zend Technologies

Ist die Ausgabe korrekt, kann PHP8.1-fpm deaktiviert, PHP8.2-fpm installiert und aktiviert werden.

sudo a2disconf php8.1-fpm
sudo apt install php8.2-fpm
sudo a2enconf php8.2-fpm

Der Restart des Webservers führt nun die Änderungen aus.

sudo service apache2 restart

Nextcloud-Konfiguration

Da in der Nextcloud nun wieder die bekannten Fehlermeldungen auftauchen, heißt es, diese schrittweise abzuarbeiten. Dazu wird die neue php.ini geöffnet

sudo nano /etc/php/8.2/fpm/php.ini

und die Werte für memory_limit sowie session_lifetime wie empfohlen angepasst.

memory_limit = 512M
session.gc_maxlifetime = 3600

Der Block

opcache.enable=1
opcache.interned_strings_buffer=64
opcache.max_accelerated_files=10000
opcache.memory_consumption=256
opcache.save_comments=1
opcache.revalidate_freq=1

für den Zwischenspeicher OPchache wird ans Ende der php.ini gesetzt.

Zur Optimierung von PHP8.2-fpm werden speziell für das Modell Raspberry Pi 4 mit 4GB RAM in der Datei www.conf mit

sudo nano /etc/php/8.2/fpm/pool.d/www.conf

folgende Werte von

pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

auf

pm = dynamic
pm.max_children = 120
pm.start_servers = 12
pm.min_spare_servers = 6
pm.max_spare_servers = 18

angepasst und der Dienst neu gestartet.

sudo service php8.2-fpm restart

Danach muss in der apcu.ini das Command Line Interface des PHP Cache noch aktiviert werden, indem

sudo nano /etc/php/8.2/mods-available/apcu.ini

folgende Zeile am Ende eingetragen wird.

apc.enable_cli=1

Ist dies geschehen, wird der Webserver ein letztes Mal neu gestartet.

sudo service apache2 restart

Fazit

Die Umstellung bringt zwar im Moment keine erkennbaren Vorteile, jedoch verschafft es wieder ein wenig Zeit und senkt den Druck das eigentliche Raspberry Pi OS 11 Bullseye durch die aktuelle Version 12 Bookworm zu ersetzen.

  •  

Support-Ende für Windows 10 – 240 Mio. Computer auf den Müll?

Eine Studie von Canalys Research hat ergeben, dass das Support-Ende von Windows 10 möglicherweise auch das Ende für 240 Millionen PCs sein könnte. Der Elektronikschrott dieser PCs könnte geschätzt 480 Millionen Kilogramm (480.000 Tonnen) wiegen. Das entspricht laut der Studie 320.000 Autos. Die Unterstützung für Windows 10 soll im Oktober 2025 enden. Viele der Computer sind gut und schnell, lassen sich aber nicht auf Windows 11 aktualisieren. Microsoft hat angekündigt, dass es für einen bisher nicht genannten Preis weiterhin Sicherheits-Updates […]

Der Beitrag Support-Ende für Windows 10 – 240 Mio. Computer auf den Müll? ist von bitblokes.de.

  •  

PHP-FPM – Eine Einführung in den FastCGI Process Manager für PHP

PHP-FPM (FastCGI Process Manager) ist eine leistungsstarke Erweiterung für den PHP-Interpreter, die die Ausführung von PHP-Skripten optimiert und verbessert. Entwickelt, um die Skalierbarkeit von PHP-basierten Webanwendungen zu erhöhen, spielt PHP-FPM eine entscheidende Rolle in modernen Webserver-Umgebungen.

Hintergrund

Traditionell wurde PHP als Modul für Webserver wie Apache bereitgestellt. Dieser Ansatz hatte jedoch seine Einschränkungen, insbesondere wenn es um die Verwaltung von Ressourcen und die Skalierung von Webanwendungen ging. PHP-FPM wurde als Lösung für diese Herausforderungen entwickelt, indem es die FastCGI-Protokollspezifikation implementiert und PHP-Skripte als separate Prozesse ausführt.

Vorteile von PHP-FPM

1. Ressourcenverwaltung:

PHP-FPM ermöglicht eine effiziente Verwaltung von Ressourcen, indem es separate Prozesse für jede Anforderung erstellt. Dadurch wird der Arbeitsspeicher besser genutzt und die Gesamtleistung der Webanwendung verbessert.

2. Skalierbarkeit:

Durch die Nutzung von PHP-FPM können Webentwickler ihre Anwendungen leichter skalieren, da sie die Anzahl der gleichzeitig ausgeführten PHP-Prozesse steuern können. Dies ist besonders wichtig in Umgebungen mit starkem Datenverkehr.

3. Isolierung von Anwendungen:

Jede PHP-Anwendung wird in ihrem eigenen Prozess isoliert, wodurch Konflikte zwischen verschiedenen Anwendungen vermieden werden. Dies trägt zur Stabilität des Gesamtsystems bei.

4. Anpassbare Konfiguration:

PHP-FPM bietet eine umfangreiche Konfiguration, die es Administratoren ermöglicht, Parameter wie Prozessprioritäten, Anzahl der Kinderprozesse und andere Einstellungen zu optimieren.

Konfiguration und Verwendung

Die Konfiguration von PHP-FPM erfolgt über die php-fpm.conf-Datei und optionale Pool-Konfigurationsdateien. Administratoren können Parameter anpassen, um die Leistung und Ressourcennutzung nach den Anforderungen ihrer Anwendung zu optimieren.

Die Integration von PHP-FPM in Webserver wie Nginx oder Apache erfolgt durch die Konfiguration von FastCGI-Servern. Dies ermöglicht eine reibungslose Kommunikation zwischen dem Webserver und PHP-FPM.

Fazit

PHP-FPM hat sich als wesentliches Werkzeug für die Verwaltung von PHP-Anwendungen in produktiven Umgebungen etabliert. Durch die Bereitstellung von effizienter Ressourcennutzung, Skalierbarkeit und Anwendungsisolierung spielt PHP-FPM eine Schlüsselrolle bei der Gewährleistung der Leistungsfähigkeit von PHP-Webanwendungen. Bei der Entwicklung und Verwaltung von Webanwendungen ist es wichtig, die Vorteile von PHP-FPM zu verstehen und richtig zu konfigurieren, um eine optimale Leistung zu gewährleisten.

  •  

Frohe Weihnachten 2023

Ich wünsche Euch und Euren Familien ein frohes und gesegnetes Weihnachten 2023! Habt einen paar schöne Feiertage und lasst es Euch gut gehen! Vielen Dank, dass Ihr dieses Jahr bei mir reingeschaut habt

Der Beitrag Frohe Weihnachten 2023 erschien zuerst auf MichlFranken.

  •  

TUXEDO Control Center 2.1 mit nützlichen Verbesserungen

Ich habe gerade ein umfassendes Update für mein Tuxedo OS bekommen und darunter befand sich auch eine Aktualisierung auf TUXEDO Control Center 2.1. Es gibt diverse Neuerungen und Verbesserungen, die Anwender von TUXEDO-Produkten möglicherweise zu schätzen wissen. Neuerungen in TUXEDO Control Center 2.1 Ab sofort gibt es Unterstützung für Sirius-Tastaturhintergrundbeleuchtung. Das gilt auch für Sirius-Systemprofile. Die Bildwiederholrate des Laptop-Bildschirms kann per TCC-Profil konfiguriert werden. Damit ist die Konfiguration einer reduzierten Bildwiederholrate im Batteriebetrieb möglich, was wiederum den Akku schont. Für […]

Der Beitrag TUXEDO Control Center 2.1 mit nützlichen Verbesserungen ist von bitblokes.de.

  •  

Linux Mint 21.3 „Virginia“ – Es ist vollbracht

Mit Linux Mint 21.3 Codename Virginia kommt die Linux Mint 21er Serie zu Ihrem geplanten Ende. Das dritte Point-Release rundet eine Serie komplett ab. Was genau Virginia im Gepäck hat, was es Neues gibt usw. alles das gibts jetzt. Bleibt dran. Eckpunkte über die Distro Linux Mint ist eine auf Ubuntu basierende Linux-Distribution, die darauf...

Der Beitrag Linux Mint 21.3 „Virginia“ – Es ist vollbracht erschien zuerst auf MichlFranken.

  •  

Darktable 4.6 ist veröffentlicht

Ab sofort steht die Open-Source RAW-Editor Darktable 4.6 zur Verfügung. Das Team hat 1648 Commits eingepflegt und zudem 49 Probleme behoben. Es gibt einige Verbesserungen und Neuerungen. Die Highlights kurz im Überblick. Der Bearbeitungsverlauf wird ab sofort regelmäßig und automatisch gespeichert. Das Speichern erfolgt alle 10 Sekunden während der Bearbeitung von Bildern in der Dunkelkammer-Ansicht. Das Intervall für die automatische Speicherung kannst Du aber individuell einstellen. Du kannst die automatische Speicherung auch komplett deaktivieren. Dafür setzt Du das Intervall einfach […]

Der Beitrag Darktable 4.6 ist veröffentlicht ist von bitblokes.de.

  •  

Zorin OS 17 erschienen

Die Entwickler hinter der Distro Zorin OS haben nach langer Entwicklungszeit die allgemeine Verfügbarkeit von Version 17 angekündigt. Obwohl Zorin OS 17 noch auf Ubuntu 22.04 LTS basiert, kommt diese Version mit einigen interessanten Neuerungen. Wie üblich, gibt es die Ausgabe in drei verschiedenen Editionen: Lite, Core und Pro. Die Lite Version ist für bis...

Der Beitrag Zorin OS 17 erschienen erschien zuerst auf MichlFranken.

  •  

Armbian nun auch für den Raspberry Pi 5

Ab sofort funktioniert Armbian auch für den Raspberry Pi 5. Es wurden Images zur Verfügung gestellt, die entweder auf Debian oder Ubuntu basieren. Genauer gesagt basieren die Abbilder entweder auf Debian GNU Linux 12 Bookworm oder Ubuntu 22.04 LTS Jammy Jellyfish. Bezüglich Desktop-Umgebungen gibt es die Abbilder mit GNOME, KDE Plasma, Cinnamon, Xfce und i3. Die auf Debian basierende Version ist mit den vorinstallierten Desktop-Umgebungen GNOME, Xfce und Cinnamon verfügbar. Die Ubuntu-basierten Images gibt es mit den Desktop-Umgebungen Cinnamon, KDE […]

Der Beitrag Armbian nun auch für den Raspberry Pi 5 ist von bitblokes.de.

  •  

Nextcloud 27.1.5 & 26.0.10 + Nextcloud Client 3.11.0

Vor wenigen Tagen wurde Nextcloud Hub 7 (28.0.0) veröffentlicht. Nun gibt es die Wartungs-Versionen 27.1.5 sowie Version 26.0.10. Bei beiden Varianten wurde das CA-Zertifizierungspaket aktualisiert. Bei Version 26.0.10 hat das Team eine potenzielle Schwachstelle in der WebDAV-Komponenten behoben. Es gibt einige Verbesserungen und Optimierungen, etwa beim TemplateManager und dem Brute-Force-Schutz. Wie üblich haben die Entwickler auch Fehlerbehebungen zurückportiert. Bei Version 27.1.5 wurde unter anderem ein CSRF-Prüfungsfehler bei der Anmeldung behoben. Zudem hat das Team potenzielle Schwachstellen wie idn_to_utf8, bei denen […]

Der Beitrag Nextcloud 27.1.5 & 26.0.10 + Nextcloud Client 3.11.0 ist von bitblokes.de.

  •  

Lost Ruins – nächstes Geschenk von Gog.com

Vor wenigen Tagen hat Gog.com erste Legend of Keepers verschenkt, das mir echt Spaß macht. Nun gibt es mit Lost Ruins ein weiteres Geschenk. Dabei handelt es sich um ein 2D-Sidescrolling-Survival-Actionspiel. Du spielst dabei ein junges Mädchen, das an einem seltsamen und fremden Ort ohne seine Erinnerungen aufgewacht ist. Im Metrovania-Stil erkundest Du eine dunkle und gefährliche Welt. Natürlich musst Du auch furchtbare Monster bekämpfen und Dich gegen üble Boss-Monster behaupten. Möchtest Du das Spiel haben, besuche einfach Gog.com und […]

Der Beitrag Lost Ruins – nächstes Geschenk von Gog.com ist von bitblokes.de.

  •  

Gnome 44.7 erschienen

Das GNOME-Projekt hat GNOME 44.7 veröffentlicht, das das siebtes Wartungsupdate der GNOME 44 “Kuala Lumpur” Desktop-Serie darstellt. Dieses Aktualisierung kümmert sich um Fehler und behebt Leistungsprobleme. Es richtet sich an Benutzer, die noch die GNOME 44 Desktop-Umgebung verwenden. GNOME 44.7 bringt Optimierungen für die Anwendungssuche in der GNOME Shell mit und verbessert die Leistung. Die...

Der Beitrag Gnome 44.7 erschienen erschien zuerst auf MichlFranken.

  •  

Legend of Keepers kostenlos – nur noch knappe 8 Stunden

Derzeit verschenkt Gog.com das Spiel Legend of Keepers. Du musst aber gleich zuschlagen, da der Mix aus Dungeon Management und Roguelite nur noch knapp über 8 Stunden kostenlos verfügbar ist. Besuche einfach Gog.com und scrolle etwas nach unten. Dann findest Du das Gratis-Spiel und kannst es Deiner Bibliothek hinzufügen. Bei Legend of Keepers arbeitest Du für die Dungeons Company und musst Dich nach oben arbeiten. Dabei vernichtest Du sogenannte Helden und beschützt die Schätze des Unternehmens. Du heuerst Monster an, […]

Der Beitrag Legend of Keepers kostenlos – nur noch knappe 8 Stunden ist von bitblokes.de.

  •  

Manjaro Linux 23.1 im Test. Wo steht Manjaro Ende 2023?

Manjaro ist ist eine rollende Linux Distro und kommt mit verschiedenen Desktop-Umgebungen, darunter auch mit dem GNOME-Desktop. GNOME ist eine moderne, intuitive und hübsche Desktop-Umgebung, die im Hause Manjaro dank Anpassungen für eine benutzerfreundliche Bedienung bekannt ist. Manjaro bietet mit Gnome ein aufgeräumtes Erscheinungsbild und eine klare Benutzeroberfläche, die sich besonders für Anfänger eignet. Wir...

Der Beitrag Manjaro Linux 23.1 im Test. Wo steht Manjaro Ende 2023? erschien zuerst auf MichlFranken.

  •  

Wochenendarbeit: Debian bereinigt Kernel Problem und bringt Debian 12.4 heraus

Das ging schnell. Im Debian Stable Zweig ist ein Fehler passiert. Ein zur Veröffentlichung freigegebner Kernel führte unter Umständen zu korrupten Daten in Verbindung mit Verwendung von Ext4 Dateisystem. Umgehend nach Bekanntwerden des Problems informierte das Debian Projekt über den Umstand und nahm das problematische Image offline und warnte die Nutzer mit automatischen Aktualisierungen vor...

Der Beitrag Wochenendarbeit: Debian bereinigt Kernel Problem und bringt Debian 12.4 heraus erschien zuerst auf MichlFranken.

  •  

Warnung vor Debian 12.3: Datenbeschädigung mit Ext4 Dateisystem im Kernel 6.1.64-1 möglich

Die geplante Veröffentlichung von Debian 12.3 wurde vorübergehend auf Eis gelegt, nachdem ein kritischer Fehler im Linux-Kernel 6.1.64-1 entdeckt wurde, der potenziellen Datenverlust auf Systemen mit ext4-Dateisystemen verursachen kann. Der Fehler, mit der Identifikationsnummer #1057843 dokumentiert, birgt das Risiko von Datenbeschädigung. Als Reaktion darauf hat das für die Veröffentlichung von Debian 12.3 verantwortliche Team beschlossen,...

Der Beitrag Warnung vor Debian 12.3: Datenbeschädigung mit Ext4 Dateisystem im Kernel 6.1.64-1 möglich erschien zuerst auf MichlFranken.

  •  

LibreOffice 7.6.4 erschienen

Die Document Foundation hat die Veröffentlichung von LibreOffice 7.6.4, dem vierten Wartungsupdate der aktuellen Open-Source-Office-Suite-Serie LibreOffice 7.6, bekannt gegeben. Dieses Update steht ab sofort zum Download zur Verfügung und kommt nur knapp zwei Wochen nach der Veröffentlichung von LibreOffice 7.6.3. LibreOffice 7.6.4 behebt insgesamt 41 Fehler und Probleme, die von Benutzern gemeldet oder von den...

Der Beitrag LibreOffice 7.6.4 erschienen erschien zuerst auf MichlFranken.

  •  

SSD der Nextcloud ersetzen

Der Black Friday ist für den Einzelhandel ein willkommenes Datum, um Waren an den Mann bzw. die Frau zu bringen. In dieser Zeit wird Lagerware abverkauft, um Platz für Neues zu schaffen. Der Endverbraucher profitiert meist durch Rabatte und Nachlässe auf interessante Artikel.

Angelockt durch solch ein Angebot, habe ich mir eine externe 2TB-SSD zugelegt, um den Speicher meiner Nextcloud zu erweitern. Im Vorfeld hatte ich mir hierzu schon einige Gedanken gemacht, wie ich die alte 500GB SSD durch das neue und größere Speichermedium ersetze.

Nextcloud auf dem Raspberry Pi mit SanDisk SSD (2 TB)
Raspberry Pi mit SanDisk SSD

Die perfekte Lösung für mich war das Duplizieren der Quelle mit Clonezilla. Hierbei wurden beide Festplatten an den Rechner angeschlossen, Clonezilla gestartet und mit device-device ein Duplikat erstellt. Bei diesem musste dann nur noch die Partition vergrößert werden. Da der Zielfestplatte die selbe UUID vergeben wurde, waren im Anschluss keine weiteren Maßnahmen erforderlich.

Clonezilla Auswahl device-device
Clonezilla device-device
  •  
❌