Zvažuji přechod z Linuxu na FreeBSD

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #75 kdy: 08. 04. 2025, 10:53:16 »
pfSense 2.8.0 CE založený na FreeBSD 15-CURRENT vydaný pred 6 dňami.  :D
https://docs.netgate.com/pfsense/en/latest/releases/2-8-0.html

No, leda kulový... https://www.pfsense.org/download/


Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #76 kdy: 08. 04. 2025, 13:17:06 »
pfSense 2.8.0 CE založený na FreeBSD 15-CURRENT vydaný pred 6 dňami.  :D
https://docs.netgate.com/pfsense/en/latest/releases/2-8-0.html

No, leda kulový... https://www.pfsense.org/download/

No je to v systémovém update na beta kanálu, jsou tam buildy možná obden. Dělal jsem si jen rychlý test, asi bych to jen tak nedoporučil vzhledem k aktuálnímu stavu. Třeba se teď stává, že na konci toho in-place upgrade (nad kterým je úplně minimální kontrola) naběhne nový kernel a nevidí žádné virtio ani e1000 emulované síťovky ani virtio disky :)
Dá se z toho dostat jen tak, že se nabootujete starý, zálohovaný kernel.old s novým userlandem. Takže to sice emituje spoustu hezkých hlášek, ale aspoň se dostanete ze smyčky rebootů a můžete se tam třeba přihlásit. Někteří jiní odvážlivci mají podle všeho zas vcelku pravidelné kernel panicy i když jim to naběhne se všemi drivery (např. na Netgate krabičkách).
Dál jsem to nezkoumal, ale přide mi to spíš jako alfa než beta. Stejně jako nechápu, proč nepoužívají na updaty bootenv, když je to na ZFS rootu.

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #77 kdy: 08. 04. 2025, 15:10:08 »
Dělal jsem si jen rychlý test, asi bych to jen tak nedoporučil vzhledem k aktuálnímu stavu.

Já si nemůžu pomoct, ale provozovat něco na -CURRENT verzi FreeBSD nesvědčí o přílišné příčetnosti vývojářů. Jinak samozřejmě ten obrovský odliv testerů po tom, co předvedli s Plus variantou kdysi dostupnou pro "lab" nasazení zdarma je logicky vidět. Fakt to jde hodně z kopce.

proč nepoužívají na updaty bootenv, když je to na ZFS rootu.

Protože ty jsou pouze v placené verzi.  ::)

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #78 kdy: 08. 04. 2025, 15:12:51 »
Vůbec ten vývojový model je úplně postavený na hlavu - polomrtvá komunitní verze a testujeme na platících zákaznících.  ::) 

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #79 kdy: 08. 04. 2025, 22:16:17 »
Já si nemůžu pomoct, ale provozovat něco na -CURRENT verzi FreeBSD nesvědčí o přílišné příčetnosti vývojářů. Jinak samozřejmě ten obrovský odliv testerů po tom, co předvedli s Plus variantou kdysi dostupnou pro "lab" nasazení zdarma je logicky vidět. Fakt to jde hodně z kopce.

Taky to na mě trochu působí, i přesně po tom už zmíněném cirkusu s kernelovým Wireguard driverem, který upstreamovali.

Na -STABLE byla, myslím, založená poslední větev CE 2.6.x tři roky zpátky, komerční verze podobně. A taky by mi asi přišlo logičtější udržet se toho a případně backportovat z -CURRENT jen nějaké zásadní fíčury. Ale samozřejmě neznám jejich přesnou motivaci k tomuhle kroku, ani jestli mají nějaké své vývojáře, co by se tím případně mohli zabývat.

Citace
proč nepoužívají na updaty bootenv, když je to na ZFS rootu.
Protože ty jsou pouze v placené verzi.  ::)

Aha díky, toho jsem si nevšiml.. ;) Jako chápu, že chtějí prodávat předplatné a škatule, na druhou stranu mi to přijde trochu zvrácené, zvlášť při testování v téhle formě.

