Pas dy vjet e gjysmë që nga publikimi i degës 13.0, është formuar lëshimi FreeBSD 14.0. Imazhet e instalimit janë përgatitur për architekturën amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv7, aarch64 dhe riscv64. Përveç kësaj, janë përgatitur ndërtimet për sistemet e virtualizimit (QCOW2, VHD, VMDK, raw) dhe ambientet cloud si Amazon EC2, Google Compute Engine dhe Vagrant. Dega FreeBSD 14 do të jetë e fundit me mbështetje për platformat 32-bit. Në FreeBSD 15 do të mbetet vetëm mbështetje për sistemi 64-bit, por do të ruhet mundësia për të ndërtuar programe 32-bit dhe përdorimin e modit COMPAT_FREEBSD32 për të drejtuar skedarët ekzekutivë 32-bit në një ambient 64-bit.
Ndryshimet kryesore:
- Si interpretuese e komandave për përdoruesin root, është caktuar për default /bin/sh.
- Për pajisjet NVME, për default në të gjitha platformat, është aktivizuar drejtuesi nda. Për kthimin e drejtuesit të vjetër nvd në loader.conf është parashikuar konfigurimi "hw.nvme.use_nvd=1".
- ĂshtĂ« shtuar utiliti i ri "fwget", i cili identifikon pajisjet qĂ« kĂ«rkojnĂ« firmuer dhe instalon paketat pĂ«rkatĂ«se me firmuese. Aktualisht mbĂ«shteten vetĂ«m pajisjet PCI dhe firmuese pĂ«r GPU Intel dhe AMD.
- ĂshtĂ« shtuar njĂ« utilit i ri base64 pĂ«r kodimin dhe dekodimin e tĂ« dhĂ«nave nĂ« formatin base64.
- ĂshtĂ« shtuar utiliti tcpsso, qĂ« lejon caktimin e opsioneve tĂ« soketĂ«ve pĂ«r lidhjet ekzistuese TCP (pĂ«r shembull, mund tĂ« ndryshoni modulin e kontrollit tĂ« ngarkesĂ«s ose TCP-stack).
- Si agjent i shpërndarjes së postës për default, në vend të sendmail është angazhuar dma (Agjenti i Postës DragonFly). Sendmail është ruajtur në paketën bazë dhe është përmirësuar në versionin 8.17.1.
- Në KTLS, implementimi i protokollit TLS që funksionon në nivelin e bërthamës FreeBSD, është shtuar mbështetje për përshpejtimin hardueror të TLS 1.3 në anën e pranimit. Përspejtimi është siguruar përmes nxjerrjes në anën e kartës së rrjetit të disa operacioneve që lidhen me përpunimin e paketave të enkrimuar.
- Në skedarin e konfigurimit jail.conf është shtuar direktyva " .include", e cila lejon përfshirjen e skedareve shtesë gjatë ngarkesës së konfigurimit, në rrugët e të cilave lejohet përdorimi i maskave. Parametri sysctl security.bsd.see_jail_proc është zgjeruar, me ndihmën e të cilit përdoruesve të paautorizuar në një ambient të veçantë jail tani mund t'u ndalohet përfundimi i detyruar, ndryshimi i prioritetit dhe debugimi i proceseve.
- Programet pw dhe bsdinstall tani krijojnë përdoruesit në katalogun "\/home" si parazgjedhje, jo në "\/usr\/home". Lidhja simbolike për "\/home", që tregon në "\/usr\/home", nuk krijohet më.
- Konfigurimi i ndërtimit PROFILE është çaktivizuar si parazgjedhje - versionet e profilizuara të bibliotekave të sistemit nuk ofrohen më, për të përdorur pajisjet e profilizimit (hwpmc).
- Ndërtimi i skedarëve ekzekutivë për arkitekturën 64-bit është aktivizuar në mënyrën PIE (Position Independent Executable).
- Në hipervizorin Bhyve është shtuar mundësia e kalimit të aksesit në TPM (Trusted Platform Module) dhe GPU (në mjediset virtuale për çipat AMD dhe Intel).
- Zbatimi i sistemit tĂ« skedarĂ«ve ZFS Ă«shtĂ« pĂ«rditĂ«suar nĂ« versionin OpenZFS 2.2. NĂ« utilitarin makefs Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r sistemin e skedarĂ«ve ZFS. ĂshtĂ« dhĂ«nĂ« mundĂ«sia pĂ«r tĂ« krijuar njĂ« pishinĂ« ZFS tĂ« lidhur me njĂ« diskut virtual vdev.
- Numri i bërthamave të CPU mbështetje është rritur nga 256 në 1024 (parametri MAXCPU) në sistemet me arkitekturë amd64 dhe arm64.
- Në UFS për konfigurimet ku është aktivizuar regjistrimi (soft updates) lejohet kryerja e kontrollit të prapambetur të sistemit të skedarëve, duke përdorur snapshotet UFS. Në superbloket, hartat e grupeve të cilindrave dhe inode janë shtuar verifikime shtesë me hash për identifikimin e dëmtimeve.
- ĂshtĂ« shtuar sistemi i skedarĂ«ve tarfs, qĂ« mund tĂ« pĂ«rdoret me arkivat tar tĂ« kompresuara me zstd.
- ĂshtĂ« shtuar mjetet boottrace pĂ«r ndjekjen e ngjarjeve qĂ« ndodhin nĂ« fazĂ«n e ngarkimit dhe pĂ«rfundimit tĂ« sistemit.
- ĂshtĂ« shtuar parametri i konfigurimit tĂ« bĂ«rthamĂ«s FIRECRACKER pĂ«r tĂ« mundĂ«suar ekzekutimin e FreeBSD nĂ« sistemin e virtualizimit Firecracker, i projektuar pĂ«r tĂ« ekzekutuar makina virtuale me kosto minimale. Koha e ngarkimit tĂ« bĂ«rthamĂ«s FreeBSD 14 nĂ«n menaxhimin e Firecracker Ă«shtĂ« reduktuar nĂ« 25 milisekonda, duke lejuar ngarkimin e ambientit me FreeBSD sipas nevojĂ«s pĂ«r tĂ« realizuar infrastrukturĂ«n e computing pa server.
- Në ngarkuesin, i shkruar në Lua, në një ambient të veçantë sandbox, është implementuar mbështetje për ekzekutimin e skedarëve lua, të vendosur në katalogun loader_conf_files.
- ĂshtĂ« zgjeruar mbĂ«shtetjen pĂ«r NFS. ĂshtĂ« shtuar njĂ« opsion i ri montimi "syskrb5" pĂ«r mbĂ«shtetje Kerberos nĂ« NFSv 4.1\/4.2, si dhe Ă«shtĂ« implementuar mbĂ«shtetje pĂ«r operacionin ExchangeID. ĂshtĂ« realizuar mundĂ«sia pĂ«r tĂ« ekzekutuar nfsd, nfsuserd, mountd, gssd dhe rpc.tlsservd nĂ« njĂ« ambient tĂ« izoluar rrjeti vnet.
- Në skenarin growfs është implementuar mundësia e vendosjes së një seksioni swap në fund të zonës së zgjeruar në disk.
- U shtua një provajder i ri DTrace kinst (dtrace_kinst), i cili lejon gjurmimin e strukturave të bërthamës.
- Në kriptosubstratën e bërthamës është shtuar mbështetje për algoritmin e enkriptimit XChaCha20-Poly1035 AEAD, si dhe është shtuar API për përdorimin e kurbës eliptike curve25519 (për WireGuard).
- Koha e rinisjes është shkurtuar. U shtua parametri sysctl kern.reboot_wait_time, i cili mund të ndryshojë vonesën para rinisjes faktike pas shfaqjes së të gjitha mesazheve diagnostike në konsolë. Nga e ardhmja, vonesa është eliminuar.
- ĂshtĂ« shtuar njĂ« sistem timerfd nĂ« bĂ«rthamĂ«, qĂ« thjeshton portimin e aplikacioneve nga Linux.
- U shtua sysctl machdep.mitigations.zenbleed.enable për të bllokuar vulnerabilitetin Zenbleed në procesorët AMD Zen2.
- Në wpa_supplicant dhe hostapd është shtuar mbështetje për Wi-Fi 6. Në driverin iwlwifi sigurohet funksionimi me çipet Intel që mbështesin Wi-Fi 6E AX411 / AX211 / AX210.
- Për bërthamën në sistemet amd64 është siguruar mbështetje për mjetet AddressSanitizer dhe MemorySanitizer nga projekti LLVM.
- Në skriptet rc.d lejohet përdorimi i metodës status, edhe nëse emri i programit (procname) dhe skedari PID nuk janë të përcaktuar.
- Shpejtësia e transmetimit të dhënave përmes portit serial në bërthamë, në bootloaders dhe në hapësirën e përdoruesit është rritur nga 9600 në 115200 bps. Tingulli i alarmit është vendosur në 800Hz si parazgjedhje. Siguruar integrim me devd për dërgimin e tingullit përmes kartës së zërit. Për konsolën vt, alarmi është çaktivizuar si parazgjedhje (për aktivizimin e tij është e nevojshme të kryhen komandat «sysctl kern.vt.enable_bell=1» dhe «kbdcontrol -b normal»).
- ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetja pĂ«r arkitekturĂ«n e accelerimit tĂ« operacioneve rrjetĂ«sore NXP DPAA2 (Data Path Acceleration Architecture Gen2).
- ĂshtĂ« shtuar driveri igc pĂ«r kontrollorĂ«t Ethernet Intel I225, qĂ« mbĂ«shtet shpejtĂ«sinĂ« 2.5 Gbps.
- Si parazgjedhje është aktivizuar konfigurimi net.inet.tcp.nolocaltimewait, që çaktivizon krijimin e regjistrave timewait për lidhjet TCP, të cilat janë ndërprerë në anën e sistemit lokal.
- ĂshtĂ« zgjeruar dhe aktivizuar si parazgjedhje mbĂ«shtetja pĂ«r protokollin e komunikimit Netlink (RFC 3549), i cili pĂ«rdoret nĂ« Linux pĂ«r organizimin e ndĂ«rveprimit tĂ« bĂ«rthamĂ«s me proceset nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit. Disa mjete rrjeti janĂ« transferuar nĂ« pĂ«rdorimin e Netlink.
- Filtri i grupit pf ofron përputhje me sintaksën dhe sjelljen e operacioneve të normalizimit të paketave (scrubbing) nga versioni pf i OpenBSD. Në pfsync është zbatuar mundësia për përdorimin e transportit IPv6. Formati i paketave pfsync është zgjeruar për të mbështetur radhët, normalizimin e paketave dhe rregullat route-to.
- Në ndërfaqen e rrjetit if_stf (IPv6 mbi IPv4) është shtuar mbështetje IPv6 Rapid Deployment (RFC 5969). Në mënyrë të paracaktuar është çaktivizuar modaliteti IPv6 nodeinfo (RFC 4620).
- Parametri sysctl net.inet.tcp.nolocaltimewait është aktivizuar në mënyrë të paracaktuar, duke çaktivizuar krijimin e regjistrimeve me gjendje timewait për lidhjet TCP të ndërprera lokalisht.
- Në mënyrë të paracaktuar, për TCP është aktivizuar mekanizmi i menaxhimit të mbingarkesës rrjet përmes CUBIC në vend të NewReno, çka ka lejuar zgjerimin e përdorimit të bandës së disponueshme.
- Në IPv4 është çaktivizuar dërgimi i paketimeve të gjera në adresën zero të nënrrjetit, nëse kjo adresë nuk është shpallur në mënyrë të qartë si e gjërë. Ky ndryshim lejon përdorimin e adresave për hostet që përfundojnë me «.0».
- Janë ndryshuar cilësimet e OpenSSH: në scp, protokolli SFTP është aktivizuar në mënyrë të paracaktuar në vend të scp/rcp, është çaktivizuar mbështetja për nënshkrimet RSA/SHA-1, parametrat VerifyHostKeyDNS dhe X11Forwarding janë caktuar në «jo», është hequr direktiva VersionAddendum, është hequr mbështetja për cilësimet HPN.
- Në mjetin date është shtuar opsioni «-z» për konvertimin e zona të kohës.
- NĂ« mjetin diff Ă«shtĂ« shtuar opsioni «âcolor» pĂ«r vizualizimin e qartĂ« tĂ« ndryshimeve me ngjyrĂ«.
- Në mjetin sleep është shtuar mbështetje për njësi matëse të ndryshme nga sekondat (për shembull, mund të tregoni «sleep 1h 30m»).
- Në mjetet head dhe tail është shtuar mbështetje për opsionet «-q» dhe «-h», si dhe është zbatuar mundësia e caktimit të sasisë me sufiks në sistemin ndërkombëtar të njësive SI. Në head është hequr kufizimi në numrin maksimal të rreshtave 2^31.
- Në mjetin systat është shtuar komanda «iolat» për të dhënat mbi vonesat e hyrjes/daljes, të llogaritura nga planifikuesi CAM.
- Biblioteka libncursesw Ă«shtĂ« ndarĂ« nĂ« dy biblioteka libtinfow dhe libncursesw. ĂshtĂ« shtuar mbĂ«shtetje pĂ«r pĂ«rdorimin e terminfo nĂ« ncurses, jo vetĂ«m termcap.
- Për arkitekturën aarch64 (arm64) është zbatuar dhe aktivizuar si gjatë ndërtimit opsioni i ndërtimit COMPAT_LIB32, duke siguruar ndërtimin e bibliotecave 32-bit për sistemet ARM64, që lejojnë ekzekutimin e skedarëve ekzekutivë të ndërtuar për platformën armv7.
- ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetja pĂ«r sistemet cloud. PĂ«r AWS EC2 janĂ« shtuar ndĂ«rtimet eksperimentale me FS-nĂ« rrĂ«njĂ«sore ZFS dhe cloud-init. PĂ«r Azure janĂ« ofruar imazhe pĂ«r arkitekturĂ«n arm64 dhe amd64, me opsion pĂ«r UFS ose ZFS. ĂshtĂ« shtuar njĂ« driver pĂ«r kartĂ«n virtuale tĂ« rrjetit gve (Google Virtual NIC).
- Në sistemin ACPI është shtuar mbështetje për pragun _CR3, që lejon caktimin e temperaturës, kur arrihet e cila sistemi do të kalojë në mënyrën e spanjohjes (S3).
- Janë përditësuar versionet e aplikacioneve dhe bibliotekave të palëve të treta që bëjnë pjesë në sistemin bazë: OpenSSH 9.5p1, OpenSSL 3.0.12 (më parë ishte përdorur dega 1.1.1), awk 2021072, bc 6.6.0, libbsdxml 2.4.7, libfido2 1.13.0, tcpdump 4.99.4, libpcap 1.10.4, xz 5.4.3, zlib 1.3, zstd 1.5.2. Realizimi i utilitarit objdump është zëvendësuar me llvm-objdump. Kompilatori Clang është përditësuar në degën 16.
- ĂshtĂ« bĂ«rĂ« pastrimi i sistemeve tĂ« vjetra:
- Nga sistemi bazë është hequr mbështetja për fjalëkalimet e përkohshme OPIE (për ta rikthyer, mund të instaloni portin security/opie).
- Janë hequr driverët për kartat e zërit me ndërfaqe ISA.
- Janë hequr utilitarët fmtree dhe minigzip.
- Janë hequr komponentët ATM në netgraph (NgATM).
- ĂshtĂ« hequr procesi i prapambetur telnetd (mund tĂ« pĂ«rdorni portin net/freebsd-telnetd).
- ĂshtĂ« hequr klasa VINUM nĂ« geom.
- Janë hequr driverët e vjetëruar amr, iscsi_initiator, iir, mn, mly, nlmrsa dhe twa.
- Nga bërthamat GENERIC dhe MINIMAL është hequr parametrin VESA.
- Nga korniza kriptografike OCF (Open Cryptographic Framework) e punësuar në nivelin e bërthamës është hequr mbështetja për operacionet kriptografike asimetrike.
- ĂshtĂ« shpallur e vjetĂ«ruar utilitari mergemaster, pĂ«r tĂ« cilin duhet tĂ« pĂ«rdoret etcupdate.
- ĂshtĂ« hequr utilitari portsnap (pĂ«r nxjerrjen e porteve duhet tĂ« pĂ«rdoret «git clone https://git.FreeBSD.org/ports.git /usr/ports»).
- ĂshtĂ« ndaluar krijimi i ndĂ«rtimeve pĂ«r arkitekturĂ«n armv6.
- ĂshtĂ« hequr mbĂ«shtetja pĂ«r arkitekturĂ«n MIPS.
Burimi: opennet.ru
