Skip to main content

4 posts tagged with "Linux"

View All Tags

↗ Building Linux eBPF/XDP Applications on macOS with Colima, Docker, Clang, and Go

· 17 min read
Yevgeniy Goncharov
Maintainer of OpenBLD.net

Building Linux eBPF/XDP Applications on macOS

eBPF and XDP are increasingly used for network traffic filtering, observability, abuse protection, and performing extremely cheap packet inspections before traffic reaches the regular Linux networking stack.

There is one practical problem, though: if your primary workstation is a Mac — especially an Apple Silicon Mac — you cannot build and test Linux eBPF programs exactly the same way you build a normal Go application.

For a reproducible build environment, we need:

  • Go
  • Clang and LLVM
  • Linux headers
  • libbpf headers
  • bpf2go
  • Docker
  • a Linux runtime provided by Colima

↗ systemd-run in Practice - Scheduling, Sandboxing, cgroups, and Automation

· 7 min read
Yevgeniy Goncharov
Maintainer of OpenBLD.net

systemd-run in Practice

When you need to run a one-off task in the background or schedule a maintenance script for later, the usual tools that come to mind are nohup, screen, at, or cron.

But if your servers already use systemd, you also have access to a much more powerful tool: systemd-run.

It creates transient units — temporary services and timers that do not require permanent .service or .timer files.

With transient units, you can get proper process supervision, journald logging, cgroup resource limits, sandboxing, scheduling, and status tracking without adding permanent systemd configuration.

Let’s look at a few practical use cases.