Normale Ansicht

Es gibt neue verfügbare Artikel. Klicken Sie, um die Seite zu aktualisieren.
Ältere BeiträgeIntux

Fehlermeldung nach Nextcloud-Upgrade auf Version 21.0.3

12. August 2021 um 05:05

Beim Upgrade auf die Version 21.0.3 meiner Nextcloud erhielt ich folgende Fehlermeldung:

Letzte Cron-Job-Ausführung: Vor 5 Stunden. Check the background job settings.

Die Hintergrund-Aufgaben via CronDen System-Cron-Dienst verwenden, um die Datei cron.php alle 5 Minuten aufzurufen. Die cron.php muss durch den Systemnutzer „www-data“ ausgeführt werden.„, konnten nicht mehr ausgeführt werden.

Normalerweise kommt es i.d.R. zu solchen Meldungen eher beim Upgrade auf die nächste Major-Version. Da ich diesen Fehler nun auf zwei betreuten Nextcloud-Instanzen feststellen musste, konnte es nur etwas mit der Konfiguration der Server zu tun haben.

Nach ein wenig Recherche im Netz fand ich die Lösung. Das Command Line Interface des PHP Cache musste explizit nachträglich aktiviert werden. Wenn ich das richtig deute, ist dies aber nur in meiner älteren PHP 7.3 nötig.

Hierzu öffnet man im Editor nun die Config /etc/php/7.3/mods-available/apcu.ini mit

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

trägt folgende Zeile am Ende ein

apc.enable_cli=1

und speichert diese ab. Bei Verwendung von FPM startet man das Ganze neu.

sudo /etc/init.d/php7.3-fpm restart

Wer kein FPM aktiviert hat, führt einen Restart des Webservers durch.

SWAP des Raspberry Pi vergrößern

03. November 2021 um 17:39

Neulich hatte ich Bedarf den SWAP eines Raspberry Pi, auf dem ein Raspberry Pi OS läuft, zu erweitern, da dieser ständig überlief. Hier sind per Standard 100MB eingerichtet. Diesen Wert galt es nun auf 1000MB anzuheben.

Diese Änderung kann ganz einfach wie folgt umgesetzt werden. Dazu ruft man mit dem Editor Nano die Datei  /etc/dphys-swapfile auf

sudo nano /etc/dphys-swapfile

sucht den entsprechenden Eintrag und ändert den Wert, wie im Beispiel auf 1000.

CONF_SWAPSIZE=1000

Nach dem Abspeichern via Ctrl + o, dem Verlassen des Editors mit Ctrl + x und einem anschließenden Reboot, steht die neue Größe des SWAP-Speichers zur Verfügung.

sudo reboot

NextcloudPi angesehen

04. Januar 2022 um 17:18

Wie schön wäre es doch, seine Daten sicher zu Hause aufzubewahren, sie immer und überall verfügbar zu haben und diese nicht an zweifelhafte Cloud-Dienstleister auszulagern. Geht das? Na klar, mit der Nextcloud!

Hierzu benötigt man nicht viel. Ein Raspberry Pi mit Internetanschluss und etwas Interesse sich mit dieser interessanten Materie zu beschäftigen reicht völlig aus. Ich bevorzuge generell die klassische Installation der Cloud-Software auf einem LAMP-Server.

Einen etwas einfacheren Weg zur eigenen Cloud geht OWN YOUR BITS. Die Entwickler stellen komplette Images zur Verfügung, um die Cloud ohne Linux-Erfahrung in den eigenen vier Wänden zu realisieren.

Installation

Ich habe mir nun einmal NextcloudPi für den Raspberry Pi etwas genauer angesehen. Das Image hierzu ist 4,3GB groß und kann direkt von der Webseite kostenlos heruntergeladen und eingesetzt werden. Dabei muss man natürlich aufpassen, dass das richtige Download-Paket ausgewählt wird. Ist dies geschehen, wird das Image entpackt und z.B. mit dem Raspberry Pi Imager auf eine mindestens 16GB-große MicroSD geschrieben.

Der erste Kontakt

Nachdem die MicroSD in den Raspberry Pi eingelegt und dieser gestartet wurde (ohne Bildschirm, Tastatur und Maus), erreicht man NextcloudPi über die lokale Adresse https://nextcloudpi.local im heimischen Netzwerk. Voraussetzung ist jedoch der vorherige Anschluss des Einplatinencomputers über LAN-Kabel an den Router.

Wenn alles funktioniert, wird man nach dem Booten von folgendem Bildschirm begrüßt. 

NextcloudPi – Erstkontakt

Hier bekommt man Benutzernamen und Passwörter für das NextcloudPi Webinterface sowie die Nextcloud. Nach der Aktivierung gelangt man nun in den NextcloudPi-Maschinenraum. Dazu wird das erste Passwort benötigt, welches später auch geändert werden kann. Weiter geht es mit einem Installations-Wizard, welcher dabei hilft die Cloud mit einer Festplatte oder SSD über USB zu erweitern. Außerdem hat man nun die Möglichkeit das System über einen DynDNS-Anbieter von außen über das Internet erreichbar zu machen.

NextcloudPi – Installations-Wizard

Im Webinterface lassen sich serverseitig einige Einstellungen erledigen, ohne jedoch wirklich selbst Serverkenntnisse besitzen zu müssen. Das birgt allerdings die Gefahr, dass das System ungewollt beschädigt werden kann, was mir tatsächlich einige Male gelungen ist. Um nun in solch einer Situation zur Reparatur selbst Hand anzulegen, muss an den Raspberry Pi ein Monitor und eine Tastatur angeschlossen werden, damit auf den eigentlichen Server zugegriffen werden kann. Dies geht nun direkt auf dem Raspberry Pi oder nach SSH-Aktivierung von einem anderen Computer. Im letzteren Fall kann der RasPi wieder von den zuvor angeschlossenen Peripheriegeräten getrennt werden. Ohne ein wenig Linux-Erfahrung ist man aber hier aufgeschmissen.

Die Nextcloud

Die Nextcloud erreicht man nach erfolgreicher Beendung der Installationsroutine über https://nextcloudpi oder die vom Router für den Raspberry Pi vergebene IP-Adresse. In meinem Fall: https://192.168.178.32. Falls die DynDNS-Adresse zu diesem Zeitpunk schon eingerichtet und in die config.php über das Webinterface aufgenommen wurde, wäre die Nextcloud-Instanz auch über die vergebene Web-Adresse erreichbar, vorausgesetzt die Ports 80 und 443 sind am Router auf Port Forwarding gesetzt.  Das Login erfolgt nun über das am Anfang vergebene zweite Passwort. Begrüßt wird der neue Nutzer nun erstmalig von der eigenen Cloud-Instanz. Ratsam wäre es hier, einen neuen Benutzer als Administrator anzulegen und den User ncp später zu löschen.

Nextcloud - Login

Auch in der Nextcloud sind Änderungen am System mit äußerster Vorsicht vorzunehmen! Die Erstellung eines Backups ist aus meiner Sicht vorher ebenfalls unverzichtbar. So wurde ich z.B. nach einem App-Upgrade komplett ausgesperrt, da die Cloud dauerhaft im Wartungsmodus verharrte.

Auch anzumerken ist, dass die verwendete Nextcloud-Version nicht up to date ist, wie auch das auf Debian basierende Raspberry Pi OS. Das ist aber nicht weiter schlimm, da diese Versionen eine Langzeitunterstützung seitens der Entwickler erfahren. Die aktuelle Nextcloud-Version ist die 23. Auf NextcloudPi läuft Version 21 und Raspberry Pi OS 10, aktuell v11.

Nextcloud – Fehlermeldungen

Wie man oben im Bild sehen kann, kommt es noch zu diversen Fehlermeldungen, die ebenfalls ohne Serverkenntnisse nicht beseitigt werden können. Es müssen Pakete nachinstalliert werden, bzw. sind Eingriffe in die Konfigurationsdatei der Nextcloud-Instanz notwendig.

Fazit

NextcloudPi ist mit Sicherheit ein interessantes Projekt, welches es dem User erlaubt, schnell eine eigene Nextcloud-Instanz auf dem Einplatinencomputer Raspberry Pi einzurichten und in Betrieb zu nehmen. Die Erreichbarkeit aus dem Internet wird bei Bedarf über eine DynDNS-Adresse realisiert. Wer nicht die neueste Version der Nextcloud einsetzen muss und bereit zu Abstrichen ist, für den ist das System durchaus empfehlenswert.

