A FreeBSD 13.0 kiadás

Két és fél évvel a 12.x ág létrehozása után megjelent a FreeBSD 13.0, amely az amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 és riscv64 architektúrákra készült. Továbbá képek készültek a virtualizációs rendszerekhez (QCOW2, VHD, VMDK, raw) és az Amazon EC2, Google Compute Engine és Vagrant felhő környezetekhez.

Főbb újítások:

  • Átálltak a Linux alapján készült ZFS fájlrendszer egységesített megoldására, amelyet az OpenZFS projekt valósított meg. A FreeBSD OpenZFS-ra való átállása után elérhető lehetőségek között szerepel a kiterjesztett kvóta rendszer, az adatállományok titkosítása, a blokkallokációs osztályok különválasztása, a RAIDZ gyorsítása vektoros processzor utasítások használatával, a ZSTD tömörítési algoritmus támogatása, a multihost üzemmód (MMP, Multi Modifier Protection), a fejlettebb parancssori eszközkészlet, valamint számos, versenyállapotokkal és zárolásokkal kapcsolatos hiba javítása.
  • Az ARM64 (AArch64) architektúrájú port átkerült az első szintű támogatásra (Tier 1), amely a sebezhetőségek megszüntetéséért, a kiadások előkészítéséért és a portok karbantartásáért felelős csapatok által kerül támogatásra. Az első szintű támogatás magában foglalja az telepítőcsomagok, bináris frissítések és kész csomagok elkészítését, valamint garanciát vállal a specifikus problémák megoldására és az ABI (Application Binary Interface) változatlanságának megőrzésére a felhasználói környezet és a kernel között (kivéve néhány alrendszert).
  • Az i386 architektúra átkerült a második szintű platform támogatásra (Tier 2), amely során folytatódni fog a telepítőcsomagok, bináris frissítések és kész csomagok előállítása, de nem garantálja a specifikus problémák megoldását. Az i386 architektúrához tartozó CPU típus (CPUTYPE) alapértelmezés szerint 486-ról 686-ra változott (a kívánt i486 és i586 csomagok saját maguk is előállíthatók).
  • A clang, lld, lldb, compiler-rt, llvm, libunwind és libc++ komponensek frissítve lettek 11-es verzióra.
  • A fejlesztés átkerült a központosított forráskód-kezelő rendszerből, a Subversion-ból egy decentralizált Git rendszerbe.
  • A rendszer alapvető tisztítása megtörtént a GPL licenc alatt terjesztett alkalmazásoktól. A forráskód fájlok közül eltávolításra került a binutils 2.17 és a gcc 4.2.1, minden támogatott architektúra átkerült az LLVM/clang eszközkészletre. A GPL alatt terjesztett változatokat a BSD licenc alatt terjesztett grep és dtc (Device Tree Compiler) eszközök helyettesítették. Az automatikus amd mountolás folyamat eltávolításra került, amelynek funkcionalitását mostantól az autofs valósítja meg. A ctm segédprogram eltávolításra került, helyette a misc/ctm port használata ajánlott.
  • Átírásra került az útválasztási verem, amely mostantól támogatja a nexthop objektumokat, amelyek tárolják a csomagok célba juttatásához használt állapotadatokat. Lehetőséget kaptak a felhasználói útkeresési algoritmusok csatlakoztatására. DPDK (Data Plane Development Kit) librte útkeresési algoritmusok kerültek bevezetésre, amelyek segítik a nagyon nagy útválasztási táblák kezelését. A proxyarp kérésekhez a fib interfész került alkalmazásra. Lehetővé vált a fib mennyiségének módosítása sysctl net.fibs útján. A IPv4 és IPv6 ideiglenes útvonalak támogatása is megvalósult (élettartammal megadva).
  • Az Multipath útválasztás támogatása át lett írva, és most már jobban skálázható, ahol a keresési idő nem függ a lista méretétől (O(1)). Az új Multipath megvalósítás összekapcsolódik a ROUTE_MPATH kernel paraméterrel, amely felváltotta a RADIX_MPATH-ot és alapértelmezés szerint be van kapcsolva. A Multipath kezelésére sysctl net.route.multipath javasolt.
  • Az alapkernel szintjén implementált kriptográfiai keretrendszer át lett dolgozva, amely mostantól modern kriptográfiai algoritmusokat támogat, és egyszerűsíti a titkosítást a meghajtókban és a kernel egyéb komponenseiben. Az elavult algoritmusok, mint az ARC4, Blowfish, CAST128, DES, MD5-HMAC és Skipjack eltávolításra kerültek. Az IPsec és Kerberos leállította az RFC 8221 és RFC 6649/8429 szerinti elavult algoritmusok támogatását, beleértve a 3DES-t is. Az előzőleg elavultnak nyilvánított algoritmusok eltávolításra kerültek a diszk titkosító alrendszerből, a geli-ből és a cryptodev-ből.
  • A GENERIC kernelbe bekerült az aesni és armv8crypto driverek támogatása, amelyek felgyorsítják a geli alapú lemez titkosítást az AES-NI utasítások alkalmazásával az amd64/i386 architektúrákhoz és az AES-XTS-hez az ARM64-hez.
  • Hozzáadódott a qat illesztőprogram az Intel QuickAssist (QAT) kriptoakcelerátorokhoz, valamint az ossl illesztőprogram, amely az OpenSSL-ből származó gyorsított szoftveres titkosítási eljárásokat valósít meg, optimalizálva assembly kóddal. Az armv8crypto illesztőprogramhoz AES-XTS és AES-GCM támogatás került, kihasználva az ARMv8 processzorok megfelelő utasításait.
  • Hozzáadva a TLS (kTLS) megvalósítás, amely a FreeBSD kernel szintjén működik, lehetővé téve a TCP-socketek titkosítási teljesítményének jelentős növelését. Támogatott TLS verziók 1.0-tól 1.3-ig. Titkosításhoz az AES-CBC vagy AES-GCM támogatással rendelkező kernel kriptodrivers-t használják. A kTLS felhasználói térben való használatához az OpenSSL átkonfigurálása szükséges a WITH_OPENSSL_KTLS opcióval.
  • Új mbuf (hálózati adattároló) típust adtak hozzá, amely egyetlen pufferben több, nem tükrözött fizikai memóriablokot képviselhet, ezzel növelve a sendfile(2) rendszerhívás teljesítményét a socket puffereiben lévő mbuf listák méretének csökkentésével.
  • A TCP-stack-ba integrálva lett a csomagküldés intenzitásának arányos csökkentésének algoritmusának (Proportional Rate Reduction, RFC 6937) támogatása, amely gyorsabbá teszi az optimális folyamatparaméterek helyreállítását az adatátviteli problémák után. A PRR letiltásához sysctl beállítás érhető el: net.inet.tcp.do_prr.
  • Bővült a Bhyve hipervizor képessége: Támogatás került bevezetésre a fájlok megosztásához a VirtIO-9p (VirtFS) segítségével. Lehetőség nyílt a pillanatképek kezelésére. virtuális gépekhezHozzáadva a PCI HDAudio eszközök és a COM3 és COM4 további soros portok támogatása. Az elavult bvmconsole és bvmdebug eszközmodellek eltávolításra kerültek. Növelték a VNC kliensekkel való együttműködés stabilitását, beleértve a macOS «Képernyőmegosztás» alkalmazását.
  • A VirtIO illesztőprogramokhoz hozzáadva lett a VirtIO V1 specifikáció támogatása, amely javította a vendég rendszerek FreeBSD-hez való kompatibilitását különböző emulátorokkal és hipervizorokkal.
  • A jail környezetekhez csatolt folyamatok számára biztosított a CPU-hoz való kötődések átalakítása (az eredetileg a folyamatra kötött cpuset a jail cpuset és a megadott korlátozások figyelembevételével lesz lecserélve).
  • Hozzáadva a lehetőség, hogy a FreeBSD alapú rendszerek alapvető verzióját más operációs rendszerek környezetében összeállítsák. Ennek szükségességét az indokolja, hogy a FreeBSD teszteléséhez folyamatos integrációt támogató eszközöket szeretnének használni, amelyek Linuxra vagy macOS-re vannak alapozva.
  • Javasolt egy új MMC/SD verem, amely a CAM keretrendszeren alapul, és lehetővé teszi az SDIO (Secure Digital I/O) interfésszel rendelkező eszközök csatlakoztatását. Például, az SDIO-t WiFi és Bluetooth modulokkal használják számos alaplapon, mint például a Raspberry Pi 3. Az új verem lehetővé teszi a CAM interfész használatát is, így a felhasználói térből SD parancsokat küldhetünk, amely lehetővé teszi felhasználói szintű eszközmeghajtók létrehozását.
  • Javították a Linux kompatibilitási réteg működését. A DTS (Device Tree Source) fájlok szinkronban vannak a Linux 5.8 kernel verziójával.
  • Hozzáadva az NFSv4.2 (RFC-7862) támogatása, és megvalósítva az NFS működését titkosított kapcsolatban TLS 1.3-alapján, a Kerberos (sec=krb5p mód) használata helyett, amely csak RPC üzenetek titkosítására volt korlátozva, és csak szoftveresen került megvalósításra.
  • Eltávolították a régi verziós GDB hibakeresőt, amely korábban a /usr/libexec könyvtárban volt telepítve, és a crashinfo segédprogramban használták. A részletes hibaelemzéshez most friss GDB verziót javasolnak telepíteni a portokból vagy csomagokból a korábban telepített GDB helyett. Megszűnt a folyamatok hibakeresésének támogatása a procfs-en keresztül. Hozzáadva a netgdb meghajtó, amely lehetővé teszi a kernel hibakeresőhöz való hálózati hozzáférést.
  • A libc-ből eltávolították a nem biztonságos gets függvényt (a C11 szabványtól kezdve ez a függvény ki lett zárva a specifikációból) és módosították azokat a portokat, amelyek még mindig ezt a függvényt használják. Eltávolították a cap_random függvényt (használja a getrandom-t).
  • Hozzáadva egy új rendszerhívás, a copy_file_range, amely kompatibilis a Linux kernel verziójával és lehetővé teszi az adatok gyorsabb másolását egyik fájlból a másikba azáltal, hogy a művelet csak a kernel oldalán történik, anélkül, hogy a folyamat memóriájába előtte be kellene olvasni az adatokat. A rendszerhívás szintén használható az szerveren NFSv4.2-t helyi másolási műveletek végrehajtására a szerveren (ügyfélnek átadás nélkül).
  • A POSIX AIO aszinkron bemenet/kimenet mechanizmusában vektorozott funkciók támogatása került bevezetésre. Különösen hozzá lettek adva az aio_writev és aio_readv rendszerhívások, amelyek lehetővé teszik az aio_read és aio_write funkciók vektorizált megfelelőinek megvalósítását.
  • A felhasználói térben lévő komponensek támogatása megszűnt az a.out végrehajtható fájlformátumhoz az i386 architektúrájú rendszereken. Az elf2aout segédprogram eltávolításra került.
  • A ping és a ping6 segédprogramok egyesítve lettek. A pingben hozzáadták a minőségi szolgáltatás (QoS) paraméterek beállításának lehetőségét az IP DSCP és az Ethernet PCP segítségével.
  • A freebsd-update segédprogramban a fájlok letöltésének előrehaladásának megjelenítése biztosított, és új parancsok lettek hozzáadva: updatesready és showconfig a frissítések ellenőrzésére és a konfiguráció megjelenítésére.
  • Jelentős munka zajlott a NUMA (Nem Egységes Memória Hozzáférés) rendszerek támogatásának javítása érdekében.
  • A grafikus illesztőprogramok és a grafikai verem elemei frissítésre kerültek. Megoldásra kerültek a Wayland protokollra épülő környezetekkel kapcsolatos problémák.
  • Hozzá lett adva egy háttérvilágítás alrendszer a háttérvilágítás vezérlésére szolgáló illesztőprogramok létrehozásához. A pwm-backlight illesztőprogram a Pinebook és Pinebook Pro háttérvilágításának irányítására lett hozzáadva.
  • Az SCTP protokoll támogatását az sctp.ko külön modulba helyezték, amely alapértelmezés szerint ki van kapcsolva a GENERIC kernelben.
  • Új usbhid illesztőprogram ajánlása történt beviteli eszközökhöz, amely a hid keretrendszert használja az USB HID eszközökkel való munkához, a ukbd, ums és uhid illesztőprogramok helyett.
  • A cpufreq driver implementálta az Intel Speed Shift technológia támogatását.
  • Hozzá lett adva az új, 64-bites ARMv8 CPU-kon alapuló alaplapok támogatása, beleértve a Broadcom BCM5871X és az NXP LS1046A SoC-t.
  • Az AMD64 architektúrához 57 bites virtuális címek (LA57) támogatása valósult meg. Hozzá lett adva a kínai x86 CPU Hygon Dhyana támogatása, amely az AMD technológiáin alapul.
  • A powerpc64 architektúrához készült port az LLVM és az ABI ELFv2 használatára lett átváltva (a korábbi FreeBSD verziókból származó bináris fájlok nem lesznek használhatók a FreeBSD 13-ban). A powerpc64-hez portolták a virtio, ixl, mrsas, aacraid és cpld illesztőprogramokat.
  • Az elavult Ethernet adapterek illesztőprogramjai eltávolításra kerültek:
    • bm(4) BMAC
    • cs(4) Crystal Semiconductor CS8900/CS8920
    • de(4) DEC DC21x4x
    • ed(4) NE-2000 és WD-80×3
    • ep(4) 3Com Etherlink III (3c5x9) ISA
    • ex(4) Intel EtherExpress Pro/10 és Pro/10+
    • fe(4) Fujitsu MB86960A/MB86965A
    • hme(4) Sun Microelectronics STP2002-STQ
    • pcn(4) AMD PCnet
    • sf(4) Starfire
    • sn(4) SMC 91Cxx
    • tl(4) Texas Instruments ThunderLAN
    • tx(4) SMC 83c17x
    • txp(4) 3Com 3XP Typhoon/Sidewinder (3CR990)
    • vx(4) 3Com EtherLink III / Fast EtherLink III (3c59x) PCI
    • wb(4) Winbond W89C840F
    • xe(4) Xircom PCMCIA
  • Eltávolították az ubsec illesztőprogramokat (Broadcom BCM58xx kriptoakcelerátorok), ufm (USB interfészes FM-tuner), ctau (Cronix Tau), cx (Cronix Sigma) és vpo (párhuzamos port SCSI).

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster