Pas dy vitesh nga publikimi i degës 14.0, është përgatitur versioni FreeBSD 15.0. Ndërtimet e instalimit janë përgatitur për arkitekturat amd64, aarch64, armv7, powerpc64, powerpc64le dhe riscv64. Gjithashtu ofrohen imazhe për sistemet e virtualizimit (QCOW2, VHD, VMDK, raw) dhe mjediset cloud Amazon EC2, Google Compute Engine dhe Vagrant.
Duke filluar nga dega FreeBSD 15, periudha e mirëmbajtjes për degët kryesore pas publikimit të versionit të parë (15.0) është shkurtuar nga 5 në 4 vjet, ndërsa degët e reja kryesore do të publikohen një herë në dy vjet. Versionet ndërmjetëse (15.1, 15.2, 15.3) do të zhvillohen sipas një cikli fiks zhvillimi, që parashikon publikimin e versioneve të reja brenda së njëjtës degë afërsisht çdo 6 muaj, dhe jo një herë në vit siç ka qenë deri tani. Duke marrë parasysh mirëmbajtjen paralele të dy degëve të ndryshme kryesore, një version i ri ndërmjetës do të publikohet çdo 3 muaj (15.4, 16.1, 15.5, 16.2 etj.), me përjashtim të përgatitjes së publikimeve të para të degëve të reja kryesore, para të cilave do të ketë një pauzë 6-mujore në publikime (për shembull, versioni 15.3 do të dalë në qershor 2027, 16.0 në dhjetor 2027, 15.4 në mars 2028, 16.1 në qershor 2028).
Ndryshimet kryesore në FreeBSD 15.0 (në shënimin zyrtar të publikimit, përveç ndryshimeve specifike për versionin 15.0, përmenden edhe shumë funksionalitete të shtuara më herët në degët 14.1, 14.2 dhe 14.3):
- ĂshtĂ« ofruar mundĂ«sia pĂ«r tĂ« pĂ«rdorur menaxherin e paketave pkg pĂ«r instalimin dhe pĂ«rditĂ«simin e komponentĂ«ve tĂ« sistemit bazĂ«. Paketat pkgbase mund tĂ« pĂ«rfshihen nĂ« median e instalimit pĂ«r instalim offline ose tĂ« shkarkohen nga depoja pkg.freebsd.org. NĂ« konfigurimin e pkg (/etc/pkg/FreeBSD.conf) depoja FreeBSD-base nuk Ă«shtĂ« e aktivizuar si parazgjedhje. Instaluesi bsdinstall ofron dy opsione instalimi: tradicional dhe me pĂ«rdorimin e paketave (pkgbase). MbĂ«shtetja pĂ«r metodĂ«n tradicionale, nĂ« tĂ« cilĂ«n sistemi bazĂ« trajtohet si njĂ« mjedis monolitik qĂ« pĂ«rditĂ«sohet me ndihmĂ«n e mjetit freebsd-update, planifikohet tĂ« hiqet nĂ« degĂ«n FreeBSD 16. Metoda e re, qĂ« nĂ«nkupton instalimin e sistemit bazĂ« si njĂ« grup paketash nga depoja FreeBSD-base, ofrohet si parazgjedhje nĂ« ndĂ«rtimet pĂ«r makinat virtuale dhe imazhet pĂ«r mjediset cloud, por pĂ«r momentin konsiderohet ende eksperimentale pĂ«r sistemet e zakonshme.
- U shtua mbështetja për ndërtimin e FreeBSD në mjedise pa privilegje, që nuk kërkojnë të drejta root. Pa të drejta root tani mund të krijohen edhe imazhe instalimi ISO dhe imazhe sistemi për makina virtuale. Në fazën e ndërtimit, të drejtat root kërkoheshin për krijimin e skedarëve të pajisjeve, vendosjen e lejeve të qasjes dhe montimin e sistemeve shtesë të skedarëve, për shembull gjatë krijimit të imazheve të diskut.
- ĂshtĂ« implementuar mbĂ«shtetja pĂ«r ndĂ«rtime tĂ« riprodhueshme, qĂ« bĂ«jnĂ« tĂ« mundur verifikimin se skedarĂ«t binarĂ« tĂ« shpĂ«rndarĂ« janĂ« ndĂ«rtuar nga kodi burimor i ofruar dhe nuk pĂ«rmbajnĂ« ndryshime tĂ« fshehura. NdĂ«rtimet e riprodhueshme sigurojnĂ« identitetin e skedarĂ«ve binarĂ« tĂ« krijuar nga kodi burimor nĂ« mjedise tĂ« ndryshme ndĂ«rtimi.
- ĂshtĂ« ndĂ«rprerĂ« krijimi i imazheve tĂ« instalimit dhe i ndĂ«rtimeve tĂ« paketave binare pĂ«r arkitekturat 32-bit i386, armv6 dhe powerpc. Nga platformat 32-bit Ă«shtĂ« lĂ«nĂ« vetĂ«m armv7. MundĂ«sia pĂ«r tĂ« ndĂ«rtuar programe 32-bit dhe pĂ«r tĂ« pĂ«rdorur mĂ«nyrĂ«n COMPAT_FREEBSD32 pĂ«r ekzekutimin e skedarĂ«ve 32-bit nĂ« njĂ« mjedis tĂ« bazuar nĂ« kernel 64-bit do tĂ« ruhet tĂ« paktĂ«n deri nĂ« fund tĂ« ciklit jetĂ«sor tĂ« degĂ«s FreeBSD 16.
- Janë shtuar thirrje sistemi me implementimin e mekanizmit inotify për monitorimin e ndryshimeve në sistemet e skedarëve.
- U shtua mbështetja për atributet e emërtuara të skedarëve (atribute të zgjeruara në stilin Solaris), të cilat planifikohen të përdoren si një mekanizëm alternativ për menaxhimin e atributeve të zgjeruara, i disponueshëm për ZFS dhe NFSv4. Dallimi nga metodat tradicionale të FreeBSD dhe Linux për punën me atributet e zgjeruara qëndron në paraqitjen e atributeve në një direktori shërbimi, e padukshme në hapësirën kryesore të emrave të sistemit të skedarëve dhe e lidhur me skedarin. Puna me atributet kryhet si me skedarë të zakonshëm; për shembull, për të përcaktuar listën e atributeve mund të përdoret funksioni readdir().
- Moduli mac_do është shpallur gati për përdorim; ai lejon përcaktimin e politikave që u mundësojnë përdoruesve pa privilegje të ndryshojnë kredencialet e proceseve. Për ekzekutimin e komandave nën një përdorues tjetër është përgatitur programi mdo, i ngjashëm me utilitetin su, por që nuk kërkon suid root.
- Gjendja e driverëve DRM i915 dhe amdgpu është sinkronizuar me kernelin Linux 6.9. Driverët për pajisjet me valë rtw88 (Realtek 802.11n/ac), rtw89 (Realtek 802.11ax) dhe iwlwifi (Intel 02.11a/b/g/n/ac/ax/be) janë sinkronizuar me kernelin Linux 6.17.
- Zbatimi i protokollit TLS në anën e kernelit (KTLS) është aktivizuar si parazgjedhje.
- ĂshtĂ« shtuar mjeti sndctl pĂ«r menaxhimin e cilĂ«simeve tĂ« kartave tĂ« zĂ«rit.
- ĂshtĂ« shtuar mjeti mididump pĂ«r nxjerrjen nĂ« kohĂ« reale tĂ« ngjarjeve MIDI 1.0.
- Në hipervizorin bhyve është shtuar një backend i ri rrjeti «slirp», i cili përdor bibliotekën libslirp me zbatim të stack-ut të rrjetit në hapësirën e përdoruesit. Backend-i «slirp» lejon organizimin e qasjes në rrjet të sistemit guest nga mjedisi host pa konfigurim të veçantë të rrjetit në anën e host-it.
- Zbatimi i Kerberos në përbërjen bazë të FreeBSD është zëvendësuar nga Heimdal Kerberos me MIT Kerberos. Për ta rikthyer Heimdal Kerberos gjatë ndërtimit, mund të përdoret flamuri WITHOUT_MITKRB5. Në FreeBSD 16, mbështetja për ndërtimin e Heimdal Kerberos do të hiqet.
- Sjellja e thirrjeve të sistemit setgroups, getgroups dhe initgroups gjatë përpunimit të grupeve të përdoruesve është afruar me platformat e tjera (ndryshimi në zbatimin e FreeBSD kufizohej në ruajtjen e identifikuesit efektiv të grupit të proceseve në elementin zero të vargut me listën e grupeve).
- Në cilësimet e menaxherit të paketave pkg është aktivizuar si parazgjedhje depoja e re FreeBSD-kmods, ku vendosen paketa me module kerneli të ndërtuara për degë specifike të publikimeve 15.x-RELEASE, dhe jo për degën 15-STABLE që përditësohet vazhdimisht. Depoja FreeBSD-kmods zgjidh problemin e instalimit të driverëve që varen nga ndërfaqe të paqëndrueshme të kernelit (për shembull, driverët grafikë). Depot e pranishme më parë në /etc/pkg/FreeBSD.conf, «FreeBSD» dhe «FreeBSD-kmods», janë riemërtuar në «FreeBSD-ports» dhe «FreeBSD-ports-kmods».
- Në NFS është shtuar mbështetja për operacionin CLONE, i përcaktuar në specifikimin NFSv4.2 dhe që mundëson kopjim të shpejtë të skedarëve përmes klonimit të blloqeve në server. Ky regjim aktualisht funksionon vetëm gjatë eksportimit përmes NFS të ndarjeve ZFS.
- Në sistemet amd64 është shtuar mundësia e përdorimit të më shumë se 4 TB RAM.
- ĂshtĂ« shtuar driveri ufshci pĂ«r mbĂ«shtetjen e kontrollorĂ«ve tĂ« sistemeve tĂ« ruajtjes me ndĂ«rfaqen UFSHCI (Universal Flash Storage Host Controller Interface).
- Sysctl net.link.bridge.member_ifaddrs është vendosur si parazgjedhje në 0, domethënë në urat e rrjetit mund të shtohen ndërfaqe pa IP-adresat.
- ĂshtĂ« rritur besueshmĂ«ria e funksionimit tĂ« ndarjeve me sistem skedarĂ«sh UFS qĂ« pĂ«rmbajnĂ« mĂ« shumĂ« se 2,000,000,000 inode. NĂ« implementimin e sistemit tĂ« skedarĂ«ve UFS1 Ă«shtĂ« zgjidhur problemi i vitit 2038 (mund tĂ« pĂ«rdoren data deri nĂ« vitin 2106).
- ĂshtĂ« shtuar opsioni i socket-eve tĂ« rrjetit SO_SPLICE pĂ«r bashkimin e lidhjeve TCP (i ngjashĂ«m me njĂ« proxy qĂ« punon pa kopjuar tĂ« dhĂ«nat nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit).
- Në mjetin grep, ndjekja e lidhjeve simbolike gjatë kërkimit rekursiv është çaktivizuar si parazgjedhje.
- ĂshtĂ« shtuar moduli i kernelit nvmfta pĂ«r mbĂ«shtetjen e kontrolluesve NVMe over Fabric dhe mjeti nvmecontrol pĂ«r lidhje me njĂ« kontrollues tĂ« jashtĂ«m NVMe over Fabric.
- Në mjetin date është shtuar mbështetja për shfaqjen e kohës me saktësi në nanosekonda; për shembull, «date -Ins» do të shfaqë «2024-04-22T12:20:28,763742224+02:00».
- NĂ« jail Ă«shtĂ« shtuar mbĂ«shtetja pĂ«r opsionin zfs.dataset pĂ«r tĂ« shtuar njĂ« ndarje, snapshot ose klon ZFS nĂ« njĂ« mjedis tĂ« izoluar jail. NĂ« komandĂ«n jail Ă«shtĂ« shtuar mbĂ«shtetja pĂ«r parametrat «meta» dhe «env», pĂ«rmes tĂ« cilĂ«ve mund tĂ« lidhen metadata ose tĂ« kalohen variabla tĂ« mjedisit. ĂshtĂ« shtuar mundĂ«sia e adresimit tĂ« mjediseve jail pĂ«rmes descriptor-Ă«ve jail, pĂ«r punĂ«n me tĂ« cilĂ«t janĂ« ofruar funksionet jail_set dhe jail_get, si edhe thirrjet e sistemit jail_attach_jd dhe jail_remove_jd. ĂshtĂ« shtuar gjithashtu mundĂ«sia pĂ«r tĂ« pĂ«rdorur filtrat kevent pĂ«r tĂ« monitoruar operacionet e krijimit, fshirjes, ndryshimit dhe bashkĂ«ngjitjes sĂ« Jail.
- Në mjetin newsyslog është zbatuar një parametër për përcaktimin e metodës së kompresimit të përdorur si parazgjedhje (bzip2, xz, zstd, gzip), duke eliminuar nevojën për të specifikuar flamuj të veçantë (J, X, Y, Z) në çdo rresht të newsyslog.conf.
- Në bibliotekën standarde C, në shumë funksione për punë me vargje dhe memorie janë përdorur optimizime të bazuara në instruksionet SIMD.
- Në fontin Gallant, i përdorur në terminalet virtuale, janë shtuar më shumë se 4300 glife të reja, përfshirë glife me simbole cirilike dhe shenja matematikore.
- Në tty, si parazgjedhje është vendosur flamuri IUTF8, me të cilin funksionon saktë fshirja e simboleve UTF-8 kur shtypet Backspace.
- Mjeti dialog, i përdorur në konfiguruesin bsdconfig dhe instaluesin bsdinstall, është zëvendësuar me bsddialog.
- Në mjetin adduser, i përdorur në bsdinstall, është mundësuar krijimi i një ZFS dataset të veçantë (ndarje, snapshot ose klon) për direktorinë home të përdoruesit, nëse për direktorinë prind përdoret tashmë një ZFS dataset. Gjithashtu është shtuar mundësia e përdorimit të enkriptimit të direktorive home me mjetet e ZFS. Për menaxhimin e aktivizimit të këtyre funksioneve, në adduser.conf janë shtuar parametrat «Zcreate» dhe «Zencrypt».
- ĂshtĂ« mundĂ«suar krijimi i imazheve tĂ« kontejnerĂ«ve tĂ« pajtueshĂ«m me OCI dhe i imazheve tĂ« sistemit pĂ«r Oracle Cloud.
- ĂshtĂ« shtuar njĂ« lloj i ri imazhesh «small» pĂ«r mjedise cloud tĂ« pajtueshme me AWS EC2. Ndryshe nga imazhet bazĂ«, prej tyre janĂ« hequr tĂ« dhĂ«nat e debugimit, testet, bibliotekat 32-bit, debugger-i LLDB, Amazon SSM Agent dhe AWS CLI. Shkarkimi i imazheve «base» pĂ«r EC2 Ă«shtĂ« pĂ«rshpejtuar me 76%.
- Si parazgjedhje është çaktivizuar dhe është shpallur e vjetëruar cilësimi net.inet.tcp.nolocaltimewait, domethënë është rikthyer krijimi i regjistrimeve TIME_WAIT për lidhjet TCP të mbyllura në anën e sistemit lokal. Për konfigurimin e kohës së qëndrimit të lidhjes në gjendjen TIME_WAIT është shtuar sysctl i ri net.inet.tcp.msl_local.
- Si parazgjedhje është çaktivizuar mbështetja për krijimin e lidhjeve të rrjetit me localhost ku specifikohet INADDR_ANY. Për ta rikthyer këtë mbështetje, mund të vendosni vlerën 1 për sysctl net.inet.ip.connect_inaddr_wild.
- ĂshtĂ« hequr menaxheri i vĂ«llimeve logjike gvinum, i cili pĂ«rdorej pĂ«r RAID programor. Zhvillimi i Gvinum ka ndaluar rreth 15 vjet mĂ« parĂ«, ndĂ«rsa nĂ« kod ka njĂ« sĂ«rĂ« problemesh tĂ« njohura qĂ« askush nuk i ka marrĂ« pĂ«rsipĂ«r tâi korrigjojĂ«. NĂ« vend tĂ« gvinum rekomandohet pĂ«rdorimi i gconcat, gmirror, gstripe, graid ose zfs.
- Për FreeBSD 16 është planifikuar heqja e drejtuesit agp (Accelerated Graphics Port), i nevojshëm për funksionimin e shumë drejtuesve për kartat e vjetra grafike. Gjithashtu janë shpallur të vjetëruar dhe janë planifikuar për heqje drejtuesit: fdc (IBM PC Floppy Disk Controller), firewire (IEEE1394 Serial Bus), le (AMD Am7900 LANCE dhe Am79C9xx Ethernet) dhe upgt (USB 802.11g).
- Funksioni readdir_r është shpallur i vjetëruar.
- Në serverin SNMP bsnmpd është ndërprerë mbështetja për transportin UDP.
- ĂshtĂ« ndĂ«rprerĂ« gjenerimi i çelĂ«save host RSA pĂ«r SSH dhe EC2 AMI. Nga OpenSSH Ă«shtĂ« hequr mbĂ«shtetja pĂ«r DSA. ĂshtĂ« hequr baza e tĂ« dhĂ«nave publickey, e lidhur me algoritmin DES.
- Nga sistemi bazë janë hequr ftpd dhe shar, në vend të të cilave duhet të përdoren portet ftp/freebsd-ftpd dhe sysutils/freebsd-shar.
- Mjeti fdisk është shpallur i vjetëruar, dhe në vend të tij duhet përdorur gpart.
- Drejtuesi syscons është zhvendosur në kategorinë e të vjetëruarve, pasi nuk është i përputhshëm me UEFI, nuk mbështet UTF-8 dhe varet nga bllokimi global.
- Janë përditësuar versionet e LLVM 19.1.7, OpenSSH 10.0p2, OpenSSL 3.5.4, OpenZFS 2.4.0rc4, Lua 5.4.8, jemalloc 5.3.0, Awk 20250804 (me mbështetje për UTF-8), bc 7.1.0, unicode 16.0.0, ncurses 6.5, libarchive 3.8.2, tcpdump 4.99.5, unbound 1.24.1, less 679, file 5.46, GoogleTest 1.15.2.
Burimi: opennet.ru