Meinen Zugang zur Cloud konnte ich problemlos via 2FA mit einem YubiKey absichern.

Leider fehlt ein Turn-Server im System, welcher es quasi unmöglich macht Videokonferenzen via nachinstallierter App Talk zu führen. Ein Turn-Server kann aber im Nachhinein auf dem Raspberry Pi noch nachinstalliert werden. Auch hierzu sind Linux-Kenntnisse von Vorteil.

XEP-0156 reparieren

06. Januar 2022 um 10:44

Mein XMPP-Server ist vor einiger Zeit mal wieder durch den Complience-Test gefallen, da das Modul XEP-0156 schlapp gemacht hatte. Nun konnte ich die freien Tage über den Jahreswechsel nutzen und den Fehler fixen. Damit die Konfiguration nicht verloren geht, möchte ich diese hier kurz festhalten.

Zur Ausstattung

Mein XMPP-Server läuft unter Prosody 0.11.10 auf Debian 11 Bullseye. Als Webserver wird Apache2 eingesetzt.

Konfiguration

So sieht der VirtualHost aus:

<VirtualHost *:80>

        RewriteEngine On
        RewriteCond %{HTTPS} !=on
        RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

        ServerAdmin info@intux.de
        DocumentRoot /var/www/html/intux

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
	CustomLog /var/log/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

	ServerName intux.de
	ServerAlias www.intux.de
	RewriteCond %{SERVER_NAME} =intux.de [OR]
	RewriteCond %{SERVER_NAME} =www.intux.de
	RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

<IfModule mod_ssl.c>
<VirtualHost *:443>

	Protocols h2 h2c http/1.1

<Location /http-bind>
        Order allow,deny
        Allow from all
</Location>

<Location ~ "/\.well-known/host-meta(\.json)?">
    Header set Access-Control-Allow-Origin "*"
</Location>

        RewriteEngine On
	RewriteRule ^/http-bind$ http://intux.de:5280/http-bind [P,L]

	ServerAdmin info@intux.de
        DocumentRoot /var/www/html/intux
        Header always set Strict-Transport-Security "max-age=31536000"
        Header set Access-Control-Allow-Origin "*"
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        CustomLog /var/log/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

	Include /etc/letsencrypt/options-ssl-apache.conf
	ServerName intux.de
	ServerAlias www.intux.de

	SSLCertificateFile /etc/letsencrypt/live/intux.de-0003/fullchain.pem
	SSLCertificateKeyFile /etc/letsencrypt/live/intux.de-0003/privkey.pem
</VirtualHost>
</IfModule>

<IfModule mod_proxy.c>
    <IfModule mod_proxy_wstunnel.c>
    ProxyTimeout 900
    <Location "/xmpp-websocket">
        ProxyPreserveHost On
        ProxyPass "ws://localhost:5280/xmpp-websocket"
    </Location>
    </IfModule>
</IfModule>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

Hier die host-meta:

<?xml version='1.0' encoding='utf-8'?>
<XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'>
  <Link rel="urn:xmpp:alt-connections:xbosh"
        href="https://intux.de/http-bind" />
  <Link rel="urn:xmpp:alt-connections:websocket"
        href="wss://intux.de:443/xmpp-websocket" />
</XRD>

Die Konfiguration der prosody.cfg.lua:

pidfile = "/var/run/prosody/prosody.pid"

storage = "sql"

sql = {
    driver = "MySQL";
    database = "prosody";
    host = "localhost";
    username = "bn";
    password = "pw";
}

plugin_paths = { "/usr/lib/prosody/prosody-modules" }

admins = {"intux@intux.de" }
modules_enabled = {
	"roster";
	"saslauth";
 	"tls";
	"dialback";
	"disco";
	"private";
	"blocklist";
	"version";
	"uptime";
	"time";
	"ping";
	"posix";
	"pep";
	"register";
	"admin_adhoc";
	"motd";
	"welcome";
	"proxy65";
	"watchregistrations";
	"register_web";
	"admin_web";
	"http_upload_external";
	"mam";
	"csi";
	"carbons";
	"smacks";
	"lastlog";
	"cloud_notify";
	"omemo_all_access";
	"server_contact_info";
	"profile";
	"vcard_legacy";
	"pep_vcard_avatar";
	"websocket";
	"bookmarks";
	"bosh";
	"http_altconnect";
	"turncredentials";
}

log = {
 debug = "/var/log/prosody/prosody.log";
 error = "/var/log/prosody/prosody.err";
}

legacy_ssl_ports = { 5223 }

default_archive_policy = false;
archive_expires_after = "1m";

c2s_require_encryption = true
s2s_require_encryption = true
s2s_secure_auth = true
s2s_secure_domains = { "trashserver.net", "jabber.de", "jabber.org", "xmpp.org" }
s2s_insecure_domains = {}

http_upload_external_base_url = "https://upload.intux.de/upload/"
http_upload_external_secret = "prosody2016."
http_upload_external_file_size_limit = 10000000

proxy65_ports = { 5212 }

authentication = "internal_hashed"

turncredentials_host = "cloud.intux.de"
turncredentials_secret = "18c5a842b57336a16c97255c4fc1aeb5336e3b6a9254b6bd148d789d8a740779"
turncredentials_port = 5349

consider_websocket_secure = true;
cross_domain_websocket = true;
consider_bosh_secure = true;
cross_domain_bosh = true;

allow_registration = true
min_seconds_between_registrations = 300
registration_blacklist = { "83.218.198.86", "109.185.243.100", "93.114.0.93", "93.114.11.136", "92.114.216.80" }

ssl = {
	protocol = "tlsv1_2";
        key = "/etc/prosody/certs/privkey.pem";
        certificate = "/etc/prosody/certs/fullchain.pem";

        dhparam = "/etc/prosody/certs/dh-4096.pem";

        ciphers = "EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:EDH+aRSA:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4:!SEED:!AES128:!CAMELLIA128";

        options = { "no_sslv2", "no_sslv3", "no_ticket", "no_compression", "cipher_server_preference", "single_dh_use", "single_ecdh_use" }

}

contact_info = {
  abuse = { "mailto:abuse@intux.de", "xmpp:intux@intux.de" };
  admin = { "mailto:admin@intux.de", "xmpp:intux@intux.de" };
  feedback = { "mailto:admin@intux.de", "xmpp:intux@intux.de" };
  sales = { "mailto:admin@intux.de", "xmpp:intux@intux.de" };
  security = { "mailto:admin@intux.de", "xmpp:intux@intux.de" };
  support = { "xmpp:admin@intux.de", "xmpp:intux@intux.de" };
}

VirtualHost "intux.de"

Component "proxy.intux.de" "proxy65"

	proxy65_acl = { "intux.de" }

Component "conference.intux.de" "muc"
        name = "intux.de Chatrooms"
        restrict_room_creation = false
        max_history_messages = 500
        modules_enabled = {
                "mam_muc",
		"vcard_muc",
        }
        muc_log_by_default = false

Compliance status for intux.de 100%. 😀

Standort in Flightradar festlegen

28. Januar 2022 um 16:58

Vor einiger Zeit hatte ich schon einmal einen Artikel zum Thema Luftraumüberwachung mit Flightradar24  geschrieben. An der eigentlichen Vorgehensweise der Installation und der einzusetzenden Hardware hat sich nichts gravierend geändert.

Der Befehl zur Installation des entsprechenden Pakets setzt jetzt allerdings SSL voraus.

sudo bash -c "$(wget -O - https://repo-feed.flightradar24.com/install_fr24_rpi.sh)"

Ich habe mich allerdings inzwischen für einen stärkeren Empfänger der Firma Nooelec mit RTL2832U/R820T2-Chip entschieden, was ein wenig mehr Reichweite bringt.

Standort sichtbar machen

Heute möchte ich zeigen, wie man auf der lokalen Karte den Standort der Station als Punkt markiert und Radien im Abstand von 50 NM um die Station einzeichnet (siehe Screenshot).

lokale Darstellung der empfangenen Flugzeuge

Hierfür ist es nötig die Konfigurationsdatei /etc/dump1090-mutability/config.js entsprechend anzupassen. Dazu werden die Einträge wie folgt geändert:

alte Konfiguration

// -- Map settings ----------------------------------------
...
// Default center of the map.
DefaultCenterLat = 45.0;
DefaultCenterLon = 9.0;
...
SiteShow = false; // true to show a center marker
SiteLat = 45.0; // position of the marker
SiteLon = 9.0;
SiteName = "My Radar Site"; // tooltip of the marker
...
// -- Marker settings -------------------------------------
...
SiteCircles = true; // true to show circles (only shown if the center marker is shown)
// In nautical miles or km (depending settings value 'Metric')
SiteCirclesDistances = new Array(100,150,200);
...

Unter DefaultCenterLat und DefaultCenterLon trägt man nun die Koordinaten der Empfangsstation ein, um die Karte bei Aufruf auf den entsprechenden Standort zu zentrieren. Die gleiche Vorgehensweise erfolgt unter SiteShow. Hierbei muss die Vorgabe jedoch noch von false auf true geändert werden. Die Radien legt man unter SiteCircles fest. In meinem Fall 50, 100 und 150 NM.

neue Konfiguration

// -- Map settings ----------------------------------------
...
// Default center of the map.
DefaultCenterLat = 51.44871;
DefaultCenterLon = 11.98762;
...
SiteShow = true; // true to show a center marker
SiteLat = 51.44871; // position of the marker
SiteLon = 11.98762;
SiteName = "My Radar Site"; // tooltip of the marker
...
// -- Marker settings -------------------------------------
...
SiteCircles = true; // true to show circles (only shown if the center marker is shown)
// In nautical miles or km (depending settings value 'Metric')
SiteCirclesDistances = new Array(50,100,150);
...

Viel Spaß!

VirtualBox auf Ubuntu 20.04

12. März 2022 um 15:38

Im folgenden Artikel möchte ich zeigen, wie man VirtualBox 6.1 von Oracle auf einem Ubuntu 20.04 LTS installiert.

VirtualBox ist eine leistungsstarke Virtualisierungssoftware, welche es erlaubt, Betriebssysteme wie BSD, MacOS, Linux und Windows zu installieren. So kann man z.B. auf einem Linux-System ein Windows nach erfolgreicher Installation in der VirtualBox wie ein separates Programm ausführen.

VirtualBox 6.1

Paketquelle hinzufügen

Zuerst wird der Signatur-Schlüssel herunter geladen.

wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -

Danach fügt man die Paketquelle hinzu.

echo "deb [arch=amd64] http://download.virtualbox.org/virtualbox/debian focal contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list

Installation

Jetzt werden die Paketquellen aktualisiert und das System auf den aktuellen Stand gebracht.

sudo apt update && sudo apt upgrade -y

Ist dies erledigt, wird die VirtualBox in Version 6.1 installiert.

sudo apt install virtualbox-6.1

Falls SecureBoot aktiviert ist, muss ein Passwort mit 8-16 Zeichen vergeben werden. Nach dem Neustart des Systems kann über die Abfrage des Module Service Status der VirtualBox geprüft werden, ob das System korrekt arbeitet.

sudo systemctl status vboxdrv

Hier sollten keine Fehlermeldungen zu lesen sein. Falls es nicht wie im angehängten Screenshot aussieht, sollte man sich näher mit dem UEFI des PCs oder Notebooks auseinandersetzen. Führt das zu keiner Lösung, kann ein störungsfreier Betrieb i.d.R. durch die Deaktivierung des SecureBoot herbeigeführt werden. Das geschieht natürlich auf eigene Gefahr!

Virtual Linux kernel module

Viel Spaß!

Linux Mint 20 – Praxiswissen für Ein- und Umsteiger

12. April 2022 um 04:00

Das Buch „Linux Mint 20 – Praxiswissen für Ein- und Umsteiger von Christoph Troche ist in der 1. Auflage 2020 im mitp-Verlag erschienen. Es umfasst 160 Seiten und ist genau das Nachschlagewerk auf das Ein- und Umsteiger gewartet haben, die sich für Linux Mint entschieden haben bzw. entscheiden werden. Diesem Buch liegt eine DVD-ROM mit dem besprochenen Betriebssystem bei.

Es handelt sich mittlerweile um das dritte Buch von Christoph Troche, welches ich bislang gelesen habe. Auch dieses Mal bin ich vom Inhalt begeistert. Es wird i.d.R. kurz und knapp alles Wichtige erklärt und zum Teil an Beispielen beschrieben; ein Praxisbuch, wie es der Autor selbst bezeichnet.

Einleitend werden Begrifflichkeiten und Unterschiede zu den diversen Mint-Versionen erläutert. Es werden Tipps gegeben, welche Version für welches System die geeignetere Variante bietet.

Wer keine Möglichkeit hat, die beigelegte DVD zu nutzen, aber gleich die derzeit aktuelle Version 20.3 installieren möchte, dem wird gezeigt, wo sich diese frei beziehen bzw. downloaden lässt. Ist dies geschehen erstellt man sich hier einen Live-Stick mit dem aktuellen Linux Mint. So hat man nun die Möglichkeit diese erst einmal ausgiebig (ohne Installation) zu testen. Natürlich kann diese auch gleich auf dem PC oder Notebook installiert werden.

Das Buch beantwortet u.a. wichtige Fragen, wie man sinnvoll die HDD oder SSD partitioniert, welches Dateisystem einzusetzen ist oder welche Größe der SWAP-Partition gewählt werden sollte.

Nach der Einrichtung des Systems geht der Autor dann auf die Bedürfnisse des Anwenders ein und zeigt bildhaft, wie der Desktop mit seinen vielen Einstellmöglichkeiten angepasst werden kann.

Ein tolles Kapitel ist: „Linux-Alternativen bekannter Windows-Programme“. Hier bekommt der Mint-Neuling genau die Fragen beantwortet, die ihn ganz am Anfang beschäftigen. Und zwar, wenn dieser bisher ein spezielles Windows-Programm nutzt, welche Alternativen es hierfür für Linux gibt. Es werden entsprechende Programme vorgestellt. Weiterhin werden Möglichkeiten aufgezeigt, wie man die eine oder andere Windows-Anwendung mit einem Emulator auf dem Linux-System installieren kann. Wer jedoch nicht ganz auf das Betriebssystem aus Redmond verzichten mag, dem werden hier Lösungen angeboten, z.B. ein Dualboot einzurichten oder die Verwendung des bisherigen Betriebssystems in einer virtuellen Maschine.

Das letzte Kapitel geht dann auf eines der wichtigsten Themen ein, die Sicherheit. Es wird erläutert, was Linux anders macht bzw. von bekannten Betriebssystemen abhebt. Linux ist aufgrund seines Aufbaus weniger angreifbar. Auch das Thema Datensicherung und Datenwiederherstellung wird anhand der bordeigenen Mittel ausreichend im Buch besprochen.

Das Buch gliedert sich in folgende Kapitel:

  • Linux Mint herunterladen und ein Startmedium erstellen
  • Die Installation
  • Linux Mint einrichten
  • Was finde ich wo? Der Desktop
  • Windows-Programme mit Linux nutzen
  • Linux-Alternativen bekannter Windows-Programme
  • Linux Mint in der Gruppe
  • Safety first – Sicherheit im System
  • Der Linux-Verzeichnisbaum – Eine etwas andere Logik

Besonderheiten

  • CD – Linux Mint 20 + eBook

Leseproben und Downloads

Fazit

„Linux Mint 20 – Praxiswissen für Ein- und Umsteiger“ ist ein empfehlenswertes Buch für Ein- und Umsteiger, welche sich auf das Abenteuer Linux Mint einlassen. Der Leser merkt sofort, dass Christoph Troche nicht nur über Linux Mint schreibt, sondern dieses OS tatsächlich einsetzt.

Besonders hervorzuheben sind die dargestellten Alternativen zu bekannten Windows-Anwendungen. Dies wird dem interessierten Nutzer den finalen Umstieg erleichtern.

Ganz zum Schluss kommt bekanntlich das Beste! In diesem Fall erhält der Leser ein Geschenk des Verlags, das Exemplar „Linux Mint 20 – Praxiswissen für Ein- und Umsteiger“ als eBook.

Auszeichnung: Beste Webseiten 2022

11. August 2022 um 16:12

Kaufberater.io bewertet intux.de als eine der besten Webseiten 2022.

Auswahlverfahren

Dem Team von Kaufberater.io geht es um großartige Inhalte. Deshalb haben wir eine mehrstufige Untersuchung von Websites in verschiedenen Kategorien durchgeführt. Das Ergebnis: Die besten Websites werden mit unserem Qualitätssiegel „Top Webseite 2022“ ausgezeichnet.

Sie haben 35/40 in unsererem großen Webseiten-Vergleich gesammelt und qualifizieren sich damit für unsere Auszeichnung „Beste Webseite 2022“ (mind. 30 / 40 Punkte erforderlich).

Schritt 1: Identifizierung der Kandidaten

Zunächst wurde eine Liste mit allen Websites erstellt. Die Daten stammen aus verschiedenen Datenquellen wie Online-Verzeichnissen und CMS-Systemen (WordPress, Blogspot usw.). Zeitungen, Fachzeitschriften, Portale und ausländische Websites wurden aus der Liste der Kandidaten aussortiert.

Schritt 2: Relevanz

Von den übrigen Websites wurden alle Websites entfernt, die weniger als 5 Beiträge pro Jahr veröffentlichten. Darüber hinaus wurden Websites mit sehr geringem monatlichem Datenverkehr aussortiert.

Schritt 3: Detaillierte Recherche

Die übrigen Websites wurden von Kaufberater.io-Experten anhand objektiver und subjektiver Kriterien geprüft. Der Forschungskatalog enthielt Merkmale in 4 Kategorien. Anhand eines Punktesystems wurden dann die Gewinner der Umfrage ermittelt.

Die Bewertungskriterien

Die Auszeichnung basiert auf einer Bewertung in vier Bereichen:

  • UX / Benutzerfreundlichkeit
  • Vertrauen und Sicherheit
  • Informationsgehalt & Forschung
  • Dienstleistungen & Kommunikation

UX / Benutzerfreundlichkeit

  • Wie hochwertig ist das Layout und die Seitenstruktur?
  • Wie funktionell ist die Programmierung der Website?
  • Wie praktisch ist die Suchfunktion? Gibt es einen automatischen Abschluss?

Vertrauen und Sicherheit

  • Werden personenbezogene Daten nur erhoben, verarbeitet, genutzt und an Dritte weitergegeben, soweit dies gesetzlich zulässig ist oder der Nutzer seine Einwilligung gegeben hat?
  • Werden Informationen über die Verwendung personenbezogener Daten in verständlicher und leicht zugänglicher Form bereitgestellt?
  • Gibt es Informationen zur Datensicherheit (z.B. SSL)
  • Wie vertrauenswürdig ist die Website?
  • Ist ein Ausdruck und eine Datenschutzerklärung vorhanden und wenn ja, sind diese auf der Homepage verlinkt?

Informationsgehalt & Recherche

  • Wie gründlich werden die Stellen recherchiert?
  • Werden die Artikel durch visuelle Elemente (Bilder, Grafiken, Videos) unterstützt?
  • Wird der Inhalt professionell wiedergegeben?
  • Wer betreibt die Website?
  • Wie lange ist die Website bereits in Betrieb?
  • Wie beliebt ist die Website?

Dienstleistungen & Kommunikation

  • Kommuniziert die Website mit ihren Lesern (z. B. in Kommentaren)?
  • Bietet die Website weitere Dienstleistungen an (z. B. E-Books / Online-Kurse)?
  • Verfügt die Website über Social-Media-Kanäle?
  • Wie viele Follower hat die Website auf den verschiedenen Plattformen?

Erfahrungen mit Ubuntu 22.04

09. Oktober 2022 um 12:05

In letzter Zeit ist es recht ruhig auf intux.de geworden. Der Grund hierfür liegt aber nicht an einer Müdigkeit zur Thematik Open Source und Freie Software. Vielmehr gab es in der letzten Zeit keine wirklichen Probleme, Betriebssysteme, Software oder Dienste, welche auf meinen Servern laufen, zu fixen.

Heute möchte ich aber die Gelegenheit nutzen, um etwas zur langzeitunterstützten Version Ubuntu 22.04 LTS Jammy Jellyfish auf meinen Rechnern zu erzählen.

Wie die meisten Leser sicherlich wissen, wurde Ubuntu 22.04 am 21. April 2022 veröffentlicht und wird ab diesem Zeitpunkt für 5 Jahre mit Aktualisierungen und Fehlerkorrekturen unterstützt.

Ubuntu auf dem Desktop-PC

Auf meinem Experimentier-Desktop Gigabyte Brix GB-BACE-3160 arbeite ich immer mal wieder mit anderen Betriebssystemen. Vor allem werden hier Systeme und Software getestet, die in unserer Community oft Thema sind. In letzter Zeit war das u.a. Ubuntu 20.04 LTS Focal Fossa. Nachdem aber die Version Jammy Jellyfish veröffentlicht wurde, fiel das Augenmerk auf die neue Ubuntu-Version. Natürlich habe ich gleich das Upgrade auf die neue LTS am PC angestoßen. Erwartungsgemäß lief hier alles vom ersten Tag an perfekt. Warum? In der Regel ist es so, dass neue Ubuntu-Versionen mit älterer Hardware besser zurecht kommen als mit neuerer. Nötige Gerätetreiber sind im Kernel meist bereits schon implementiert.

Ubuntu auf dem Notebook

Anders sah es hingegen auf meinem DELL XPS 13 9310 aus. Hier hatte ich nach einer kompletten Datensicherung auch das Upgrade gewagt. Leider lief aber auf dem XPS nicht wirklich alles wie gewünscht. Das lag daran, dass mein Notebook über eine relativ aktuelle Hardware verfügt. Hier waren noch nicht alle Neuerungen in den Kernel eingeflossen. Einiges lief sehr hakelig. Das zeigte sich besonders bei der Nutzung der Webcam über Cheese. Andere Anwendungen hingegen konnten erst gar nicht gestartet werden, wie der Dell Linux Assistant. Der Grund lag in diesem Fall aber woanders. Im Hause DELL hat man sich sicher erst relativ spät den hauseigenen Paketquellen gewidmet. Der Kontakt beim DELL-Support gestaltete sich schwierig und wenig zielführend, da sich während meiner Anfragen ein Windows-Admin meines Problems annahm. Besonders ärgerlich fand ich das, da ich das Notebook zu diesem Zeitpunkt vor weniger als einem halben Jahr als Developer-Version mit vorinstalliertem Ubuntu gekauft hatte. Also beschloss ich das System wieder downzugraden und auf das erste Point Release 22.04.1 zu warten, um es dann noch einmal zu versuchen.

Nach Veröffentlichung dieses ersten Point Releases kam dann tatsächlich Bewegung in die Sache. Die Webcam unter der Anwendung Cheese arbeitet nun bei entsprechenden Lichtverhältnissen wie gewünscht und startet nicht wir zuvor ständig im IR-Modus.

Webcam mit Cheese

Auch beim hauseigenen Dell Linux Assistant passierte vor einigen Tagen etwas, sodass ich diesen für Ubuntu 22.04 nun installieren konnte.

Dell Linux Assistant
Dell Linux Assistant

Hiermit verbindet sich auch meine Hoffnung, dass mein XPS 13 doch noch für Ubuntu 22.04 LTS zertifiziert wird. Das neuere XPS 13 Plus ist es bereits.

Der erste Eindruck

Die neue langzeitunterstützte Version 22.04 gefällt mir vom ersten Tag an sehr gut. Sie ist mit Sicherheit nicht wirklich spektakulär, verfügt aber über einige Features auf die ich nicht mehr verzichten möchte. Die Desktopumgebung GNOME 42.4 lässt sich gut anpassen und macht dem Nutzer so die Arbeit am Gerät deutlich angenehmer.

System

Was ich persönlich sehr ansprechend finde, sind die änderbaren Akzentfarben sowie die Möglichkeit die Startleiste unten am Desktop schwebend zu platzieren. Das verleiht dem Betriebssystem einen schicken und modernen Anstrich.

Ubuntu 22.04 GNOME-Desktop

