Heh, the idea of Twitiverse didn’t age well eh? 4 years later:
Threads implements ActivityPub. X: Hold my beer.
Heh, the idea of Twitiverse didn’t age well eh? 4 years later:
Threads implements ActivityPub. X: Hold my beer.
Once in a while I get a degraded #ZFS pool. Replacing such a disk and starting the resilver process is usually very easy but there are some caveats when it comes to the #rpool of #Proxmox, which is usually the rootfs of the Proxmox system itself. So when a disk dies and gets swapped by a helping hand in the data centre I usually end up with a system that doesn’t boot. Linux really doesn’t like a degraded #raid as rootfs and chances are that it was the new empty disk, that was searched for a bootloader by the BIOS/EFI.
The necessary steps are explained in detail in the “Proxmox VE Administration Guide” under “Changing a failed bootable device” but since I’ll forget this in 10 minutes again I’m writing this up here now so I can find it later via search engines again (this happened!)
So here is the check-list:
sgdisk
can be used to replicate the partition table and to get some new IDs:
sgdisk /dev/oldbutgooddisk_n1 -R /dev/shinynewdisk_n1
sgdisk -G /dev/shinynewdisk_n1
Next is replacing the degraded disk in the pool. This can be done in an easy way or the hard way. Chances are that the pool has to be imported first though so changes can be made. This probably needs the “force” Parameter, because the pool was last mounted from another system:
zpool import -f -d /dev/oldbutgooddisk_n1p3
zpool status
This worked with some luck and now the identifiers used by ZFS can be noted from the NAME column. This info is needed to replace the broken|degraded disk partition with the newly created one.
zpool replace -f rpool oldandbrokendisk_n1p3 /dev/shinynewdisk_n1p3
zpool status
This should now show the new disk, where the old and broken disk used to be, and a resilvering process as state. For some reasons this sometimes fails so there is also a hard way. YMMV:
zpool offline rpool oldandbrokendisk_n1p3
zpool detach rpool oldandbrokendisk_n1p3
zpool status -P rpool
zpool attach rpool /dev/oldbutgooddisk_n1p3 /dev/shinynewdisk_n1p3
zpool status
Are we there yet? No. The bootloader has to be installed on shinynewdisk too and the boot partition has to be mirrored as well (it’s outside of rpool). Luckily Proxmox comes with a neat tool for this so this doesn’t have to be done manually alas it is only available on a Proxmox system and not from a generic rescue system. Time to chroot. With ZFS though (pool has to be imported first – see above!):
mkdir /mnt/rpool
# !! Do not forget to change mountpoint back to "/" later!!
zfs set mountpoint=/mnt/rpool rpool/ROOT/pve-1
mount -t proc proc /mnt/rpool/proc
mount -t sysfs sys /mnt/rpool/sys
mount -o bind /dev /mnt/rpool/dev
mount -o bind /run /mnt/rpool/run
chroot /mnt/rpool
The proxmox-boot-tool
can now be accessed inside the chrooted environment and the bootloader and boot partition can be written with this again but it’s command is depending on whether it’s status reports GRUB or EFI. The boot|EFI partition is number 2 on a default Proxmox install:
proxmox-boot-tool status
proxmox-boot-tool format /dev/shinynewdisk_n1p2
# With GRUB:
proxmox-boot-tool init /dev/shinynewdisk_n1p2 grub
# Without GRUB:
proxmox-boot-tool init /dev/shinynewdisk_n1p2
exit
It may make sense to check the “Proxmox VE Administration Guide” on this when unsure. The important chapter is “Setting up a new partition for use as synced ESP”. Status will also complain about a missing configured partition ID. That’s from the failed disk that was removed. The offending line may be removed from the suggested configuration file but that warning may as well be ignored. blkid
may be used to check on existing IDs.
Are we there yet? NO! The ZFS mountpoint has to be adjusted again, after exiting the chroot environment, or the next boot will fail. For this everything has to be unmounted in reverse order and the pool exported:
zfs set mountpoint=/ rpool/ROOT/pve-1
zpool export -a
Now it’s time for ~~thoughts and prayers~~ a reboot. Good luck future me!
Here is another awesome #FUI example using #arwes https://www.myxouz.com/2021/12/lady-of-shalott-first-version-of-our-home-dashboard/ 👍
A FUI is short for a Futuristic User Interface. ARWES.dev is a JS framework to create such a FUI. Unlike the ones animated and used for cinematic purposes it can be actually used. Like I do this for my Streaming Overlay and going to use it for my #simPit as well.
I love everything about this project right up to it’s name “Lady of Shalott”. The idea to do some sort of extended home automation to query various daily streams is one of the reasons I dig MicroSub and ActivityPub so much and doing something similar for a dashboard crossed my mind already too. This is a topic I’m not doing much on at the moment. I mean I’ve very good ideas what I want here but I’ve already enough projects going at the moment so this is on hold.
Anyway, make sure to take a closer lock on the project. Myxouz offers some (unlisted) YouTube videos as well so you can get an idea of the dashboard in action and also describes the background techniques in use.
If you’re a developer consider going wild with ARWES as well 🙃
Convert your KiCAD board into a nicely looking 2D drawing suitable for pinout diagrams - GitHub - yaqwsx/PcbDraw: Convert your KiCAD board into a nicely looking 2D drawing suitable for pinout diagrams
I’ll be on my own for some weeks so my wife introduced me to the washing machine when she opened a new box. “You bought men detergent?” – “Yes”. All-In-One pre-packed just for me and I don’t know whether to laugh or cry 🤣
Wish me luck 😁
(Yes, I just put the needle there for fun 😜)
Hej @tuxedocomputers@linuxrocks.online , ich hätte da einen Verbesserungsvorschlag 🤓 :
Oj. G changed something on their algorithm. Before when looking for #cats I got cats. Now I get pictures from some musical. This is bad. We all know that kind of meeting that require a constant stream of cat images to keep cool!
Sehr cooler Artikel über das Fediverse als Alternative:
https://write.kabi.tk/~/DenkArt/das-fediverse/
Auch spannend, Plume
scheint eine #ActivityPub Instanz mit #microformats aber ohne #WebMention Support zu sein. Ich bin schon sehr gespannt was da nun passiert @mel@metalhead.club.
Wow, Twitter und ActivityPub? Das wäre ja richtig klasse. Ich kann es mir aber kaum vorstellen. Die müssten dazu ihre kompletten API Nutzungsbedingungen umkrempeln oder am Ende schlichtweg mit keiner anderen Instanz zusammen arbeiten.
Ich bin jedenfalls gespannt was dabei raus kommt.