Jinak, už jsem teď dohledal, co tam v té nové větvi 2.8.x je vlastně za potíž. Ty virtio věci i e1000 z QEMU chodí, ale z nějakého důvodu vše jen v legacy PCI (ne express) variantách.
Tzn. musel jsem v libvirt předělat testovací virtuál na model s čipsetem i440FX místo Q35, model síťovky z e1000e přehodit na e1000, nastavit pci bus na 0x00 atd. Pak už se to chytlo.

Já to mám naštěstí víceméně na své blbnutí.


Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #80 kdy: 09. 04. 2025, 08:18:23 »
Já to mám naštěstí víceméně na své blbnutí.

Nojo, na blbnutí asi dobrý, ale např. ta komerční varianta je v testovacích virtuálech naprosto nepoužitelná, protože přidání/odebrání síťového rozhraní (nebo třeba výměna síťové karty) zlikviduje registraci (licenci) - viz např. 1, 2.

Už to "řeší" léta zcela bezvýsledně, a mám dojem, že o žádné řešení ve skutečnosti nestojí. Takovouhle pitomost u routeru, to vymyslela opravdu velká mozkovna.  ::)


Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #81 kdy: 09. 04. 2025, 08:36:56 »
jejich přesnou motivaci k tomuhle kroku, ani jestli mají nějaké své vývojáře, co by se tím případně mohli zabývat.

Nějaké oficiální bláboly k motivaci jsou zde. Ono to leccos vypovídá (i) o (již zde diskutovaném) vývoji FreeBSD jako takovém. Na jednu stranu backporty opravy zatažených chyb se nějak moc nekonají, na druhou pak někomu lupne v kouli a pod záminkou "zranitelnosti" rozdrbe funkční věc několik verzí FreeBSD zpět.

Citace
avoid more complex and larger volumes of work any time pfSense software should change to a newer FreeBSD base.

No, co k tomu říct - ve výsledku to je rozbité tak nějak průběžně a permanentně, protože jinak by s tím bylo moc práce, hmmm... tohle asi fakt není nic pro mě a produkční nasazení kdekoliv. Ale jinak "přínosem" (a celkem si troufnu říct, že hlavním motivem) je to, že jiné projekty založené na FreeBSD (především OPNsense) s tím mají práci navíc, protože si ty backporty do -RELEASE verzí musejí dělat sami.

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #82 kdy: 09. 04. 2025, 11:02:39 »
Nějaké oficiální bláboly k motivaci jsou zde. Ono to leccos vypovídá (i) o (již zde diskutovaném) vývoji FreeBSD jako takovém. Na jednu stranu backporty opravy zatažených chyb se nějak moc nekonají, na druhou pak někomu lupne v kouli a pod záminkou "zranitelnosti" rozdrbe funkční věc několik verzí FreeBSD zpět.

Citace
avoid more complex and larger volumes of work any time pfSense software should change to a newer FreeBSD base.

No, co k tomu říct - ve výsledku to je rozbité tak nějak průběžně a permanentně, protože jinak by s tím bylo moc práce, hmmm... tohle asi fakt není nic pro mě a produkční nasazení kdekoliv. Ale jinak "přínosem" (a celkem si troufnu říct, že hlavním motivem) je to, že jiné projekty založené na FreeBSD (především OPNsense) s tím mají práci navíc, protože si ty backporty do -RELEASE verzí musejí dělat sami.

Jo, super, díky za další info a odkaz na bláboly :)
OPNsense jsem konkrétně nezkoušel, možná se na to také někdy podívám.
Upřímně, mnoho let zpátky jsem tyhle brány dělal víceméně na standardních počítačích s FreeBSD nebo OpenBSD jen se svými skripty, i když možná na některých místech byl PCEngines a léta páně i m0n0wall  8)
Šlo víceméně o to, co jsem tu někde zmiňoval i třeba s TrueNASem vs standardním systémem. Po tom, co jsem řešil třeba pro kamarády x NASů, kde se jim něco podělalo při upgradech TrueNASu a různých migracích, nebo nutnost viset někde na fórech a řešit, co tam nakonec v těch releasech od speciálních distribucí změní nebo ne. Tak jsem si řekl, že to pro mě nemá moc řešit. Pro relativně jednoduché setupy (pár služeb a uživatelů) klidně obětuji web UI s grafíky, práva budu klidně dál nastavovat přes setfacl, nastavím si ručně mailové notifikace atp., ale budu mít relativní klid a predikovatelné upgrady.
A tam, kde chtěli klikat v nějakém SOHO setupu a používat kontejnery, už je Synology.
Stran těch bran/firewallů jsou to v poslední době pak spíš hotová komerční řešení založená na Linuxu nebo OpenWRT.

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #83 kdy: 09. 04. 2025, 12:02:11 »
Tak teď jsem narazil na roky starý bug v instalaci FreeBSD, který myslím stále není opraven.

...

Jde o to, že pokud instaluji na raid1 (klidně na ZFS), tak se mi UEFI boot loader nainstaluje jen na jeden disk ze dvou.
Pokud by tak odešel disk, na kterém je nainstalovalný bootloader, já kvůli tomu nenabootuji.
...

Boot z RAIDu a řešení chcíplého disku je obecně bohužel nedořešená potíž i na drtivé většině systémů. Proto jsem už tu už párkrát také zmiňoval, že na kritické systémy mám pořád rád na systém nějaký základní HW RAID řadič nebo VROC od Intelu (bohužel na to je potřeba minimálně server s Xeon Silver a vyššími). Není to jen o správné synchronizaci oddílů, ale i o tom, jak se systém a EFI firmware chová s vadným nebo částečně uhnilým zařízením, než se zavede systém. Pokud to má být blbuvzdorné a třeba ve vzdálené lokaci, tak je řadič pořád výhoda. Při výskytu kritické chyby na disku ho řadič vykopne, používá jen ten párový a špatný kousek už nemá šanci zastavit následný reboot.

Nicméně k tomu vašemu poznatku, ano ty synchronizace je to potřeba řešit manuálně a to i na většině Linuxových systémů.

Já to na FreeBSD NASech a serverech dělal tak, že jsem si udělal skript, co se pouští po updatu sytému.
Jestliže je to standardně nainstalovaný systém přes bsdinstall, kde zvolíte mirror, tak se udělají EFI oddíly s GPT labelem efiboot0 a efiboot1 (dá se případně měnit přes příkaz glabel). U systému s legacy BIOSem je to pak gptboot0 a gptboot1 a samozřejmě pokud máte těch disků v mirrou víc tak i další sekvenčně číslované labely.
Ty jsou pak standardně dostupné v /dev/gpt/efiboot0 atp.

Žádný s těch EFI oddílů nemusí být připojený pro normální fungování systému. Je to nutné připojit pouze pro freebsd-update.
Tzn. pokud chcete, aby se to nezastavilo, když je oddíl nedostupný (odejde první disk), přidejte do fstabu volbu "failok" (to je podobné jako nofail na Linuxu). Teoreticky by se dalo dát i noauto  a připojovat ručně před upgradem (ale muselo by se ověřit, jestli nějaký upgrade skript neočekává po prvním bootu nového kernelu, já myslím, že ne a je to potřeba jen před rebootem pro instalaci nového bootloaderu).

A k té synchronizaci.. v podstatě stačí zkontrolovat, že je pro sichr odpojený /boot/efi, kdyžtak ho odpojit. Následně pak porovnat oddíly a případně překopírovat celý EFI oddíl přes dd.. např.

if [ ! cmp -s /dev/gpt/efiboot0 /dev/gpt/efiboot1 ]; then
  dd if=/dev/gpt/efiboot0 of=/dev/gpt/efiboot1 bs=1M conv=fsync
fi

