Dopo sei mesi di sviluppo è stato rilasciato FreeBSD 14.5. Le immagini di installazione sono state preparate per le architetture amd64, i386, aarch64, armv7, powerpc, powerpc64 e riscv64. Sono state inoltre preparate build per sistemi di virtualizzazione (QCOW2, VHD, VMDK, raw) e per ambienti cloud come Amazon EC2, Google Compute Engine e Vagrant.
Il prossimo aggiornamento di FreeBSD 14.6 è previsto per marzo 2027. Il supporto per l'attuale rilascio FreeBSD 14.5 sarà fornito fino al 30 giugno 2027, mentre per il rilascio precedente FreeBSD 14.4 fino al 31 dicembre 2026. In generale, il ramo FreeBSD 14 sarà supportato fino al 30 novembre 2028. Il supporto per il ramo FreeBSD 13.x è stato interrotto il 30 aprile 2026. Parallelamente, è in sviluppo il ramo FreeBSD 15, il cui rilascio attuale 15.1 è stato pubblicato tre mesi fa.
Le principali novità in FreeBSD 14.5:
- Nel kernel è stato implementato un meccanismo inotify compatibile con Linux per monitorare le modifiche nei file system. Nella libc sono state aggiunte le funzioni inotify_init, inotify_init1 e inotify_add_watch.
- È stata aggiunta la configurazione sysctl security.bsd.unprivileged_kenv_read per vietare l'accesso non privilegiato alle variabili di ambiente del kernel (kenv).
- Nel driver di sistema msdosfs è stata aggiunta la possibilità di utilizzare caratteri Unicode nei nomi dei file (funzionamento con partizioni FAT32 con emoji nei nomi dei file).
- Nel script rc.firewall è stata implementata la supporto per la sostituzione nelle variabili firewall_allowservices e firewall_trusted con il contenuto di file esterni contenenti elenchi indirizzi IP e subnet.
- Nella programma per la gestione di nastri mt e la libreria libmt è stato aggiunto il supporto per le cartucce LTO-10 e LTO-10P, oltre a nuovi formati.
- È stato modificato il comportamento dello strumento pwd, che ora per impostazione predefinita utilizza la modalità di visualizzazione dei nomi dei collegamenti simbolici (-L) invece di mostrare il percorso a cui puntano i collegamenti simbolici (-P), in conformità con le specifiche POSIX.
- Nello strumento ipfw è stato aggiunto un gestore per chiamare lo strumento ipfw15 quando viene avviato in un sistema con la nuova interfaccia di programmazione del filtro dei pacchetti, introdotta nel kernel di FreeBSD 15.
- Nello strumento daemon è stata aggiunta l'opzione '-m' per specificare il modo di accesso al file di output per consentire l'accesso ai gestori eseguiti senza privilegi di root.
- Nel script local-unbound-setup è stato implementato il supporto per la configurazione DNS per i sistemi che utilizzano solo IPv6.
- Nel file di intestazione math.h sono state aggiunte le funzioni trigonometriche sinpi, cospi e tanpi, proposte nello standard C23, che moltiplicano l'argomento fornito per il numero Pi.
- Il driver smartpqi è stato aggiornato e ora supporta i nuovi controller Microchip Smart Storage SCSI, consentendo di specificare valori a 32 bit nella definizione della dimensione del buffer di input/output.
- Il driver acpi ha aggiunto il supporto per diverse varianti dei controller Marvell 88SE9128 SATA (risolvendo problemi di funzionamento con la scheda madre Gigabyte GA-P55A-UD4) e ha implementato la possibilità di gestire il consumo energetico sui sistemi Apple Mac con due GPU (attivabile tramite il parametro sysctl hw.acpi.apple_darwin_osi).
- Il driver asmc ha eliminato il supporto per i dispositivi Apple Mac a 32 bit con CPU Intel.
- Nel bootloader lualoader sono stati aggiunti i comandi be-list e be-switch per visualizzare e alternare tra gli ambienti di avvio. È stata garantita la gestione dei link simbolici durante la ricerca dei kernel da caricare. È stato aggiunto un gestore di callback per filtrare gli ambienti di avvio negli script Lua eseguiti dal bootloader.
- Nell'installer bsdinstall è stato garantito un corretto processo di creazione della voce di avvio per FreeBSD UEFI.
- I moduli del kernel nvidia, nvidia-modeset e nvidia-drm sono stati inseriti nella blacklist del bootloader per evitare arresti anomali in caso di caricamento prematuro attraverso loader.conf.
- Aggiornate le versioni dei componenti di terze parti: 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.
- Come linker predefinito utilizzando Clang, è stato attivato ld.lld (LLD) invece di un intermediario che determinava il linker in base all'ordine di rilevazione nei percorsi di ricerca. L'approccio precedente portava alla sostituzione del linker effettivamente utilizzato in FreeBSD con ld.lld nel caso in cui fosse stato installato anche GNU ld.
- Il set di programmi lpr è stato classificato come obsoleto e sarà rimosso nella versione FreeBSD 16.0. Si raccomanda di utilizzare il port print/cups o sysutils/LPRng al posto di lpr. Nel processo in background lpd è stato risolto un problema con l'ignoramento del numero di porta in /etc/printcap quando si utilizza IPv6.
Fonte: opennet.ru