Nicht so performant lief es hingegen auf beiden Rechnern mit dem Display-Server Wayland, sodass ich wieder zu Xorg wechselte.

Meine hauptsächlichen Anwendungen wie LibreOffice, Thunderbird, Gimp, Inkscape, VirtualBox und VNC machen keinerlei Probleme, wie auch sonst das gesamte Betriebssystem.

Kritik

Natürlich muss ich auch etwas Kritik an der Version 22.04 üben. Ich finde es, genau wie die Community sehr schade, dass Anwendungen wie der Standard-Browser Firefox nur noch als Snap-Paket zur Verfügung stehen.

Nach einiger Zeit der Nutzung bin ich noch auf eine weitere Eigenheit der LTS-Version gestoßen. Beim Upgrade via CLI kommt es hier und da zu dem Phänomen, dass Pakete zurückgehalten werden.

Zurückgehaltene Pakete

Ursprünglich konnte ein

sudo apt update && sudo apt dist-upgrade

solche Konflikte lösen. In diesem Fall aber nicht. Nach einiger Recherche bin ich darauf gestoßen, dass es sich hierbei um PhasedUpdates handelt. Pakete werden inkrementell ausgeliefert. Hier heißt es also warten, bis diese freigegeben sind. Wer die Upgrades grafisch ausführt, wird diesen Umstand übrigens gar nicht erst bemerken.

Fazit

Nach einem halben Jahr der produktiven Nutzung von Ubuntu 22.04 bin ich tatsächlich sehr zufrieden. Ältere Hardware ist, wie zuvor beschrieben, im Vorteil. Auf neueren Systemen kann es noch etwas hakeln, doch mit jeder neuen Kernel Version sollte das Betriebssystem nach und nach flüssiger laufen.

Abschließend kann man aber sagen: Den Nutzer erwartet ein schnelles und stabiles Betriebssystem mit einem frischen und zeitgemäßen Design.

XMPP und Co.

24. Oktober 2022 um 02:43

Ende 2016 habe ich das Experiment vServer begonnen. Mein Anspruch war, so viel wie möglich für mich selbst zu hosten, wie Webseiten, Mailserver, eine eigene Cloud, aber auch Kommunikationsdienste wie Mastodon und einen XMPP-Server.

Dieses Experiment neigt sich nun dem Ende zu.

Aus gegebenem Anlass möchte ich informieren, dass es wenig Sinn macht einen neuen XMPP-Account anzulegen. Weiterhin möchte ich den Usern raten, die noch einen Zugang auf intux.de besitzen, auf einen anderen Server umzuziehen, da ich meinen XMPP-Server zeitnah abschalten werde!

Ubuntu aktualisieren

09. November 2022 um 05:30

Ein Linux-System verhält sich heute nicht mehr so wie vor über 15 Jahren. Man kann nahezu alles grafisch auf modernen linuxoiden Systemen durchführen. Die Hürde für Ein- und Umsteiger liegt so sehr niedrig. Zum Glück!

Oft ist man aber am Terminal schneller und effizienter als im Umgang mit der grafischen Benutzeroberfläche. So verhält es sich auch mit den Aktualisierungen des OS. Hier verwende ich i.d.R. nur einen Befehl, um Aktualisierungen einzuspielen. Das folgende Kommando sucht in der Paketverwaltung APT nach Aktualisierungen, spielt diese ein und aktualisiert zudem noch installierte snap-Pakete.

sudo apt update && sudo apt upgrade && sudo snap refresh

Um das System anschließend noch zu bereinigen und nicht mehr benötigte Abhängigkeiten zu entfernen, führt man im Anschluss den Befehl

sudo apt autoremove

aus. Ein weiterer nützlicher Befehl löscht alle heruntergeladenen Installationsdateien aus dem Paket-Cache.

sudo apt clean

Wie man sieht, kann man mit drei simplen Kommandos das Betriebssystem schnell auf den aktuellen Stand bringen.

Viel Spaß!

Nextcloud-Upgrade mit Hindernissen

20. November 2022 um 14:34

Gestern bekam ich den Hinweis, dass meine Nextcloud nun bereit für das Upgrade auf Nextcloud 25.0.1 wäre. Ich hatte schon die Vorahnung, es könnte Probleme geben die Version 24.0.7 auf die aktuellste Version anzuheben. Also habe ich mich nicht sofort an die Aktualisierung gewagt.

Das Upgrade über die Weboberfläche

Heute dann konnte ich das Ganze in Ruhe angehen. Ich habe das Upgrade via Webinterface angestoßen, mit dem Ergebnis, dass meine Cloud währenddessen irgendwann nicht mehr zu erreichen war. Es kam natürlich etwas Frust auf, aber ich wusste auch, dass die Chancen gut standen das Upgrade via CLI abzuschließen bzw. neu starten zu können.

Upgrade über das Terminal

Das Upgrade über das Terminal lief dann eigentlich sauber durch. Zum Schluss wurde ich wie gewohnt gefragt, ob der Wartungsmodus wieder deaktiviert werden soll, was ich natürlich bestätigte. Leider befand sich aber die Nextcloud via Web noch immer im Wartungsmodus. Also wechselte ich zurück in Terminal und schaltete den Wartungsmodus noch einmal ein und wieder aus. Das änderte jedoch nichts an der Situation. Die Nextcloud ließ sich so nicht aus dem Wartungsmodus heraus holen.

Nach einem Reboot hingegen, konnte ich mich wieder in meine Cloud einloggen. Hier erhielt ich jedoch folgende Fehlermeldung.

In der Datenbank fehlen einige Indizes. Auf Grund der Tatsache, dass das Hinzufügen von Indizes in großen Tabellen einige Zeit in Anspruch nehmen kann, wurden diese nicht automatisch erzeugt. Durch das Ausführen von „occ db:add-missing-indices“ können die fehlenden Indizes manuell hinzugefügt werden, während die Instanz weiter läuft. Nachdem die Indizes hinzugefügt wurden, sind Anfragen auf die Tabellen normalerweise schneller.

  • Fehlender Index „preferences_app_key“ in der Tabelle „oc_preferences“.

Ein fehlender Index musste noch der Datenbank hinzugefügt werden, damit das System wieder ohne Beanstandungen lief.

Nextcloud 25

Die Lösung

Man wechselt einfach in das Nextcloud-Verzeichnis

cd /var/www/html/nextcloud

und fügt mit folgender Eingabe die fehlenden Indizes hinzu:

sudo -u www-data php occ db:add-missing-indices

Am Ende wurden alle Überprüfungen bestanden und mich erwartete die neue Nextcloud-Version 25 auf die ich mich schon gefreut hatte.  

Überprüfungen bestanden

ddclient für ALL-INKL.COM konfigurieren

25. November 2022 um 19:00

Mit dem Umzug meiner Webseite und meiner Domains zum Hoster all-inkl.com war es nötig die DynDNS meines Home-Servers anzupassen. Auf diesem nutze ich zum Abgleich, der sich ständig ändernden öffentlichen IP-Adressen, das Tool ddclient. Die neue Konfiguration muss in der Datei /etc/ddclient.conf entsprechend gespeichert werden.

Das für all-inkl.com angelegte Konfigurationsfile für ddclient sieht hierfür wie folgt aus:

# Configuration file for ddclient generated by debconf
#
# /etc/ddclient.conf
daemon=5m
protocol=dyndns2
use=web, web=checkip.dyndns.org/
server=dyndns.kasserver.com/
login=dyn0000000, password='passwort'
dyndns.example.de
ssl=no

In dieser Config sind die beim Hoster hinterlegten DynDNS-Daten (Login, Passwort, Host Name) zu ersetzen.

Lokale Google Fonts in WordPress

06. Dezember 2022 um 17:30

In letzter Zeit rollt wieder eine Abmahnwelle übers Land, die den ein oder anderen Betreiber eigener kleiner WordPress-Seiten kalt erwischen dürfte. Dieses Mal ist der Stein des Anstoßes die mögliche Einbinung von Google Fonts. Nicht, dass die Verwendung dieser Schriftarten nicht erlaubt wäre. Nein, es geht darum, dass diese Schriftarten von Google beim Aufruf der Seite i.d.R. erst heruntergeladen werden und es hierbei zu einem Austausch von IP-Adressen kommt, was kritisch bewertet wird.

Ob die eigene Webseite nun tatsächlich Google Fonts verwendet, welche temporär herunter geladen werden, kann man hier checken: https://www.e-recht24.de/google-fonts-scanner

Lösung

Abhilfe schafft hier das Plugin Local Google Fonts. Dieses aktiviert man und setzt das Häkchen „Schriften automatisch laden“ (siehe Grafik). Danach besucht man die eigene Seite und klickt sich durch die Inhalte. Die entdeckten Google-Schriftarten werden nun lokal auf die Webseite geladen. Der Besucher bekommt diese dann nun direkt von der Webseite ausgeliefert und tauscht somit keine IP-Adressen mit Dritten (Google) aus.

Einstellungen – Local Google Fonts

Chemnitzer Linux-Tage 2023

05. Dezember 2022 um 15:30

Unter dem Motto „Bewusst sein“ finden am 11. und 12. März 2023 endlich wieder die Chemnitzer Linux-Tage statt. Nach zwei Jahren als Online-Veranstaltung ist die Freude riesengroß, die CLT wieder im Hörsaalgebäude der Technischen Universität Chemnitz abhalten zu können.

Auch 2023 haben sich die Chemnitzer Linux-Tage einen Platz an einem März-Wochenende gesucht. Also Kalender gezückt und den 11. und 12. März 2023 dick einkreisen! Es lohnt sich bestimmt.

Wir wünschen uns sehr, euch vor Ort wiederzusehen und hoffen, dass die Lage im März es zulässt, dass wir Linux- und Open-Source-Freunde Anfang 2023 nach Chemnitz einladen können. Aktuell planen wir für eine Präsenzveranstaltung iN gewohnter Umgebung. Über unsere Pressemitteilungen, Sozialen-Median und Themenseite könnt ihr euch diesbezüglich auf dem Laufenden halten.

PHP 8.2 auf Raspberry Pi OS

28. Dezember 2022 um 14:23

Wer einen Raspberry Pi zu Hause als Webserver betreibt, wird sicher schon bemerkt haben, dass die Skriptsprache PHP 7.4 nur noch bis zum 28.11.2022 mit Security-Updates versorgt wurde. Das heißt konkret, PHP 7.4 ist End of Live (EOL). Das ist natürlich unschön, da die nächste Version des Raspberry Pi OS der Raspberry Pi Foundation auf Basis von Debian GNU/Linux 12 wahrscheinlich erst im Sommer 2023 veröffentlicht wird.

Quelle: https://www.php.net/supported-versions.php

Was kann man nun tun?

Eine Möglichkeit wäre zu warten und zu hoffen, dass Sicherheitslücken, die sich noch auftun, nicht auf dem Home-Server für Einbrüche sorgen. Eine andere und weitaus sicherere Alternative ist, das Raspberry Pi OS mit der aktuellen PHP-Version 8.2 zu versorgen.

Es folgt eine kleine Anleitung.

Installation

Zuerst lädt man den Key für die neu einzubindende Paketquelle herunter.

sudo wget -qO /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Danach wird diese ins System eingetragen.

sudo echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list

Nun liest man die neue Quelle ein und führt das Upgrade durch.

sudo apt update && sudo apt upgrade -y

Ein abschließender Check zeigt die neue PHP-Version im Terminal.

php -v

Viel Spaß!

Nachtrag für Nextcloud-User

Nextcloud 25 ist leider noch nicht kompatibel mit PHP 8.2. Dies ist aber ab Version 26 vorgesehen.

Fingerprint auf XPS 13 unter Ubuntu 22.04

30. Dezember 2022 um 09:23

Seit letztem Jahr bin ich im Besitz eines XPS 13 9310. Dieses Gerät hatte ich in der Developer-Edition mit Ubuntu 20.04 erworben. Nach einem knappen haben Jahr wurde jedoch die aktuelle Long Term Support Version Ubuntu 22.04 veröffentlicht, für die das Gerät leider seitens Canonical noch keine Zertifizierung erhalten hat. Trotzdem war es mir wichtig die neue LTS produktiv auf diesem Gerät einzusetzen. Im Artikel „Erfahrungen mit Ubuntu 22.04“ habe ich darüber ausführlich berichtet.

Eine Quelle für Version 20.04 zu OEM-Erweiterungen war allerdings bis jetzt noch eingebunden. Fast alle Pakete wurden jedoch mit dem neuen OEM-Kernel obsolet, sodass ich diese aus der Paketverwaltung deaktivieren konnte. Ein Feature, auf welches ich ungern verzichtet hätte und welches als einziges nicht mehr zur Verfügung stand, war die Nutzung des Fingerabdrucksensors zur Anmeldung.

Das benötigte Paket konnte ich nun manuell heruntergeladen und einbinden.

Installation

Das Paket libfprint-2-tod1-goodix_0.0.4-0ubuntu1somerville1_amd64.deb wurde aus den Quellen von Canonical geladen

wget http://dell.archive.canonical.com/updates/pool/public/libf/libfprint-2-tod1-goodix/libfprint-2-tod1-goodix_0.0.4-0ubuntu1somerville1_amd64.deb

und im Anschluss installiert.

sudo dpkg -i libfprint-2-tod1-goodix_0.0.4-0ubuntu1somerville1_amd64.deb

Fehlende Abhängigkeiten mussten noch mit

sudo apt install -f

aufgelöst werden.

In der Benutzerverwaltung können nun wieder Fingerprints zur Anmeldung auf dem XPS hinterlegt werden.

Fingerabdrucksensor in der Benutzerverwaltung

PHP7.4-fpm auf PHP8.1-fpm für Nextcloud

08. Januar 2023 um 17:00

Einige Leser haben eine Nextcloud nach meinen Anleitungen und Vorgaben auf einem Raspberry Pi installiert, um ihre Daten nicht in fremde Hände zu geben, sondern diese in den eigenen vier Wänden zwischenzuspeichern. Seit Ende November verhangenen Jahres besteht hier jedoch ein Sicherheitsrisiko, da PHP 7.4 nicht mehr mit Sicherheits-Updates versorgt wird. Im Artikel „PHP 8.2 auf Raspberry Pi OS“ hatte ich bereits darauf hingewiesen.

Quelle: https://www.php.net/supported-versions.php

Da sich PHP 8.2 nicht mit der aktuellen Version Nextcloud 25 verträgt, möchte ich heute zeigen, wie man PHP7.4-fpm mit PHP8.1-fpm ersetzen kann. Dabei gehe ich auch noch auf die spezifische Konfiguration der Nextcloud auf dem Raspberry Pi ein.

Installation

Zuerst wird der Key für die neu einzubindende Paketquelle heruntergeladen.

sudo wget -qO /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Danach wird diese in das System eingebunden.

sudo echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list

Es erfolgt ein Upgrade.

sudo apt update && sudo apt upgrade -y

Ein erster Check zeigt die neue PHP-Version.

php -v

Hier wird im Moment noch PHP 8.2 ausgegeben. Um jedoch auf PHP 8.1 downzugraden, lädt man die entsprechenden Pakete nach.

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

Mit folgendem Befehl muss nun die Version 8.1 manuell als aktuelle Version gesetzt werden.

sudo update-alternatives --config php

in meinem Fall ist das die Option 3.

php -v

Ein erneuter Check zeigt die gesetzte PHP-Version.

Nun wird PHP7.4-fpm deaktiviert, PHP8.1-fpm heruntergeladen und aktiviert.

sudo a2disconf php7.4-fpm
sudo apt install php8.1-fpm
sudo a2enconf php8.1-fpm

Ein nachfolgender Restart des Webservers führt die Änderungen abschließend aus.

sudo service apache2 restart

Nextcloud-Konfiguration

Jetzt muss die Nextcloud noch an die neue PHP-Version angepasst werden, um alle internen Checks zu bestehen. Dazu öffnet man die neue php.ini

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

setzt das memory_limit hoch auf 512MB

memory_limit = 512M

und fügt folgende Einträge am Ende für den Zwischenspeicher OPchache ein.

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

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

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

folgende Einträge angepasst.

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

Ein Restart des Dienstes aktiviert diese anschließend.

sudo service php8.1-fpm restart

Jetzt wird in der apcu.ini

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

noch am Ende diese Zeile eingetragen

apc.enable_cli=1

