Na een jaar ontwikkeling is de release van FreeBSD 13.1 gepubliceerd. De install-images zijn beschikbaar voor de architecturen amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 en riscv64. Daarnaast zijn er builds voorbereid voor virtualisatiesystemen (QCOW2, VHD, VMDK, raw) en cloudomgevingen zoals Amazon EC2, Google Compute Engine en Vagrant.
In de nieuwe versie:
- Er is een iwlwifi-driver voorgesteld voor Intel draadloze kaarten met ondersteuning voor nieuwe chips en de standaard 802.11ac. De driver is gebaseerd op de Linux-driver en code uit de Linux-netwerksubsystemen net80211, waarvan de werking in FreeBSD wordt gerealiseerd met behulp van de linuxkpi-laag.
- De implementatie van het ZFS-bestandssysteem is geüpdatet naar de release van OpenZFS 2.1 met ondersteuning voor dRAID (Distributed Spare RAID) technologie en aanzienlijke prestatieverbeteringen.
- Een nieuwe rc-script zfskeys is toegevoegd, waarmee automatische decryptie van versleutelde ZFS-partities tijdens het opstarten mogelijk is.
- In de netwerkstack is het gedrag voor IPv4-adressen met een nul laatste getal (x.x.x.0) gewijzigd, dat nu als host kan worden gebruikt en waarvoor standaard geen broadcastverzending wordt toegepast. Het oude gedrag kan worden hersteld met sysctl net.inet.ip.broadcast_lowest.
- Voor 64-bits architecturen is de basisinstallatie standaard gecompileerd met de PIE-modus (Position Independent Executable). Voor uitschakeling is er een instelling voorzien: WITHOUT_PIE.
- Er is de mogelijkheid toegevoegd om chroot aan te roepen door een niet-bevoegd proces, waarvoor de NO_NEW_PRIVS-vlag is ingesteld. Deze modus kan worden ingeschakeld met sysctl security.bsd.unprivileged_chroot. De chroot-tool is voorzien van de optie "-n", waardoor de NO_NEW_PRIVS-vlag voor het proces wordt ingesteld voordat het wordt geïsoleerd.
- In de bsdinstall installer is een modus voor geautomatiseerde schijfpartitie-editie toegevoegd, waarmee scripts voor partitionering zonder gebruikersinteractie kunnen worden gekoppeld aan verschillende schijfnamen. Deze functie vereenvoudigt het creëren van volledig automatisch werkende installatiemedia voor systemen en virtuele machines met verschillende schijven.
- De ondersteuning voor opstarten op systemen met UEFI is verbeterd. De bootloader heeft automatische configuratie van de copy_staging-parameter in overeenstemming met de mogelijkheden van de op te starten kernel ingeschakeld.
- Er is gewerkt aan het verbeteren van de prestaties van de bootloader, nvme, rtsold, initiatie van de pseudo-willekeurige getallengenerator en kalibratie van de timer, wat heeft geleid tot een verkorting van de opstarttijd.
- Ondersteuning toegevoegd voor het gebruik van NFS over een versleutelde verbinding op basis van TLS 1.3. De nieuwe implementatie maakt gebruik van de TLS-stack die door de kernel wordt geleverd, waardoor hardwareversnelling kan worden ingeschakeld. De processen rpc.tlsclntd en rpc.tlsservd zijn samengevoegd met de implementatie van de NFS-over-TLS-client en -server, standaard ingeschakeld voor de architecturen amd64 en arm64.
- Voor NFSv4.1 en 4.2 is de mountoptie nconnect geïmplementeerd, die het aantal gevestigde TCP-verbindingen bepaalt. server De eerste verbinding wordt gebruikt voor kleine RPC-berichten, terwijl de overige zijn bedoeld voor load balancing van het netwerkverkeer met de verzonden gegevens.
- Voor de NFS-server is sysctl vfs.nfsd.srvmaxio toegevoegd, waarmee de maximale invoer-/uitvoerblokgrootte kan worden gewijzigd (standaard 128Kb).
- Verbeterde ondersteuning voor hardware. In de igc-driver is ondersteuning toegevoegd voor de Intel I225 Ethernet-controller. Verbeterde ondersteuning voor Big-endian-systemen. De mgb-driver is toegevoegd voor de Microchip LAN7430 PCIe Gigabit Ethernet-controller.
- De ice-driver, gebruikt voor Intel E800 Ethernet-controllers, is bijgewerkt naar versie 1.34.2-k, waarin ondersteuning voor loggen van firmware-gebeurtenissen in het systeemlog is toegevoegd en een initiële implementatie van DCB-protocoluitbreidingen (Data Center Bridging) is toegevoegd.
- In de afbeeldingen voor Amazon EC2 is standaard opstarten met UEFI ingeschakeld in plaats van BIOS.
- In de bhyve-hypervisor zijn de componenten voor het emuleren van NVMe-opslag bijgewerkt, waarbij ondersteuning voor de NVMe 1.4-specificatie is verzekerd. Problemen met NVMe iovec bij intensieve invoer-/uitvoer zijn opgelost.
- De CAM-bibliotheek is overgeschakeld naar het gebruik van de realpath-aanroep bij het verwerken van apparaatsnamen, wat het gebruik van symbolische links naar apparaten in de camcontrol- en smartctl-hulpmiddelen mogelijk maakt. In camcontrol zijn problemen met het uploaden van firmware naar apparaten opgelost.
- De compilatie van de svnlite-hulpprogramma in het basissysteem is stopgezet.
- Linux-versies van hulpprogramma's voor het berekenen van controlegetallen (md5sum, sha1sum, enz.) zijn toegevoegd, die zijn geïmplementeerd door het aanroepen van bestaande BSD-hulpprogramma's (md5, sha1, enz.) met de optie "-r".
- Ondersteuning voor het beheren van NCQ is toegevoegd aan de mpsutil-hulpprogramma, en informatie over de adapter wordt weergegeven.
- In /etc/defaults/rc.conf is standaard de optie "-i" ingeschakeld bij het aanroepen van de processen rtsol en rtsold, die verantwoordelijk zijn voor het verzenden van ICMPv6 RS (Router Solicitation) berichten. De vermelde optie schakelt willekeurige vertraging uit vóór het verzenden van het bericht.
- Voor de architecturen riscv64 en riscv64sf is de compilatie van bibliotheken met ASAN (address sanitizer), UBSAN (Undefined Behavior Sanitizer), OpenMP en OFED (Open Fabrics Enterprise Distribution) ingeschakeld.
- Problemen met de identificatie van hardwareversnelling voor cryptografische bewerkingen ondersteund door ARMv7 en ARM64-processors zijn opgelost, wat heeft geleid tot aanzienlijke snelheidsverbeteringen voor de algoritmen aes-256-gcm en sha256 op ARM-systemen.
- Voor de powerpc-architectuur is de LLDB-debugger, ontwikkeld door het LLVM-project, aan de basis gesteld.
- De OpenSSL-bibliotheek is bijgewerkt naar versie 1.1.1o en is uitgebreid met assemblage-optimalisaties voor de architecturen powerpc, powerpc64 en powerpc64le.
- De SSH-server en -client zijn geüpdatet naar OpenSSH 8.8p1, met uitgeschakelde ondersteuning voor digitale handtekeningen rsa-sha en met ondersteuning voor two-factor authenticatie via apparaten op basis van het FIDO/U2F-protocol. Nieuwe sleuteltype "ecdsa-sk" en "ed25519-sk", die gebruikmaken van de ECDSA- en Ed25519-handtekeningalgoritmen in combinatie met de SHA-256-hash, zijn toegevoegd voor interactie met FIDO/U2F-apparaten.
- De versies van de derde partijen in het basissysteem zijn bijgewerkt: awk 20210215 (met patches die het gebruik van locales voor bereiken uitschakelen en de compatibiliteit met gawk en mawk verbeteren), zlib 1.2.12, libarchive 3.6.0.
Bron: opennet.ru