Je určitě víc způsobů, jak to udělat - porovnávat md5 hashe, mit následnou kontrolu atp.
Jak si to zapracujete do systému nějakých updatů je pak samozřejmě individuální.
Já mám v periodic (man periodic) obvykle nastavené, že systém denně kontrolují dostupné aktualizace systému a posílá e-mail, když jsou k dispozici. Následně je to stejně manuální spuštění freebsd-update.. v nějakém vhodném čase. Takže skript (který tedy u mě typicky řeší i další věci) není problém. Samozřejmě kdybych těch serverů měl třeba 65, tak to nějak automatizuji.

Další věc pro ty EFI systémy, je otestování, že to opravdu bude nabíhat i s chybějícím prvním diskem.
Záleží pak na konkrétní desce, serveru. Buď má explicitně vytvořené záznamy s odkazem na disk a EFI zavaděč v EFI bootovací tabulce s nějakou prioritou (instalátor bsd vytvoří takový záznam pro první disk), nebo jsou tam typicky také implicitně všechny přístupné disky s ESP oddílem, kde to sáhne po souboru /efi/boot/bootx64.efi (v tomhle případě kopie /efi/freebsd/loader.efi).
Ale na ty implicitní položky a jejich prioritu se nedá někdy úplně spoléhat (některé EFI firmwary to dokonce můžou mít zakázané volbou).
Doporučuji prohlédnout to přes: efibootmgr -v včetně bootovacího pořadí.
To se pak dá případně změnit (volba -o) a případně vytvořit nový explicitní záznam pod tím primárním.
« Poslední změna: 09. 04. 2025, 12:08:31 od Michal Šmucr »

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #84 kdy: 09. 04. 2025, 12:09:05 »
Omyl, pardon.

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #85 kdy: 10. 04. 2025, 17:57:24 »
Nejdřív jsem chtěl navrhnout Gentoo, protože to vypadalo, že OP se líbí BSD přístup k distribuci. Po přečtení dvou stránek je zřejmé, že problém je jinde.

„Ono je to rozbité a nejde zjistit proč, ono to nefunguje a já nevím proč, ono je to saturované, a nemám páru proč…“ ¯\_(ツ)_/¯

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #86 kdy: 11. 04. 2025, 10:23:51 »
Nejdřív jsem chtěl navrhnout Gentoo, protože to vypadalo, že OP se líbí BSD přístup k distribuci. Po přečtení dvou stránek je zřejmé, že problém je jinde.

„Ono je to rozbité a nejde zjistit proč, ono to nefunguje a já nevím proč, ono je to saturované, a nemám páru proč…“ ¯\_(ツ)_/¯

Ono je to ale trochu jinak. To co na starém  OpenVZ Linuxovém jádře s ext4 běží 10 let bez problémů  má ve stejné konfiguraci na debian stable s lxc a ZFS náhlé záhadné potíže.
A opět střih, to stejné na FreeBSD, potíže opět zmizí.

Většina důvodů proč do FreeBSD nechodit jsou jen pomluvy. A ano i do FreeBSD přispívají dnes novodobí patláci co mohou něco celkem bezdůvodně pokazit a ještě to nasadit jako bezpečnostní opravu nebo do stable větve.

FreeBSD není na všechno, ale já nepotřebuji všechno a to co potřebuji to umí dobře. Žádné nové featury jádra nepotřebuji, jen stabilitu a možnost přeložit i novější aplikace.

Vše co potřebuji FreeBSD umí a vše co se liší je podstatně jednodušší než v Linuxu. Instalace, vytváření a konfigurace kontaineru, automatizace práce z kontainerem, balíčkování, rozdělování disku a používání ZFS. Ladění problémů.
Ono není divu, že v menším rybníce se dá lépe orientovat a pro případ, že nepotřebuji větší, to může být prostě lepší.

Jo jinak gentoo působí sympaticky, ale nevím jestli má smysl do něj investovat čas. Moc serverů na tom neběží a pro domácí stroj je kompilace zbytečné sado maso.
« Poslední změna: 11. 04. 2025, 10:28:59 od xsouku04 »

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #87 kdy: 11. 04. 2025, 10:28:04 »

if [ ! cmp -s /dev/gpt/efiboot0 /dev/gpt/efiboot1 ]; then
  dd if=/dev/gpt/efiboot0 of=/dev/gpt/efiboot1 bs=1M conv=fsync
fi
Další věc pro ty EFI systémy, je otestování, že to opravdu bude nabíhat i s chybějícím prvním diskem.
Záleží pak na konkrétní desce, serveru. Buď má explicitně vytvořené záznamy s odkazem na disk a EFI zavaděč v EFI bootovací tabulce s nějakou prioritou (instalátor bsd vytvoří takový záznam pro první disk), nebo jsou tam typicky také implicitně všechny přístupné disky s ESP oddílem, kde to sáhne po souboru /efi/boot/bootx64.efi (v tomhle případě kopie /efi/freebsd/loader.efi).
Ale na ty implicitní položky a jejich prioritu se nedá někdy úplně spoléhat (některé EFI firmwary to dokonce můžou mít zakázané volbou).
Doporučuji prohlédnout to přes: efibootmgr -v včetně bootovacího pořadí.
To se pak dá případně změnit (volba -o) a případně vytvořit nový explicitní záznam pod tím primárním.

Díky za rady. Možnost porovnávat a kopírovat celou particion takto jednoduše by mne nenapdla. Přidat si to do postupu při updatování/upgradování systému zní rozumně.

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #88 kdy: 11. 04. 2025, 12:08:36 »
Díky za rady. Možnost porovnávat a kopírovat celou particion takto jednoduše by mne nenapdla. Přidat si to do postupu při updatování/upgradování systému zní rozumně.

Ano, kopírovat obsah oddílu jde takhle úplně v pohodě a přišlo mi to v dané situaci nejrychlejší.
Taky se ten samotný bootloader reálně neaktualizuje úplně tak často.
Jinak krom samotného efi bootloaderu (/efi/freebsd/loader.efi) tam může být také ještě vedle něj text. soubor loader.env, kde je možné případně změnit nějaké proměnné jako např. rootdev, pokud je pak na jiném disku (nebo ZFS poolu) než ten prvotní zavaděč. Takže když byste tohle chtěl upravovat, je to pak třeba synchronizovat také.

Taky teď koukám na tu podmínku, co jsem v rychlosti napsal, tak by samozřejmě nefungovala, pardon :). Odstraňte si kdyžtak ty hranaté závorky ;)

Re:Zvažuji přechod z Linuxu na FreeBSD
« Odpověď #89 kdy: 11. 04. 2025, 13:37:53 »
Dík funguje. Příkaz proběhl, partition se zkopíovala za cca 2 vteřiny a vyhnul jsem se i formátování.

do /etc/fstab jsem přidal

Kód: [Vybrat]
/dev/gpt/efiboot0               /boot/efi       msdosfs rw,failok               2       2
/dev/gpt/efiboot1               /boot/efi2      msdosfs rw,noauto               2       2


Novou položku v biosu pak vytvořím pomocí
Kód: [Vybrat]
efibootmgr -a -c -l /boot/efi2/EFI/freebsd/loader.efi -L FreeBSD_druhy_disk

V Linuxu, který má úplně stejný problém přidání UEFi záznamu řeším pomocí
Kód: [Vybrat]
efibootmgr --create --disk /dev/nvme1n1p1 --part 1 --label "debian 172e" --loader "\EFI\debian\shimx64.efi"

Ve freeBSD je v manuálová stránka kratší a obsahuje přímo použitelný srozumitelný příklad.

V Linuxu použitelný příklad není a pochopit se to z manuálové stránky moc nedá, člověk musí hledat po internetu a skončí s něčím co je špatně zapamatovatelné a nutí člověka uvádět  v cestě zpětná lomítka jako za času MSDosu a navíc ještě zařízení disku. Je taková typická ukázka toho jak mohou být stejné věci ve FreeBSD jednodušší.

Samozřejmě to není zásadní problém, ale v Linuxu je prostě složitější a méně šikovné vše co se od FreeBSD liší a na co jsem kdy narazil. Možností je sice přehršle, ale jedno z vícero řešení je často obskurně zbytečně složité.