Debian 12.3: data corruption with ext4 and kernel 6.1.64-1

The rollout of Debian 12.3 has been paused due to a data corruption issue in the 6.1.64-1 kernel when using the ext4 filesystem: https://www.debian.org/News/2023/2023120902 For amd64, the affected package is linux-image-6.1.0-14-amd64 as it ships kernel 6.1.64-1. It can be prevented from being installed, by setting the Pin-Priority for this version to -1: $ cat /etc/apt/preferences.d/2023-12-10-kernel-ext4-bug # https://www.debian.org/News/2023/2023120902 Package: linux-image-amd64 Pin: version 6.1.64-1 Pin-Priority: -1 Package: linux-image-rt-amd64 Pin: version 6.1.64-1 Pin-Priority: -1 This can be verified using apt-cache policy: ...

December 10, 2023 · 1 min

Review: Star Labs StarBook Mk VIr2

I recently ordered a StarBook Mk VIr2 from Star Labs : StarBok Mk VIr2 The StarBok Mk VIr2 The StarBok Mk VIr2 has the following specs: 64 GB DDR4 RAM @ 3200 MHz (2×32 GB) i7-1360P @ 2.20 GHz 2 TB Gen4 PCIe SSD 14" display Ubuntu LTS 22.04.02 coreboot (instead of AMI firmware) US keyboard layout In comparison, my daily driver for many years has been a Lenovo ThinkPad T470s with the following specs: ...

November 23, 2023 · 7 min

Fedora: Attempting to burn CD-ROM but keeps ejecting medium

When attempting to burn a CD-ROM using Fedora and Brasero the medium always gets ejected, before anything is written. Apparently, the solution is to set u+s on /usr/bin/wodim: sudo chmod u+s /usr/bin/wodim See https://bugzilla.redhat.com/show_bug.cgi?id=1580021 for reference.

March 4, 2022 · 1 min

Seafile with MariaDB 10.5: Got an error reading communication packets

After upgrading MariaDB to 10.5 Seafile stopped working. journalctl showed errors like the following for mariadb.service: [Warning] Aborted connection 62 to db: 'seafile_ccnet-db' user: 'seafile' host: 'localhost' (Got an error reading communication packets) Further investigation revealed the open files limit to be the root cause: root@server:~# mysql -e "SHOW VARIABLES LIKE 'open_files_limit';" +------------------+-------+ | Variable_name | Value | +------------------+-------+ | open_files_limit | 32768 | +------------------+-------+ To increase the limit the corresponding Systemd unit needs to be overriden using systemctl edit mariadb.service. This creates /etc/systemd/system/mariadb.service.d/override.conf: ...

February 25, 2022 · 1 min

Laravel with MariaDB and GitLab CI/CD: Illuminate\Database\QueryException: SQLSTATE[HY000] [2006] MySQL server has gone away

When running many tests involving the database one might encounter the following issue: Illuminate\Database\QueryException: SQLSTATE[HY000] [2006] MySQL server has gone away The issue occurred reliably and always at the same test. Temporarily deleting test classes just made another test triggering the issue. When debugging locally it turns out that the maximum connection limit of MariaDB is the root cause. By default MariaDB comes with a connection limit of 100 connections. Laravel however does not use persistent connections by default and therefore consumes a lot of connections when running tests. ...

January 9, 2022 · 1 min

Debian Buster: Enable TTY inside KVM guests

When spinning up a new Debian VM using KVM virsh console <vm> does not work. The VM needs a running TTY for this: systemctl enable serial-getty@ttyS0.service systemctl start serial-getty@ttyS0.service

January 12, 2020 · 1 min

A year in 4 minutes: Timelapse with 10k pictures

This post describes how I shot a timelapse of an entire year consisting of nearly 10,000 pictures. The Setup The timelapse was shot with a Raspberry Pi 3 Model B and the camera module v2 . The Pi was installed inside so there was no need to protect it against the weather. To better mount it to the wall the Pi was put inside a case . The benefits of having the Pi mounted inside are also stable Wi-Fi access and a more or less stable power supply (more on that later). ...

August 28, 2018 · 5 min

GitLab Runner on Uberspace

23.09.2017: Updated instructions for 10.0.x release of GitLab Runner. This post describes how to setup gitlab-runner on an Uberspace using the shell executor. Download gitlab-runner-linux-amd64 Download the Runner binary into the ~/bin directory and make it executable: $ mkdir ~/bin $ cd ~/bin $ wget https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64 $ chmod +x gitlab-runner-linux-amd64 Create a working directory for the Runner: $ mkdir ~/gitlab-ci Get configuration details for the Runner In your GitLab project navigate to Settings > CI/CD Pipelines. Find the URL for the runner setup and the registration token as shown in the picture below: ...

June 15, 2017 · 3 min

Chrome 56: Install and use Extensions

Starting with Chrome 56 on Debian you might end up having no Extensions. To re-enable them again you have to start Chrome with --enable-remote-extensions To make this a default add this flag to the default flags in /etc/chromium.d/default-flags: # Enable extensions export CHROMIUM_FLAGS="$CHROMIUM_FLAGS --enable-remote-extensions" Reference: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=851927

March 1, 2017 · 1 min

Waiting for server to accept SSH connections

Sometimes you need to wait for a just booted server to accept SSH connections. This can be solved with a one-line bash script: until nc -w 10 -z $SERVER_IP 22; do echo "SSH not available" && sleep 5; done

October 22, 2016 · 1 min