und abschließend der Webserver ein letztes Mal neu gestartet.

sudo service apache2 restart

Fazit

Mit ein wenig zeitlichem Aufwand lässt sich die eigene Cloud seitens der Skriptsprache wieder absichern. Auf das neue Release von Raspberry Pi OS zu warten, welches wieder eine mit Sicherheitspatches unterstützte PHP-Version mitbringt, wäre nicht ratsam.

Betriebssysteme im Vergleich: Windows, MacOS und Linux

19. Februar 2023 um 08:00

Betriebssysteme sind das Herzstück jedes Computers. Sie fungieren als Vermittler zwischen Hardware und Software, ermöglichen den Zugang zu Anwendungen und sorgen für die effiziente Nutzung der Systemressourcen. Die drei am häufigsten verwendeten Betriebssysteme sind Windows, MacOS und Linux. Jedes dieser Systeme hat seine eigenen Stärken und Schwächen, die es für bestimmte Anwendungsbereiche besser oder schlechter geeignet machen. Bevor man sich für ein Betriebssystem entscheidet, sollten man sich über die Bedürfnisse im Klaren sein und sicherstellen, dass das ausgewählte System den eigenen Anforderungen gerecht wird.

Windows

Windows ist das weitverbreitetste Betriebssystem für Personalcomputer, darunter Windows 10. Es bietet eine benutzerfreundliche Oberfläche, zahlreiche integrierte Anwendungen und eine große Community, die bei Problemen unterstützt. Die bekanntesten Funktionen sind der Windows Explorer für Dateiverwaltung und der Internet Explorer für das Surfen im Internet. Darüber hinaus gibt es auch viele Anwendungen aus Microsoft Office Suite. Einer der größten Vorteile von Windows ist seine Verfügbarkeit und Kompatibilität mit einer großen Anzahl von Hardware- und Softwarekomponenten. Es ist auch einfach zu bedienen und hat eine große Community, die bei Problemen unterstützt. Ein Nachteil ist jedoch, dass es anfälliger für Viren und Malware ist als andere Betriebssysteme. Es ist auch weniger anpassbar und bietet weniger Freiheit bei der Konfiguration.

MacOS

MacOS ist das Betriebssystem für Apple-Computer wie MacBooks und iMacs. Es ist bekannt für seine intuitive Benutzeroberfläche und die Integration mit anderen Apple-Produkten. Einige der bekanntesten Funktionen sind der Spotlight-Suchindex und der Safari-Webbrowser. MacOS bietet auch eine große Auswahl an kreativen Anwendungen wie Final Cut Pro und Logic Pro X. Einer der Vorteile von MacOS ist seine Stabilität und Sicherheit. Es ist weniger anfällig für Viren und Malware als Windows und bietet eine große Auswahl an kreativen Anwendungen. Ein Nachteil ist jedoch, dass es weniger kompatibel mit anderen Geräten und Softwarekomponenten ist als Windows. Es ist auch teurer als andere Betriebssysteme und hat eine geringere Auswahl an Spiele und Anwendungen.

Linux

Linux ist ein freies und offenes Betriebssystem, das auf einer großen Anzahl von Geräten eingesetzt wird, einschließlich Servern, Desktops, Laptops und Mobilgeräten. Es bietet eine Vielzahl von Distributionen, die jede für unterschiedliche Anwendungen und Benutzer optimiert sind. Einige der bekanntesten Funktionen sind die Terminal-Kommandozeile und die Gnome-Oberfläche. Einer der Vorteile von Linux ist seine Anpassbarkeit und Freiheit bei der Konfiguration. Es ist auch stabiler und sicherer als andere Betriebssysteme und hat eine große Community, die bei Problemen hilft.

Wahl des richtigen Betriebssystems

Es gibt viele verschiedene Betriebssysteme zur Auswahl, aber welches ist das Richtige für die eigenen individuellen Bedürfnisse? Während Windows eine große Nutzerbasis und breite Anwendbarkeit hat, bietet MacOS eine intuitive Benutzeroberfläche und Integration mit Apple-Geräten. Linux ist bekannt für seine Anpassbarkeit und Open-Source-Natur. Die Wahl des richtigen Betriebssystems hängt von den eigenen, spezifischen Anforderungen ab. Ein Designer könnte beispielsweise MacOS bevorzugen, weil es eine leistungsstarke Suite von Kreativwerkzeugen bietet, während ein Entwickler Linux bevorzugen könnten, weil es eine Vielzahl von Programmierwerkzeugen und Ressourcen bereitstellt.

 

Docker und Docker-Compose auf dem RaspberryPi

03. März 2023 um 16:00

Heute möchte ich zeigen, wie man Docker und Docker-Compose auf dem RaspberryPi installiert, um WordPress als Testumgebung im heimischen Netzwerk zu betreiben. Docker-Container haben durchaus einen gewissen Reiz, wenn man nicht allzu intensiv in die Auswahl und Konfiguration von Server-Anwendungen eintauchen möchte. Man muss jedoch ein gewisses Vertrauen gegenüber des Maintainers mitbringen.

Eine gute Basis, um Docker auf einem Raspberry Pi laufen zu lassen, bietet das Raspberry Pi OS Lite (64-bit). Dieses ist schnell mit dem Raspberry Pi Imager auf die MicroSD geflasht.

Installation Docker und Docker-Compose

Nach dem ersten Start des Betriebssystems führt man nun ein komplettes Upgrade durch. Dies sollte man tun, um alle Pakete auf dem neuesten Stand zu bringen, damit es keine Probleme während der Installation gibt und alle Anwendungen richtig miteinander arbeiten.

sudo apt update && sudo apt upgrade

Raspberry Pi 4

Nach dem Upgrade installiert man Docker.

curl -fsSL test.docker.com -o get-docker.sh && sh get-docker.sh

Nun muss der aktuelle User der Gruppe Docker hinzugefügt werden, i.d.R. ist das der User pi. In meinem Fall ist es der Benutzer intux.

sudo usermod -aG docker ${USER}

Ein erster Test checkt, ob dies funktioniert.

groups ${USER}

Nun wird der Raspberry Pi neu gebootet, damit die Installation und die Konfiguration umgesetzt werden kann.

sudo reboot now

Im nächsten Schritt wird Python 3 mit den entsprechenden Abhängigkeiten eingespielt.

sudo apt install libffi-dev libssl-dev python3-dev python3 python3-pip

Jetzt kann Docker-Compose aufgesetzt werden.

sudo pip3 install docker-compose

Der Dienst Docker wird aktiviert

sudo systemctl enable docker

und mit dem Image hello-world kann getestet werden, ob Docker läuft.

docker run hello-world

Installation WordPress

Nun erstellt man das Verzeichnis wordpress

mkdir wordpress

und wechselt dort hinein.

cd wordpress

Mit dem Editor Nano wird nun eine docker-compose.yml erstellt

nano docker-compose.yml

und mit folgendem Inhalt befüllt.

version: '3.6'

services:
  wordpress:
    image: wordpress:5.7.2
    ports:
      - 80:80
    environment:
      - "WORDPRESS_DB_USER=root"
      - "WORDPRESS_DB_PASSWORD=vFvpKjJ7HUbkD3wyLDp4"
    restart: always
    dns: 8.8.8.8
    volumes: 
      - /srv/wordpress:/var/www/html

  mysql:
    image: jsurf/rpi-mariadb
    volumes:
    - /srv/wordpress-mysql:/var/lib/mysql
    environment:
    - "MYSQL_ROOT_PASSWORD=vFvpKjJ7HUbkD3wyLDp4"
    - "MYSQL_DATABASE=wordpress"
    restart: always

  phpmyadmin:
    image: phpmyadmin:apache
    environment:
     - PMA_ARBITRARY=1
    restart: always
    ports:
     - 9999:80
    volumes:
     - /sessions

Zum Schluss wird das Image geladen und die Container gestartet.

docker-compose up -d

