Miért BSD 2023-ban?

Fórumok

Fiatal vagyok, na. Csak Window-zal és Linux-szal találkoztam komolyabban, egyetlen igaz Unix amihez valaha hozzáértem az egy kis OS X volt 15 éve.

De pl. ügyfél IT csapatának adtam már távsegítséget amikor z/OS-szel bajlódtak és viszket a tenyerem, hogy valami "igazi" Unix-szal játszak.

Olvasgatok (Free|Open)BSD-ről de nem találom azt a killer feature-t ami lét jogosultságot adna nekik a játékon felül.

jails? Visszalépés lenne cgroups v2 után
performance? Linux győz
network? eBPF után?
hardware támogatás? Ugyan
software támogatás? Áh
security? Oké, ha beérem egy nagyon minimal desktop-pal, akkor az OpenBSD bejön, de FreeBSD?
stabilitás? talán

Akinél ezek futnak, mi a rationale?

Hozzászólások

Egyszerűen végiggondoltam. Régebben a stabil és jó dokumentációt mindenképp kiemeltem volna, ma már ez se a régi, minden egyebet pedig helyből elvetett. Mivel a tanulási görbéje szerintem sokkal nagyobb elvetemültséget igényel, mint egy mai segkitörlős Linuxnak, szerintem 2-3 karácsony is kevés lenne hozzá.

OpenBSD-t használtam desktopon egy ideig. Tetszik a minimalizmusa, és igazából mindent tudott ami nekem akkor kellett. Geek, puritán, letisztult, KISS principle, csont unix filozófia. Nekem handybb mint a FreeBSD, NetBSD. De azokkal is rendszeresen játszom.

Szerverként sosem használtam, leszámítva pár játszadozást (NFS, PF, Samba ilyenek). A vmd-t kipróbálnám.

echo crash > /dev/kmem

Van azért az több is...

OpenBSD fuzzer bugok: kb. 120, de ezek között viszonylag kevés a buffer overflow és hasonló, amit konkrétan támadásra ki is lehetne használni
FreeBSD fuzzer bugok: kb. 40, viszont szerintem sokkal súlyosabbak (csak megérzésre, nem néztem mindet egyesével végig)
Linux fuzzer bugok: á, hagyjuk, begörcsölt az ujjam a szkrollozástól (ezek között akad bejelentett is)

Azért azt látni kell, hogy ez nem minden bug, csak amik automatizmus révén kibuktak (szóval nem bejelentettek, így több van, mint CVE, ellenben besorolatlanok. Nem biztos, hogy minden double-free kihasználható támadásra). Az sem látszik egyáltalán ezekből a listákból, hogy ebből mennyi lett már kijavítva, márpedig az is fontos szempont.

Minimális összehasonlításra mégis jó: OpenBSD jobban van megírva, de kevesebben dolgoznak rajta; FreeBSD-t sokkal többen használják, így a hibákat hamarabb javítják, ellenben amit fuzzer talált, azok súlyosabbak. A Linux meg egy nyilvános wc, amibe beleszarik az Microsoft, Apple, Oracle, IBM, Intel, Facebook stb. akiket kurvára nem érdekel, hogy milyen minőségű a kód, csak az számít, hogy a marketingeseik elmondhassák, hogy a Linux támogatja őket, de azért a saját rendszerük a jobb! (Érdemes összeszámolni, ezekből a hibákból mennyi került céges commitok révén a kódba, és mennyi cégfüggetlen, valódi FOSS fejlesztők által.)

Kicsit sarkítva ez a lényeg. Ha nem kell IBM/Red Hat, Poettering, systemd/pipewire, stb. vécé, csak egy minimalista, egyszerű, tradicionálisabb unixos életérzésű rendszer kell, és a hobbi, szakmai kíváncsiság hajt valakit, és van hozzá teljesen kompatibilis gépe/hardvere, akkor éri meg valamelyik BSD. Egyébként érdemesebb a Linuxnál maradni, nagyobb benne a választék, több mindent futtat, több a driver, fs hozzá, azonos hardveren jobb teljesítménnyel fut, stb..

Amondó vagyok, hogy ha a gép támogatja, akkor érdemes vele mindenképp játszani, ismerkedni, már csak arra az esetre is, ha a Linuxszal, Torvalds-zal történne valami. Nagyban segít, ha Linuxon is máris minimalista vagy, szög egyszerű ablakkezelő, terminálos workflow, dobtad a systemd-t, stb.. Nem csak 2023-ban érdemes ilyenkor, hanem 2024-ben is, meg utána is.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Passz. Dragont még sose próbáltam, mindig bennem van, hogy majd egyszer, és ennyiben is maradt eddig. Milyen gépről van szó, fizikai, virtuális, mi a konfigja? Tudtommal a Dragon-nek 64 bites proci kell meg AVX, simán lehet ennek hiányában bootképtelen.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Ezeket a hardver-követelményeket pontosan honnan szedted? A 64-bitet én is megtaláltam a (tetű lassú) oldalukon, de pl. az AVX-ről semmit nem találtam. Mondjuk lehetne egy kicsit összeszedettebb - vagy csak könnyebben megtalálható? - a HW-kompatibilitási listájuk, mert az hogy van egy roppant elavult listájuk arról, hogy valahol valaki milyen gépen próbálta, az azért édeskevés.

(Speciel az itt nagyon szeretett ChatGPT szerint amd64 és SSE2.)

Igazad van, én olvastam félre az AVX csak támogatott, de nem követelmény. Az SSE2 se követelmény, ahogy egy másik topikban esett róla szó, csak véletlen egybeesés, hogy az összes x86_64-es proci van olyan új, hogy az SSE2-őt mindegyik támogatja, de nincs megkövetelve.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Emlékeim szerint a kiadási megjegyzésekben benne volt, szóval azokat kellene végignyálazni. (Ami még felködlik, hogy talán az mkimg parancs okosságán múlott, de annak az épp aktuális manuáljában semmi érdemit nem találtam gyors átfutás után.)

Akkor felsorolok pár dolgot a BSD mellett és Linux ellen:
- évtizedes stabilitás: a BSD-nél nem szokás sűrűn variálni a dolgokat. Ami működött 10-15 éve, az valószínűleg most is pontosan ugyanúgy működik. Igen, ez egyben lassabb fejlődést is jelent, de kiszámíthatóságot is a BSD-sek számára. Nincs "divat faktor".
- licencelés: érdemes megnézni, hogy a BSD hogyan licencelődik egy tetszőleges Linux disztribúcióhoz képest. Üzletileg olykor előnyös a BSD-s megközelítés.
- systemd: nincs és (remélhetőleg) nem is lesz soha BSD-ben.
- klasszikus Unix filozófia és életérzés: a BSD közelebb áll hozzá. A kis Unixok gyakorlatilag kihaltak, sajnos.

A többi érveddel pedig lehetne vitatkozni. Mit is értesz pl: performance alatt.
A security meg erősen kérdéses. Ha pl: az ls-ben találnak egy CVE-t, akkor az a BSD / Linux sebezhetőségéhez sorolod vagy simán 3rd party kategóriába? Legtöbbször egy 3rd party cucc tartalmazza a sebezhetőséget.

Továbbá mihez ért az üzemeltetés, miben van tapasztalata, milyen alkalmazásokat használnak, azok milyen OS-t igényelnek stb. Ezek mind fontos kérdések, hogy BSD vagy Linux. Lehet reszelővel is fát vágni....
Szerintem.

az ls-ben találnak egy CVE-t, akkor az a BSD / Linux sebezhetőségéhez sorolod

Attól függ, melyik ls-ben :) Ha a GNU-s coreutils-ban levőben vagy pl. a FreeBSD alaprendszerében levőben :)

Felhasználói szemmel teljes mértékben egyetértek, én is ilyesmiket írtam volna kb. 10 évnyi felhasználói FreeBSD-s tapasztalattal.

A többi érveddel pedig lehetne vitatkozni.

Nem értek hozzá, így nem vagyok benne biztos, hogy a cgroups és a jail ugyanarra valók (ahogy a cgroups-ra rákerestem).

 Ami működött 10-15 éve, az valószínűleg most is pontosan ugyanúgy működik

Csak az a probléma, hogy BSD-nél ez ma 2025-ben szó szerint igaz. A 15 évvel ezelőtti Linux élményt adja a 15 évvel ezelőtti hiányosságokkal, hiányzó drivertámogatással és járulékos egyebekkel. 

Több értelmét látom akkor már a forráskódalapú Gentoo megismerésének. Az AI és kölcsönös bizalmatlanság korszakában ennek a tudásnak még akár értéke is lehet, amit később megfizetnek. 

“Az ellenség keze betette a lábát”

Nyilván nem mérvadó, de eddig négy különböző gyártmányú laptopon működött kifogástalanul, valamint kettő desktop gépen. Nem a legújabb technológiák, ez igaz, de minden hardver elsőre működött. Nemigen tudom, mire gondolsz ezen kívül a 15 évvel ezelőtti Linux élmény alatt (tehát kb. 2010), de úgy emlékszem, hogy ebben az időben pont az akkori Linux-élményekből* volt elegem, és próbáltam ki a FreeBSD-t (és azóta se bántam meg).

Ha a hiányzó drivertámogatás a fő ellenérv, ez lehetne ellenérv a Linux vs. Windows esetén is.

 

* Lehet, hogy ez inkább Arch-specifikus és mindenféle csillagzat szerencsétlen együttállása volt: akkoriban változott minden, szinte minden frissítésnél kellett valamit kézzel elvégezni, ami néhány alkalommal LiveCD-s javítással végződött (pedig a leírás szerint csináltam). FreeBSD alatt a kb. 12 év alatt ilyennel nem találkoztam.

Modern GPU-k támogatása korlátozott. CUDA, ami nélkül nincs machine learning teljesen hiányzik a BSD világból. 

Realtek és Broadcom wifi támogatás is véleményes sajnos FreeBSD-n. A többi BSD ágon csak rosszabb a helyzet. 

USB perifériák támogatása, ACPI, hibernálás, netán érintőkijelzők szintén nem támogatottak BSD-n. 

Szerver oldalon sem makulátlan már a FreeBSD hírneve. Bhyve már nem egy fejlett virtualizációs megoldás. KVM/QEMU, Docker/Kubernetes ma már egy magasabb ligát képvisel. GPU passtrough sem működik FreeBSD-n. 

HBA kártyák, NIC-ek támogatása is problémás.

Ezzel szemben ugyanez már régen nem áll Linux vs Windows esetében. Sőt machine learningben ma már de facto Linux a standard. Ha Windowson fejlesztesz ML-re kelleni fog a WSL2 Linux. 

“Az ellenség keze betette a lábát”

Egy erős érv bármelyik BSD mellett, hogy nincs bennük systemd. 

Egyébként a Linuxok vagy GNU/Linuxok ugyanannyira unixok mint a BSDk. A Unix tanúsítványt nem magának a Linux kernelnek állítják ki hanem disztribúciónak, és van olyan Linux disztribúció ami megszerezte a Unix tanúsítvány, szóval van olyan Linux ami hivatalos Unix ha annyira számít neked a cert. 

“Az ellenség keze betette a lábát”

Biztos vagy abban, hogy van olyan Linux, amit Unix tanúsítvánnyal rendelkezik? Én nem látom ezen az oldalon:

https://www.opengroup.org/openbrand/register/

"Mert nincs különbség: mindenki vétkezett, és híjával van az Isten dicsőségének. Ezért Isten ingyen igazítja meg őket kegyelméből, miután megváltotta őket a Krisztus Jézus által." (Róma 3.22-24)