Po sześciu miesiącach prac rozwojowych powstała wersja FreeBSD 14.5. Obrazy instalacyjne są dostępne dla architektur amd64, i386, aarch64, armv7, powerpc, powerpc64 oraz riscv64. Dodatkowo przygotowane zostały pakiety dla systemów wirtualizacyjnych (QCOW2, VHD, VMDK, raw) oraz środowisk chmurowych Amazon EC2, Google Compute Engine i Vagrant.
Następna aktualizacja FreeBSD 14.6 jest zaplanowana na marzec 2027 roku. Wsparcie dla bieżącej wersji FreeBSD 14.5 będzie trwać do 30 czerwca 2027 roku, a dla poprzedniej wersji FreeBSD 14.4 do 31 grudnia 2026 roku. Ogólnie rzecz biorąc, gałąź FreeBSD 14 będzie wspierana do 30 listopada 2028 roku. Wsparcie dla gałęzi FreeBSD 13.x zostało zakończone 30 kwietnia 2026 roku. Równocześnie rozwija się gałąź FreeBSD 15, której aktualna wersja 15.1 została wydana trzy miesiące temu.
Główne zmiany w FreeBSD 14.5:
- W jądrze wprowadzono mechanizm zgodny z Linuxem inotify do śledzenia zmian w systemach plików. W libc dodano funkcje inotify_init, inotify_init1 i inotify_add_watch.
- Dodano ustawienie sysctl security.bsd.unprivileged_kenv_read w celu zablokowania nieuprzywilejowanego dostępu do zmiennych środowiskowych jądra (kenv).
- W sterowniku systemu plików msdosfs dodano możliwość używania znaków Unicode w nazwach plików (zrealizowano współpracę z partycjami FAT32 z emoji w nazwach plików).
- W skrypcie rc.firewall dodano wsparcie dla podstawiania w zmiennych firewall_allowservices oraz firewall_trusted treści zewnętrznych plików z listami adresów IP i podsieci.
- W programie do obsługi napędów taśmowych mt oraz w bibliotece libmt dodano wsparcie dla wkładek LTO-10 i LTO-10P oraz nowych formatów.
- Zmodyfikowano zachowanie narzędzia pwd, które zgodnie z specyfikacjami POSIX teraz domyślnie używa trybu wyświetlania nazw dowiązań symbolicznych (-L) zamiast pokazywania ścieżki, na którą wskazują dowiązania symboliczne (-P).
- Dodano obsługę dla wywołania narzędzia ipfw15 w narzędziu ipfw przy uruchamianiu w systemie z nowym interfejsem programistycznym filtrów pakietów, który pojawił się w jądrze FreeBSD 15.
- W narzędziu daemon dodano opcję „-m” do określenia trybu dostępu do zapisywanego pliku w celu zapewnienia dostępu obsługującym, uruchamianym bez uprawnień root.
- W skrypcie local-unbound-setup zrealizowano wsparcie dla konfiguracji DNS w systemach, które korzystają tylko z IPv6.
- Do pliku nagłówkowego math.h dodano proponowane w standardzie C23 funkcje trygonometryczne sinpi, cospi i tanpi, które mnożą przekazywany argument przez liczbę Pi.
- Zaktualizowano sterownik smartpqi, dodając wsparcie dla nowych kontrolerów Microchip Smart Storage SCSI oraz możliwość określenia 32-bitowych wartości przy definiowaniu rozmiaru bufora wejścia/wyjścia.
- W sterowniku acpi dodano wsparcie dla dodatkowych wariantów kontrolerów Marvell 88SE9128 SATA (rozwiązało to problemy z działaniem na płycie głównej Gigabyte GA-P55A-UD4) oraz zrealizowano możliwość zarządzania zużyciem energii w systemach Apple Mac z dwoma GPU (włącza się przez parametr sysctl hw.acpi.apple_darwin_osi).
- W sterowniku asmc zakończono wsparcie dla 32-bitowych urządzeń Apple Mac z procesorem Intel.
- Do bootloadera lualoader dodano polecenia be-list oraz be-switch do przeglądania i przełączania środowisk rozruchowych. Zapewniono obsługę linków symbolicznych podczas wyszukiwania ładowanych jąder. Dodano handler callback do filtrowania środowisk rozruchowych w skryptach Lua uruchamianych przez bootloader.
- W instalatorze bsdinstall zapewniono poprawne tworzenie wpisu rozruchowego FreeBSD UEFI.
- Moduły jądra nvidia, nvidia-modeset i nvidia-drm zostały dodane do czarnej listy bootloadera, aby uniknąć awaryjnego zakończenia w przypadku ich wczesnego ładowania przez loader.conf.
- Zaktualizowano wersje komponentów zewnętrznych: LLVM/Clang 21.1.8, OpenSSL 3.0.21, unbound 1.26.0, Expat 2.8.1, file 5.47, ldns 1.9.2, less 704, libarchive 3.8.7, libpcap 1.10.6, ncurses 6.6, openresolv 3.17.4, NSS 3.123.1, tcpdump 4.99.6, xz 5.8.3.
- Jako linker przy użyciu Clang domyślnie używany jest ld.lld (LLD) zamiast pośredniego narzędzia, które określa linkera na podstawie kolejności wykrywania w wyszukiwaniu w ścieżkach plików PATH. Stary sposób prowadził do zastępowania rzeczywiście używanego w FreeBSD linkera ld.lld w przypadku dodatkowej instalacji linkera GNU ld.
- Zestaw programów lpr został przesunięty do kategorii przestarzałych, a jego usunięcie planowane jest w wersji FreeBSD 16.0. Zaleca się korzystanie z portu print/cups lub sysutils/LPRng zamiast lpr. W zadaniu w tle lpd rozwiązano problem z ignorowaniem numeru portu z /etc/printcap podczas korzystania z IPv6.
Źródło: opennet.ru
