Skip to content

Instantly share code, notes, and snippets.

View maurerle's full-sized avatar

Florian Maurer maurerle

View GitHub Profile
@maurerle
maurerle / dyndns_ionos.sh
Last active June 28, 2025 14:47
This gist updates ipv6 and ipv4 address using dyndns for a ionos domain
#!/bin/bash
# === Configuration ===
API_KEY=${1:-"YOUR API KEY"}
INTERFACE=${2:-"eth0"}
IONOS_API_URL="https://ipv4.api.hosting.ionos.com/dns/v1/dyndns"
# === Get global IPv6 address of the interface ===
IPV6_ADDR=$(ip -6 addr show dev "$INTERFACE" scope global | grep -oP '(?<=inet6\s)[0-9a-f:]+(?=/)' | head -n1)
IPV4_ADDR=$(curl -s ipv4.icanhazip.com)
#!/bin/bash
sudo apt-get install build-essential linux-source bc kmod cpio flex libncurses5-dev libelf-dev libssl-dev dwarves bison linux-headers-amd64
tar xavf /usr/src/linux-source-$(uname -r | cut -d. -f1,2).tar.xz
cd linux-source-$(uname -r | cut -d. -f1,2)
# apply patch
wget -O wireguard.patch https://git.zx2c4.com/wireguard-linux/patch/?id=db9ae3b6b43c79b1ba87eea849fd65efa05b4b2e
patch -p1 < wireguard.patch
#rm wireguard.patch
@maurerle
maurerle / gist:a4f1bbdf47d978eef72f6c140f77a4a2
Created June 11, 2025 14:25
NVIDIA DGX A100 nvsm cleanup procedure
When a hardware replacement is completed on a system, use the below procedure to clear existing alerts, and the events that generated the alert from the system.
1. sudo systemctl stop nvsm #stop nvsm services
2. sudo rm /var/lib/nvsm/sqlite/nvsm.db #remove the nvsm alert data base
3. sudo ipmitool sel clear # clear the SEL current logs
4. sudo rm /var/log/bmc_sel_archive_for_BMC_*.log #clear any archived SEL logs that can have the error
5. sudo systemctl start nvsm #start nvsm services
@maurerle
maurerle / backup.sh
Last active May 28, 2025 14:00 — forked from Jipok/backup.sh
Backup HOME with restic, exclude trash, caches and other useless data
#!/usr/bin/env bash
# SET ENV VARIABLES FOR YOUR USE CASE
# export RESTIC_PASSWORD=
# export RESTIC_REPOSITORY=sftp:host:/mnt/folder
# Each element is the exclusion path
excludes=(
"$HOME/.local" # Local configuration and application files
"$HOME/.cache" # Temporary cache files
@maurerle
maurerle / compose.yml
Created April 14, 2025 08:09
OpenWebUi Docker Compose
services:
ollama:
image: ollama/ollama:${OLLAMA_DOCKER_TAG-latest}
container_name: ollama
volumes:
- ./ollama:/root/.ollama
ports:
- "11434:11434/tcp"
restart: unless-stopped
tty: true
@maurerle
maurerle / backup-system.sh
Created October 13, 2024 17:00
backup script which backs up a whole linux installation doing incremental backups using rsync
#!/bin/bash
# backup script which backs up a whole linux installation doing incremental backups using rsync
# Check for root priviliges
if [[ $EUID -ne 0 ]]; then
printf "Please run as root:\nsudo %s\n" "${0}"
exit 1
fi
set -o errexit
@maurerle
maurerle / setup.sh
Last active May 21, 2025 05:57 — forked from giannello/setup.sh
Install fprintd-tod with support for Broadcom readers on Debian testing
#!/usr/bin/env sh
####################################################################
### ____ _____ ____ ___ _ _ _ ___ _ _ _ __ __ ###
### | _ \| ____| __ )_ _| / \ | \ | | / _ \| \ | | | \ \ / / ###
### | | | | _| | _ \| | / _ \ | \| | | | | | \| | | \ V / ###
### | |_| | |___| |_) | | / ___ \| |\ | | |_| | |\ | |___| | ###
### |____/|_____|____/___/_/ \_\_| \_| \___/|_| \_|_____|_| ###
####################################################################
####### _ _ ___ _ _ ____ _ _ _ _ _____ _ _ ########
@maurerle
maurerle / update-bat-hosts.lua
Last active August 24, 2024 00:20
update-bat-hosts - get the list of neighbours from the meshviewer to see in batctlcd
#!/usr/bin/lua
-- SPDX-FileCopyrightText: Florian Maurer
-- SPDX-License-Identifier: MIT
local jsonc = require("jsonc")
local function truncate_hostname(hostname, max_length)
-- If the hostname is already within the maximum length, return it as is
if #hostname <= max_length then
return hostname
@maurerle
maurerle / debug-ssh.txt
Created June 27, 2024 08:17
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
https://unix.stackexchange.com/questions/722954/ssh-stuck-at-expecting-ssh2-msg-kex-ecdh-reply
Somehow I can connect on the second try, but never on the first try after waiting some minutes.
This only happens through the BGP session between the hosts, never when directly accessing the host.
not working:
debug3: kex_choose_conf: will use strict KEX ordering
debug1: kex: algorithm: [email protected]
debug1: kex: host key algorithm: ssh-ed25519
@maurerle
maurerle / zabbix-install.sh
Last active September 2, 2024 06:39
Installation script for Zabbix for Freifunk Aachen
wget https://repo.zabbix.com/zabbix/7.0/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb
dpkg -i zabbix-release_latest+debian12_all.deb
apt update
apt install zabbix-agent2
#apt install zabbix-agent2-plugin-*
#
sed -i 's/Server=127.0.0.1$/Server=127.0.0.1,2001:470:746c:144::ffac:affe:affe,78.47.123.144,2a01:4f8:212:48:b144:ffac:affe:affe,2a01:4f8:191:13c8:b144:ffac:affe:affe/' /etc/zabbix/zabbix_agent2.conf