Die fertige WordPress-Installation ist nun über die IP (http://IP-Adresse) des Raspberry Pi erreichbar. Die Einrichtung von WordPress erfolgt über das Webinterface.

Viel Spaß beim Nachbauen!

Internetgeschwindigkeit mit dem Raspberry Pi messen

08. März 2023 um 19:15

Über mein Smartphone führe ich hin und wieder einen Speedtest durch, um die Geschwindigkeit meines Internetanschlusses zu ermitteln. Wie das Ganze aber via Terminal unter Linux auf dem Raspberr Pi geht, erkläre ich im folgenden kurzen Artikel.

Speedtest via command-line interface

Ein Test über den RasPi macht bei mir zu Hause Sinn, da dieser fest über ein LAN-Kabel mit dem Router verbunden ist. Derartige Messungen über eine Direktverbindung sind genauer als Messungen über WiFi. Drahlose Prüfungen mit einem mobilen Endgerät wie Smartphone oder Tablet sind hingegen immer verlustbehaftet.

Die Internetgeschwindigkeit lässt sich mit einem Raspberry Pi relativ einfach über die Konsole ermitteln. Große Programmpakete werden hierfür nicht benötigt.

Installation

Zuerst wird das Paket speedtest-cli installiert.

sudo apt install speedtest-cli

Speedtest durchführen

Wenn das Package eingespielt ist, reicht die Eingabe des folgenden Befehls:

speedtest-cli

Hierbei wird der Test über den nächsten Server ausgeführt. Ist man mit dem Resultat nicht zufrieden, kann ein anderer Server angesteuert werden. Dazu lässt man sich die 10 nächsten Standorte anzeigen.

speedtest-cli --list

Retrieving speedtest.net configuration...
53128) WOBCOM GmbH (Wolfsburg, Germany) [132.61 km]
49459) FNOH-DSL (Uetze, Germany) [163.37 km]
47786) WebseitenDesigner.com (Hannover, Germany) [183.20 km]
45664) WEMACOM Telekommunikation GmbH (Schwerin, Germany) [242.14 km]
 8827) Marco Bungalski GmbH (Verden, Germany) [246.12 km]
45822) WEMACOM Telekommunikation GmbH (Hamburg, Germany) [266.29 km]
53256) LWLcom GmbH (Hamburg, Germany) [267.38 km]
 5733) LWLcom GmbH (Bremen, Germany) [279.95 km]
16596) Bremen Briteline GmbH (Bremen, Germany) [279.95 km]
 4556) TNG Stadtnetz GmbH (Kiel, Germany) [339.23 km]

Der Test über einen anderen Server wird dann mit dem Befehl

speedtest-cli --server 49459

angestoßen. In diesem Fall habe ich mich für den Server FNOH-DSL (Uetze, Germany) entschieden.

Grafische Ausgabe

Möchte man noch eine grafische Ausgabe des Ergebnis, setzt man einfach den entsprechenden Schalter (share) und bekommt am Ende der Ausgabe den Link zum Ergebnis (PNG-Datei).

speedtest-cli --share

Speedtest über OOKLA

Besuch bei den Chemnitzer Linux-Tagen 2023

11. März 2023 um 20:25

Am 11. und 12 März 2023 finden nach dreijähriger Zwangspause endlich wieder die Chemnitzer Linux-Tage an der TU Chemnitz statt. Unter dem Motto „Bewusst sein“ treffen sich zahlreiche Aussteller, Vortragende und Besucher zum Thema Linux und freie Software auf dem Uni-Campus.

TU Chemnitz
Chemnitzer Linux-Tage
Halbleiter von Chemnitz

Ich freute mich riesig dieses Event nach 2019 wieder besuchen zu können, um interessante Leute zu treffen und Gedanken auszutauschen. Am ersten Tag verabredete ich mich mit meinem Mitstreiter Andi alias Waldstepper aus Berlin, um gemeinsam einige Vorträge zu besuchen.

Das Highlight war einmal mehr der lebendige Beitrag „Nachhaltiges Computing mit KNOPPIX“ von Prof. Dipl.-Ing. Klaus Knopper. Überlegungen zu CO2-Fußabdrücken des von Knopper entwickelten Betriebssystems sowie Einblicke in das Innenleben dieser Live-Distribution stießen auf reges Interesse.

Vortrag Nachhaltiges Computing mit KNOPPIX

Natürlich konnte ich noch weiteren interessanten Vorträgen lauschen, wie VPN via WireGuard, Programmierung mit Scratch und Ausführungen zur komplexen Thematik Linux-Desktop, wo darüber philosophiert wurde, warum sich das OS bis heute noch nicht im Desktopbereich durchsetzen konnte und was nötig wäre, um ein solches Projekt zu realisieren. Hier gab es natürlich interessante und praxisnahe Ansätze, die zum Nachdenken anregten.

Einige gute Gespräche konnte ich auch an den Ständen von den Ubuntuusers, der FSFE, TUXEDO, Linuxnews, LibreOffice und den CMS Gardeners führen.

Besuch bei den Ubuntuusers
FSFE-Stand

Alles in allem war es heute ein interessanter und informativer Tag an der TU, der morgen seine Fortsetzung findet.

Mumble auf dem Raspberry Pi

24. März 2023 um 18:53

In den Zeiten der Pandemie hatte fast jeder den Drang danach, Kontakte weiter aufrecht zu erhalten und zu pflegen. Die meisten traf das Kontaktverbot völlig unvorbereitet. Das man Videokonferenzen abhalten konnte, war bekannt, aber wer nutzte so etwas schon im Alltag. Viele von uns suchten plötzlich nach Möglichkeiten sich irgendwo online zu treffen. Große Softwarekonzerne ermöglichten einem plötzlich diese Funktionen kostenlos zu nutzen, mit dem Hintergrund spätere Kunden zu gewinnen. Zwar war die Nutzung dieser Dienste kostenlos, jedoch nicht umsonst. Nutzer bezahlten für diese Art der Nothilfe mit ihren Daten.

Da ich schon lange zuvor Open-Source-Lösungen dieser Art wie Nextcloud Talk nutzte, brauchte ich nur die Leute mit denen ich mich nicht treffen konnte, dort hin einzuladen. Für kleine Gesprächsrunden eignete sich meine Nextcloud durchaus. Für eine größere Anzahl von Nutzern war dies jedoch problematisch. Deshalb suchte ich nach einer anderen Lösung.

Perfekt für reine Audio-Treffen war Mumble, welches die ganze Pandemie-Zeit auf einem meiner Server lief. Die Nutzung meines Mumble-Servers verhielt sich aber umgekehrt proportional zur Aufhebung der Kontaktbeschränkung. Reale Treffen waren wieder möglich und man traf sich weniger online. Da ich aber die Technik doch hin und wieder nutzen möchte, habe ich den Versuch gewagt, einen Mumble-Server auf einem Raspberry Pi aufzusetzen. Wie das ganze geht, zeige ich in diesem Artikel.

Installation

Als Server dient ein Raspberry Pi 4 mit 4 GB RAM. Auf diesem wurde ein Raspberry Pi OS mit 64-Bit installiert. Der Mumble-Server wird wie folgt aufgesetzt:

sudo apt install mumble-server

Während der Installation wird abgefragt, ob der Server automatisch starten soll. Diese Frage beantwortet man mit „Ja“. Danach wird abgefragt, ob der Mumble-Server mit einer höheren Priorität zu nutzen ist. Diese Frage habe ich in meinem speziellen Fall mit „Nein“ beantwortet. Danach vergibt man noch ein SuperUser-Passwort und widmet sich dann der erweiterten Konfiguration.

Konfiguration

In der Konfigurationsdatei können nun gewünschte Anpassungen vorgenommen werden, wie z.B. Begrüßungstext, Port etc. Hier habe ich aber nur ein Passwort für die Nutzung meines Server vergeben, um die Kontrolle über den Server zu behalten. Weiterhin kann hier die maximale Anzahl der Besucher festgelegt werden.

sudo nano /etc/mumble-server.ini

Damit der Server jedoch aus dem Internet erreichbar ist, muss der Raspberry Pi mit einer DynDNS verbunden sein. Hier ein Beispiel für den Hoster all-inkl.com. Weiterhin muss der Port im heimischen Router freigegeben werden. Ich nutze den voreingestellten Standard-Port „64738“. Für das Forwarding muss TCP und UDP aktiviert werden.

Portforwarding – 64738

Sind diese Voraussetzungen erfüllt, kann der Mumble-Server gestartet werden.

sudo service mumble-server start

Client

Als Client auf dem PC und Notebook verwende ich Mumble.

❌
❌