Udgivelse af FreeBSD 14.0

Efter to et halvt år siden offentliggørelsen af gren 13.0 er frigivelsen af FreeBSD 14.0 blevet færdiggjort. Installationsbilleder er blevet forberedt til arkitekturerne amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv7, aarch64 og riscv64. Derudover er der klargjort builds til virtualiseringssystemer (QCOW2, VHD, VMDK, raw) og cloud-miljøer som Amazon EC2, Google Compute Engine og Vagrant. Grenen FreeBSD 14 bliver den sidste med støtte til 32-bit platforme. I FreeBSD 15 vil der kun være støtte til 64-bit systemer, men muligheden for at kompilere 32-bit programmer og bruge COMPAT_FREEBSD32-mode til at køre 32-bit eksekverbare filer i et 64-bit miljø vil blive bevaret.

Vigtige ændringer:

  • Som standard kommandotolk for brugeren root er /bin/sh blevet indstillet.
  • For NVME-enheder er driveren nda som standard aktiveret på alle platforme. For at vende tilbage til den gamle driver nvd skal der i loader.conf indstilles "hw.nvme.use_nvd=1".
  • Der er tilføjet et nyt værktøj "fwget", som bestemmer hvilket hardware der kræver firmware, og installerer de relevante firmwarepakker. I øjeblikket understøttes kun PCI-enheder og firmware til Intel og AMD GPU'er.
  • Et nyt værktøj base64 er blevet tilføjet til kodning og dekodning af data i base64-format.
  • Værktøjet tcpsso er blevet tilføjet, hvilket muliggør indstilling af socketindstillinger for eksisterende TCP-forbindelser (for eksempel kan TCP-kontrolmodulet eller TCP-stakken ændres).
  • Som standard postleveringsagent er dma (DragonFly Mail Agent) blevet valgt i stedet for sendmail. Sendmail er bevaret i basispakken og opdateret til version 8.17.1.
  • I KTLS, implementeringen af TLS-protokollen, der arbejder på niveauet af FreeBSD-kernen, er der tilføjet støtte til hardwareaccelerering af TLS 1.3 på modtagersiden. Accelerationen opnås ved at flytte nogle operationer relateret til behandling af krypterede pakker til netværkskortet.
  • Der er tilføjet direktivet ".include" til konfigurationsfilen jail.conf, hvilket muliggør inkludering af yderligere filer ved indlæsning af konfigurationen, hvor stierne tillader brug af masker. Sysctl-parameteren security.bsd.see_jail_proc er blevet udvidet, hvilket gør det muligt at forbyde uautoriserede brugere i en separat jail-miljø at tvinge afslutning, ændre prioriteter og debugge processer.
  • Programmerne pw og bsdinstall opretter nu som standard brugere i katalogen "/home" i stedet for "/usr/home". Den symbolske link til "/home", der peger på "/usr/home", oprettes ikke længere.
  • Indstillingen PROFILE er som standard deaktiveret — profilerede versioner af systembiblioteker leveres ikke længere, man bør i stedet anvende hardwareprofilering (hwpmc).
  • Der er aktiveret bygning af eksekverbare filer til 64-bit arkitektur i PIE (Position Independent Executable) tilstand.
  • Bhyve hypervisoren har fået tilføjet muligheden for at videregive adgang til TPM (Trusted Platform Module) og GPU (til virtuelle miljøer for AMD- og Intel-chips).
  • Implementeringen af ZFS-filsystemet er blevet opdateret til OpenZFS 2.2. Kommandolinjeværktøjet makefs har nu support for ZFS-filsystemet. Muligheden for at oprette en ZFS-pool, der er knyttet til en enkelt virtuel disk vdev, er også blevet tilføjet.
  • Antallet af understøttede CPU-kerner (parameter MAXCPU) for systemer baseret på amd64 og arm64 er blevet øget fra 256 til 1024.
  • I UFS for konfigurationer med aktiveret journaling (soft updates) er det muligt at udføre baggrundstjek af filsystemet ved hjælp af UFS-snapshots. Der er tilføjet ekstra hash-kontroller til superblocks, cylinder groups og inodes for at opdage skader.
  • Der er tilføjet filsystemet tarfs, som kan bruges med tar-arkiver, der er komprimeret med zstd.
  • Der er tilføjet et værktøj ved navn boottrace til at spore hændelser, der opstår under opstart og nedlukning af systemet.
  • Indstillingen FIRECRACKER er blevet tilføjet til kernen for at muliggøre kørsel af FreeBSD i en Firecracker-virtualisering, der er designet til at køre virtuelle maskiner med minimalt overhead. Opstartstiden for FreeBSD 14 under Firecracker er blevet reduceret til 25 millisekunder, hvilket muliggør kørsel af FreeBSD-miljøer efter behov for at implementere serverless computing-infrastruktur.
  • I bootloaderen, skrevet i Lua, er der implementeret support til genkørsel af lua-filer, der er placeret i kataloget loader_conf_files, i et specielt sandbox-miljø.
  • Understøttelsen af NFS er blevet udvidet. Der er tilføjet en ny monteringsmulighed "syskrb5" for at understøtte Kerberos i NFSv 4.1/4.2, ligesom der er implementeret support for operationen ExchangeID. Det er nu muligt at køre nfsd, nfsuserd, mountd, gssd og rpc.tlsservd i et isoleret netværksmiljø vnet.
  • I scriptet growfs er der mulighed for at placere swap-partitionen i slutningen af det udvidelige område på disken.
  • Der er tilføjet en ny DTrace-udbyder kinst (dtrace_kinst), der muliggør tracing af kerne-strukturer.
  • Kryptosystemet i kernen har fået støtte til krypteringsalgoritmen XChaCha20-Poly1035 AEAD, samt tilføjet et API til brug af den elliptiske kurve curve25519 (til WireGuard).
  • Genstartstiden er reduceret. Der er tilføjet en sysctl-parametrer kern.reboot_wait_time, som kan ændre forsinkelsen før den faktiske genstart efter at have udskrevet alle diagnostiske meddelelser til konsollen. Som standard er forsinkelsen fjernet.
  • Der er tilføjet en timerfd-subsystem til kernen, som forenkler porteringen af programmer fra Linux.
  • Der er tilføjet sysctl machdep.mitigations.zenbleed.enable til at blokere sårbarheden Zenbleed i AMD Zen2-processorer.
  • Der er tilføjet støtte til Wi-Fi 6 i wpa_supplicant og hostapd. Drivere til iwlwifi understøtter chips fra Intel, der har Wi-Fi 6E AX411/AX211/AX210.
  • Der er sikret støtte til AddressSanitizer- og MemorySanitizer-værktøjerne fra LLVM-projektet i kernen på amd64-systemer.
  • I rc.d-scripts er det nu tilladt at bruge metoden status, selvom programnavnet (procname) og PID-filen ikke er defineret i scriptet.
  • Dataoverførselshastigheden gennem serielle porte i kernen, bootloadere og brugerpladsen er som standard steget fra 9600 til 115200 bps. Dens tone er som standard sat til 800Hz. Der er sikret integration med devd for at spille tonen gennem lydkortet. For konsollen vt er tonen som standard deaktiveret (for at aktivere skal du udføre kommandoerne «sysctl kern.vt.enable_bell=1» og «kbdcontrol -b normal»).
  • Støtten til hardwareaccelereret netværksoperationer med arkitekturen NXP DPAA2 (Data Path Acceleration Architecture Gen2) er forbedret.
  • Der er tilføjet en driver til igc for Intel I225 Ethernet-controllere, som understøtter hastigheder på 2.5 Gbps.
  • Som standard er net.inet.tcp.nolocaltimewait-konfiguration aktiveret, hvilket deaktiverer oprettelsen af timewait-poster for TCP-forbindelser, der er blevet afbrudt på den lokale systemside.
  • Støtten til kommunikationsprotokollen Netlink (RFC 3549) er blevet udvidet og aktiveret som standard, hvilket bruges i Linux til at organisere interaktionen mellem kernen og processer i brugerpladsen. Nogle netværksværktøjer er blevet overført til at bruge Netlink.
  • I pakkefilteret pf er der sikret kompatibilitet med syntaksen og adfærden for normalisering af pakker (scrubbing) fra versionen pf i OpenBSD. I pfsync er der implementeret muligheden for at bruge transporten IPv6. Formatet for pfsync-pakker er udvidet til at understøtte køer, normalisering af pakker og regler for route-to.
  • Det netværksinterface if_stf (IPv6 over IPv4) er blevet tilføjet. understøttelse af IPv6 Rapid Deployment (RFC 5969). Standardindstillingen for IPv6 nodeinfo (RFC 4620) er deaktiveret.
  • Sysctl-parameteren net.inet.tcp.nolocaltimewait er aktiv som standard, hvilket forhindrer oprettelse af tidsregistreringer i status timewait for lokalt afbrudte TCP-forbindelser.
  • Standard for TCP anvendes netværksbelastningsstyringsmekanismen CUBIC i stedet for NewReno, hvilket har udvidet anvendelsen af den tilgængelige båndbredde.
  • I IPv4 er afsendelse af broadcast-pakker til null-netværksadressen deaktiveret, medmindre en sådan adresse eksplicit er erklæret som broadcast. Ændringen muliggør brug af adresser, der slutter på '.0' for værter.
  • Indstillingerne for OpenSSH er ændret: I scp anvendes SFTP-protokollen som standard i stedet for scp/rcp, understøttelse af RSA/SHA-1 signaturer er deaktiveret, indstillingerne VerifyHostKeyDNS og X11Forwarding er sat til 'no', direktivet VersionAddendum er fjernet, og understøttelsen af HPN-indstillinger er blevet fjernet.
  • Der er tilføjet en '-z' mulighed til date-værktøjet for konvertering af tidszoner.
  • Der er tilføjet en '--color' mulighed til diff-værktøjet for visuel fremvisning af ændringer med farve.
  • Der er tilføjet støtte for måleenheder andet end sekunder til sleep-værktøjet (f.eks. kan man angive 'sleep 1h 30m').
  • Der er tilføjet støtte for valgmulighederne '-q' og '-h' til værktøjerne head og tail, samt mulighed for at angive størrelser med suffikser i det internationale system for enheder (SI). Begrænsningen på det maksimale antal linjer i head på 2^31 er blevet fjernet.
  • Der er tilføjet kommandoen 'iolat' til systat-værktøjet for at vise oplysninger om ind-/udlæsningsforsinkelser beregnet af CAM-planlæggeren.
  • Biblioteket libncursesw er opdelt i to biblioteker, libtinfow og libncursesw. Der er tilføjet støtte til at bruge terminfo-basen i ncurses i stedet for kun termcap.
  • For arkitekturen aarch64 (arm64) er der implementeret og aktiveret en byggeindstilling, COMPAT_LIB32, som giver mulighed for bygning af 32-bit biblioteker til ARM64-systemer, der muliggør kørsel af eksekverbare filer, der er bygget til platformen armv7.
  • Forbedret support til cloud-systemer. Der er tilføjet eksperimentelle opbygninger med rodfilsystemet ZFS og cloud-init til AWS EC2. For Azure er der givet billeder til arm64- og amd64-arkitekturer, med mulighed for enten UFS eller ZFS. En driver til den virtuelle netværksadapter gve (Google Virtual NIC) er tilføjet.
  • Der er tilføjet support til tærskelværdien _CR3 i ACPI-systemet, der muliggør indstilling af temperaturen, ved hvilken systemet vil blive sat i dvaletilstand (S3).
  • Versionerne af tredjepartsapplikationer og biblioteker, der er inkluderet i det grundlæggende system, er opdateret: OpenSSH 9.5p1, OpenSSL 3.0.12 (tidligere brugt version 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. Implementeringen af værktøjet objdump er blevet ændret til llvm-objdump. Kompileringsværktøjet Clang er opdateret til version 16.
  • Der er blevet ryddet op i forældede systemer:
    • Support for engangskoder OPIE er blevet fjernet fra det grundlæggende system (for at genoptage brugen kan porten security/opie installeres).
    • Drivere til lydkort med ISA-interface er blevet fjernet.
    • Værktøjerne fmtree og minigzip er blevet fjernet.
    • ATM-komponenter i netgraph (NgATM) er blevet fjernet.
    • Baggrundsprocessen telnetd er blevet fjernet (man kan bruge port net/freebsd-telnetd).
    • Klassen VINUM i geom er blevet fjernet.
    • Forældede drivere amr, iscsi_initiator, iir, mn, mly, nlmrsa og twa er blevet fjernet.
    • Parameteren VESA er blevet fjernet fra kernerne GENERIC og MINIMAL.
    • Støtten til asymmetrisk kryptografi i Open Cryptographic Framework (OCF) på kernel-niveau er blevet fjernet.
    • Værktøjet mergemaster er blevet erklæret forældet, og i stedet bør etcupdate anvendes.
    • Værktøjet portsnap er blevet fjernet (for at hente porte skal man bruge "git clone https://git.FreeBSD.org/ports.git /usr/ports").
    • Opbygningen til arkitekturen armv6 er blevet stoppet.
    • Support for MIPS-arkitekturen er blevet fjernet.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster