A BSDun nevű új, kísérleti projekt valami egészen szokatlant próbál adni a Linuxnak: azt a képességet, hogy módosítás nélkül, közvetlenül futtassa a FreeBSD binárisokat Linux rendszeren.
A BSDun egy Linux kernel modul, amely megtanítja a kernel-t felismerni és betölteni a FreeBSD ELF végrehajtható állományokat. Betöltés után ezek a programok a /compat/freebsd alatt elérhető FreeBSD userland ellen futnak, így a Linux újrafordítás nélkül tud FreeBSD eszközöket futtatni.
A projekt saját meghatározása szerint a FreeBSD Linuxulator tükörképe. Míg a Linuxulator lehetővé teszi, hogy FreeBSD rendszerek Linux binárisokat futtassanak, a BSDun az ellenkező irányt valósítja meg: Linux alatt futtat FreeBSD binárisokat.
Műszaki szempontból a BSDun úgy működik, hogy FreeBSD ELF kezelőt regisztrál a Linux bináris formátumláncába. Programindításkor a modul ellenőrzi, hogy az adott fájl FreeBSD bináris-e, az ELF OSABI mező vagy egy FreeBSD ABI note alapján.
Ha nem az, a BSDun félreáll, és a Linux a szokásos módon kezeli a fájlt. Ha igen, a BSDun betölti az ELF képet, előkészít egy FreeBSD-stílusú auxiliary vectort, és a futási környezetet a FreeBSD kompatibilitási gyökérre irányítja át.
Ez a kompatibilitási gyökér alapértelmezés szerint a /compat/freebsd. A projekt arra számít, hogy a felhasználók ide telepítik a FreeBSD alaprendszert, beleértve a FreeBSD dinamikus betöltőjét és a libc-t is.
A projekt README-je szerint a BSDun már most képes valódi FreeBSD binárisokat elejétől a végéig lefuttatni, beleértve a FreeBSD /bin/sh shelljét is. A szerző beszámolója alapján működik a támogatás a statikusan linkelt eszközökre és a dinamikusan linkelt programokra is, a FreeBSD ld-elf.so.1 betöltőjén és olyan könyvtárakon keresztül, mint a libc.so.7 és a libthr.so.3.
A leírás szerint működnek a shell funkciók, a külső parancsok futtatása, a pipeline-ok, az átirányítás, a hálózatkezelés, a DNS feloldás, a FreeBSD pkg csomagkezelője, a ping, a kqueue/kevent, a szálkezelés, a dinamikusan linkelt alaprendszer-eszközök, valamint olyan gyakori parancssori eszközök, mint a sed, awk, grep, find, stat, tail és sok más.
Mindez azonban továbbra is kísérleti munka. A BSDun nem része a Linux kernel főágának, és az átlagfelhasználóknak nem szabad stabil alrendszerként tekinteniük rá. Egy kernel modulra támaszkodik, FreeBSD syscall-fordításra, ELF betöltési logikára, szignálkezelés-fordításra, fájlrendszer-átgyökerezésre, hálózati struktúrák fordítására, valamint több, „best-effort” jellegű kompatibilitási leképezésre a FreeBSD és a Linux ABI-k között.
Fontos megszorítás a security szemantika. A projekt megjegyzi, hogy bizonyos Capsicumhoz kapcsolódó hívásokat sikeres no-opként fogad el, mivel a Linux nem kínálja a FreeBSD Capsicum sandbox modelljét. Emiatt egyes szoftverek ugyan elindulhatnak, de nem pontosan ugyanazzal a security viselkedéssel, mint FreeBSD alatt.
Az ötlet ennek ellenére kifejezetten izgalmas. A „Képes a Linux közvetlenül kiszolgálni egy másik Unix-szerű operációs rendszer bináris interfészét?” kérdésre jelenleg az a válasz, hogy „részben, kísérletileg és meglepően jól”.
A projekt mindössze néhány napos a GitLab oldala szerint: 2026. június 23-án hozták létre, és egyelőre nincs egyetlen címkézett kiadása sem. Mindenképpen figyelni fogjuk, hogyan alakul a jövőben.
További részletekért nézd meg a projekt GitLab oldalát.

