- put i an additional device
- copy partition table
- attach partition to pool
- copy bootloader
- test
- replace old boot disc in pool
TVHeadend Recordings in VLC
Ich verwende inzwischen TVHeadend für die digitalen Aufnahmen. Das Webui braucht eine Anmeldung und wenn ich eine Aufnahme in VLC ansehen möchte klappt das nicht.
Ein Weg wie ich es hinbekomme ist die URL auf die Aufnahme mit den Anmeldedaten in der URL zu erweitern und diese dann als Stream in VLC zu laden.
Füllstand der Gasspeicher in Deutschland
Die meisten werden sich noch an den Winter 2022 / 2023 erinnern. Es herrschte allgemeine Betriebsamkeit bei der Vorbereitung der Energievorräte auf den Winter. Robert Habeck war als Wirtschaftsminister verantwortlich für die Energieversorgung und hat in einem substantiellen Kraftakt dafür gesorgt das genug Gas bevorratet wurde für den Fall das die Gasversorgung aus Russland einbricht.
Aber was weiß dieser grüne Träumer denn von richtigem Energiemanagement. Jetzt haben wir mit der ehemaligen Gasmanagerin Katherina Reiche eine Fachfrau im Amt und die weiß wie man das richtig macht. Wir überlassen die Bevorratung dem Markt.
Den aktuellen Füllstand kann man hier verfolgen. Ich hatte Lust das mal auszuwerten und mit Unterstützung von Chatgpt ein Script gebastelt das mir das mal als Grafik darstellt.
Stand heute liegen wir deutlich unter den Werten der vergangenen Jahre. Hoffentlich wird das ein warmer Winter. Aber wir können ja immer noch LNG kaufen. Das ist im Winter besonders billig. Und wenn der Winter warm wird soll es ja klappen.
Eine SSH CA für Benutzerschlüssel
Es ist ja “Stand der Technik” für die Anmeldung am SSH Server nicht mehr ein Kennwort zu verwenden sondern SSH Schlüssel. Der Grundgedanke ist das der Server den oder die öffentlichen Schlüssel eines Anwenders in einer bestimmte Datei hat. Meldet sich ein Benutzer an wird dieser öffentliche Schlüssel verwendet um kryptografische Magie walten zu lassen.
Das bedeutet das man die öffentlichen Schlüssel auf den Servern verteilen muss. Bei ein paar Servern mit ein paar Anwendenden geht das noch gut mit Automatisierungen wie Ansible.
Irgendwann skaliert das nicht mehr. Eine Möglichkeit ist es die öffentlichen Schlüssel nicht mehr zu verteilen sondern diese öffentlichen Schlüssel von eine CA signieren zu lassen. Der Server vertraut dann den Zertifikaten die mit der bei Ihm hinterlegten CA signiert worden sind.
Ich habe das für mich auf FreeBSD so realisiert. In grösseren Umgebungen muss das anders aufgebaut werden.
Ein dedizierter Notebook dient als CA Server. Wenn ich einen neuen Schlüssel einrichte muss der öffentliche Teil über einen USB Stick auf den Notebook und wird dort signiert. Ein andere Ansatz war zuerst ein Jail dafür zu verwenden. Das Jail mounted einen allgemein zugänglichen Share und in diesen Share werden die Pubkeys zum Unterschreiben gelegt. Da ich noch einen alten X201 hier habe habe ich mich zu dem “offline” Ansatz entschlossen.
User Anmeldungen.
Zuerst wird eine SSH CA für User erstellt. Es wird allgemein empfohlen verschiedene CAs für User und Server zu verwenden.
ssh-keygen -t ed25519 -f ssh_user_ca
Der öffentliche Key muss auf den Servern verteilt werden und mit dem notwendigen Pubkey Algorithmus in die SSHD Konfiguration übernommen werden. Ich mache das bei mir mit Ansible.
vi /etc/ssh/sshd_config
TrustedUserCAKeys /etc/ssh/ssh_user_ca.pub
PubkeyAcceptedAlgorithms ssh-ed25519-cert-v01@openssh.com,ssh-ed25519
sudo service sshd restart
Auf dem Client erstelle ich ein neues Schlüsselpaar. Ich könnte auch ein altes nehmen aber wenn ich schon mal dabei bin …
ssh-keygen -t ed25519 -a 100 -f ~/.ssh/id_hbauer_2026
Den öffentlichen Teil muss ich dann auf meinem “CA Server” signieren.
ssh-keygen \
-s ssh_user_ca \
-I Hagen.Bauer@caserio.de \
-n hbauer \
-V +150w \
id_hbauer_2026.pub
Enter passphrase for "ssh_user_ca":
Signed user key id_hbauer_2026-cert.pub: id "Hagen.Bauer@caserio.de" serial 0 for hbauer valid from 2025-12-23T15:30:00 to 2028-11-21T15:31:47
Man erhält damit eine Dateien namens id_hbauer_2026-cert.pub die man “irgendwie” wieder zurück auf den Client bekommen muss und neben den Pubkey legen sollte. Dann kann man sich mit dem neuen Key an dem Server anmelden ohne vorher den öffentlichen Key bei dem Nutzer in die authorizedkeys eingetragen zu haben.
Später werde ich mir dann man den Prozess der Revocation Liste ansehen.
Frohe Weihnachten
Euch allen wünsche ich ruhige und entspannte Festtage im Kreise der Menschen die Euch am meisten bedeuten.
Adding a disk to single disk zfs boot pool
In this post I would like to document my successful migration from a single disk zfs boot pool to a 2 disc mirror. When migrating my old Truenas system to a vanilly FreeBSD based NAS with jails I had installed the root disk on a single ssd. Last week I had a strange pool error which I had to “recover” from via a power off / power on cycle. Since I migrated from spinning disk to NVME I now have lot of space in my enclosure and I thought it might be a good idea to go from a single disc to a mirror.
The flow
Get current status
#zpool status croot
pool: croot
state: ONLINE
scan: scrub repaired 0B in 00:00:38 with 0 errors on Tue Dec 2 02:00:38 2025
config:
NAME STATE READ WRITE CKSUM
croot ONLINE 0 0 0
ada0p4 ONLINE 0 0 0
#gpart show ada0
=> 40 123091840 ada0 GPT (59G)
40 532480 1 efi (260M)
532520 1024 2 freebsd-boot (512K)
533544 984 - free - (492K)
534528 4194304 3 freebsd-swap (2.0G)
4728832 118362112 4 freebsd-zfs (56G)
123090944 936 - free - (468K)
#gpart show ada1
=> 40 234441568 ada1 GPT (112G)
40 88 - free - (44K)
128 234441480 1 freebsd-zfs (112G)
Copy partition table
#/sbin/gpart backup ada0 | /sbin/gpart restore -F ada1
#gpart show ada1
=> 34 234441581 ada1 GPT (112G)
34 6 - free - (3.0K)
40 532480 1 efi (260M)
532520 1024 2 freebsd-boot (512K)
533544 984 - free - (492K)
534528 4194304 3 freebsd-swap (2.0G)
4728832 118362112 4 freebsd-zfs (56G)
123090944 111350671 - free - (53G)
Verify googled commandline, attached a partition , go for it and monitor status
#zpool attach
missing pool name argument
usage:
attach [-fsw] [-o property=value] <pool> <device> <new-device>
#zpool attach croot ada0p4 ada1p4
#zpool status croot
pool: croot
state: ONLINE
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Sat Dec 20 16:07:03 2025
10.9G / 10.9G scanned, 21.5M / 10.9G issued at 2.15M/s
7.84M resilvered, 0.19% done, no estimated completion time
config:
NAME STATE READ WRITE CKSUM
croot ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
ada0p4 ONLINE 0 0 0
ada1p4 ONLINE 0 0 0 (resilvering)
# zpool status croot
pool: croot
state: ONLINE
scan: resilvered 11.5G in 00:12:40 with 0 errors on Sat Dec 20 16:19:43 2025
config:
NAME STATE READ WRITE CKSUM
croot ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
ada0p4 ONLINE 0 0 0
ada1p4 ONLINE 0 0 0
Copy bootloader
#mkdir /mnt/efi1
#newfs_msdos /dev/ada1p1
#mount -t msdosfs /dev/ada1p1 /mnt/efi1
#mkdir -p /mnt/efi1/EFI/BOOT
#cp /boot/loader.efi /mnt/efi1/EFI/BOOT/BOOTX64.EFI
Unfortunatly the only way to test this is to physically remove the first disk. Make sure that there is no efiboot entry in your /etc/fstab
After this is I replaced the original ada0 since some strange error was the root cause of this exercise.
check status, Copy partition table to the replaced drive, replace drive, monitor status and copy bootloader
#zpool status
pool: croot
state: DEGRADED
status: One or more devices could not be used because the label is missing or
invalid. Sufficient replicas exist for the pool to continue
functioning in a degraded state.
action: Replace the device using 'zpool replace'.
see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-4J
scan: resilvered 3.02M in 00:00:00 with 0 errors on Mon Dec 22 10:44:41 2025
config:
NAME STATE READ WRITE CKSUM
croot DEGRADED 0 0 0
mirror-0 DEGRADED 0 0 0
ada0p4 FAULTED 0 0 0 corrupted data
ada1p4 ONLINE 0 0 0
#/sbin/gpart backup ada1 | /sbin/gpart restore -F ada0
#zpool replace croot ada0p4
#zpool status
pool: croot
state: DEGRADED
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Mon Dec 22 11:01:23 2025
11.0G / 11.0G scanned, 5.12G / 11.0G issued at 138M/s
5.40G resilvered, 46.52% done, 00:00:43 to go
config:
NAME STATE READ WRITE CKSUM
croot DEGRADED 0 0 0
mirror-0 DEGRADED 0 0 0
replacing-0 DEGRADED 0 0 0
ada0p4/old FAULTED 0 0 0 corrupted data
ada0p4 ONLINE 0 0 0 (resilvering)
ada1p4 ONLINE 0 0 0
#zpool status croot
pool: croot
state: ONLINE
scan: resilvered 11.6G in 00:01:34 with 0 errors on Mon Dec 22 11:02:57 2025
config:
NAME STATE READ WRITE CKSUM
croot ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
ada0p4 ONLINE 0 0 0
ada1p4 ONLINE 0 0 0
#mkdir /mnt/efi0
#newfs_msdos /dev/ada0p1
#mount -t msdosfs /dev/ada0p1 /mnt/efi0
#mkdir -p /mnt/efi0/EFI/BOOT
#cp /boot/loader.efi /mnt/efi0/EFI/BOOT/BOOTX64.EFI
Wurzeln und Flügel
Als Jugendlicher war ich begeistetes Mitglied bei den Pfadfindern hier im Ort. Ich began als Jungpfadfinder und habe als Leiter aufgehöhrt.
Viele tolle Erlebnisse und Erfahrungen prägten mich dabei.
Ich fand es also naturgemäß schon sehr schön als meine Tochter sehr früh in die jüngste Stufe in “meinem” Pfadfinderstamm anfing.
Gestern ist sie Leiterin geworden.
Ich würde wirklich lügen wenn ich behaupten würde das würde mich nicht berühren.
Digitale Bilderrahmen
Ich habe es glaube ich schon mal geschrieben aber trotzdem:
Wenn Ihr es Euch leisten könnt kauft euch einen digitalen Bilderrahmen und packt da die schönen Momente der Vergangenheit drauf.
Ihr gebt einmal 50 Euro aus und freut ich dafür die kommenden Jahre mehrmals am Tag. Unbezahlbar
China geht auf Elektro LKWs
Aber China rufen doch immer alle. Ja, China wechselt gerade auf Elektro LKWs
Aber gut, das das in Deutschland nicht geht und wir geschützt sind vor Chinesischen LKWs. ;-)
China is replacing its diesel trucks with electric models faster than expected, [….] By the first half of 2025, battery-powered trucks accounted for 22% of new heavy truck sales, up from 9.2% in the same period in 2024
Updating Matrix Synapse on FreeBSD
For those of you who are wondering how complicate it is to update a synapse server in a jail:
#!/usr/local/bin/bash
zfs snapshot zroot/bastille/jails/matrix/root@2delete-`date +%Y%m%d_%H%M`
bastille cmd matrix pip install --upgrade matrix-synapse
bastille restart matrix
I do not remember a problem for the last year.
(the zfs snapshort part is only necessary if your are old and/or frightened)
Ein Digitalminister mit dem IQ eines Taschenrechners
Wir haben wirklich Pech mit unserem Digitalminister
Zum ersten Mal übertreffen Maschinen den Menschen in dem, was uns bisher einzigartig machte: unsere Intelligenz. Elektrizität hat unsere Wirtschaft verändert. Das Internet hat unsere Gesellschaft verändert. KI verändert das Denken – und erlaubt uns, Probleme zu lösen, die bisher unlösbar schienen.
Herr Minister nur weil sie weniger intelligent als eine Maschine sind trifft das nicht auf die gesammte Menschheit zu. Wenn Sie nur etwas Ahnung von der Materie hätten wüssten Sie das
Nie wieder ist jetzt
Heute Mahnwache in Meckenheim