Изданието FreeBSD 14.0

След два с половина години от публикацията на клон 13.0, е формализиран релиз FreeBSD 14.0. Инсталационни образи са подготвени за архитектурите amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv7, aarch64 и riscv64. Допълнително са подготвени сборки за виртуализационни системи (QCOW2, VHD, VMDK, raw) и облачни среди Amazon EC2, Google Compute Engine и Vagrant. Клон FreeBSD 14 ще бъде последният с поддръжка на 32-битови платформи. В FreeBSD 15 остава само поддръжката на 64-битови системи, но ще бъде запазена възможността за създаването на 32-битови приложения и използването на режима COMPAT_FREEBSD32 за изпълнение на 32-битови изпълними файлове в 64-битова среда.

Основни промени:

  • По подразбиране за команден интерпретатор за потребителя root е зададен /bin/sh.
  • За NVME устройства по подразбиране на всички платформи е активиран драйверът nda. За връщане на стария драйвер nvd в loader.conf е предвидена настройка „hw.nvme.use_nvd=1“.
  • Добавена е нова утилита „fwget“, която идентифицира оборудването, необходимо на което да се инсталират фърмуер, и инсталира съответните пакети с фърмуер. В момента се поддържат само PCI устройства и фърмуер за GPU Intel и AMD.
  • Добавена е нова утилита base64 за кодирането и декодирането на данни в формат base64.
  • Добавена е утилита tcpsso, позволяваща задаване на опции на сокета за съществуващи TCP връзки (например, може да смените модула за контрол на натоварването или TCP стека).
  • По подразбиране вместо sendmail, за агент за доставка на поща е използван dma (DragonFly Mail Agent). Sendmail е запазен в базовата инсталация и е обновен до версия 8.17.1.
  • В KTLS, реализацията на TLS протокола, работеща на ниво ядрото на FreeBSD, е добавена поддръжка за апаратно ускорение на TLS 1.3 на приемащата страна. Ускорението е осигурено чрез прехвърляне на страната на мрежовата карта на някои операции, свързани с обработката на криптирани пакети.
  • В конфигурационния файл jail.conf е добавена директива „.include“, позволяваща при зареждане на конфигурацията да се включват допълнителни файлове, в пътищата на които е разрешено използването на маски. Разширен е sysctl параметърът security.bsd.see_jail_proc, чрез който неавторизирани потребители в отделна jail среда вече могат да бъдат забранено насилственото прекратяване, промените на приоритета и дебъгването на процеси.
  • Програмите pw и bsdinstall вече по подразбиране създават потребители в директорията „\/home“, а не в „\/usr\/home“. Символичната връзка за „\/home“, насочваща към „\/usr\/home“, вече не се създава.
  • Сборъчната настройка PROFILE е деактивирана по подразбиране — профилираните версии на системните библиотеки вече не се предоставят, вместо тях следва да се използват хардуерни средства за профилиране (hwpmc).
  • Включено е изграждането на изпълняеми файлове за 64-битови архитектури в режим PIE (Position Independent Executable).
  • В хипервизора Bhyve е добавена възможност за проброс на достъп до TPM (Trusted Platform Module) и GPU (във виртуалните среди за чипове AMD и Intel).
  • Имплементацията на файловата система ZFS е актуализирана до версия OpenZFS 2.2. В утилитата makefs е добавена поддръжка за файловата система ZFS. Предоставена е възможност за създаване на ZFS пул, свързан с един виртуален диск vdev.
  • Броят на поддържаните ядра CPU (параметър MAXCPU) в системи с архитектури amd64 и arm64 е увеличен от 256 на 1024.
  • В UFS за конфигурации, при които е включено журнализиране (soft updates), е разрешено извършването на фоново проверка на файловата система, използвайки UFS моментни снимки. В суперблоковете, картите на груповите цилиндри и inode са добавени допълнителни проверки на хешове за откриване на повреди.
  • Добавена е файловата система tarfs, която може да се използва с tar-архиви, компресирани с помощта на zstd.
  • Добавен е инструментариум boottrace за проследяване на събития, случващи се по време на стартиране и спиране на системата.
  • Добавен е параметърът за настройка на ядрото FIRECRACKER за осигуряване на стартиране на FreeBSD в системата за виртуализация Firecracker, предназначена за стартиране на виртуални машини с минимални разходи. Времето за зареждане на ядрото FreeBSD 14 под управлението на Firecracker е сведено до 25 милисекунди, което позволява стартиране на среди с FreeBSD при необходимост за реализиране на безсървърна инфраструктура.
  • В загрузчика, написан на езика Lua, в специална пясъчна среда е реализирана поддръжка за изпълнение на lua-файлове, разположени в директорията loader_conf_files.
  • Разширена е поддръжката на NFS. Добавена е нова опция за монтиране „syskrb5“ за поддръжка на Kerberos в NFSv 4.1\/4.2, както и е реализирана поддръжка на операцията ExchangeID. Реализирана е възможността за стартиране на nfsd, nfsuserd, mountd, gssd и rpc.tlsservd в изолирана мрежова среда vnet.
  • В скрипта growfs е реализирана възможността за разполагане на свързващ дял в края на разширяемата област на диска.
  • Добавен е нов DTrace доставчик kinst (dtrace_kinst), който позволява трасировка на структурата на ядрото.
  • В криптосистемата на ядрото е добавена поддръжка на алгоритъма за криптиране XChaCha20-Poly1035 AEAD, а също така е добавен API за използване на елиптичната крива curve25519 (за WireGuard).
  • Скоростта на рестартиране е съкратена. Добавен е sysctl параметър kern.reboot_wait_time, чрез който може да се промени закъснението преди действителното рестартиране след извеждането на всички диагностични съобщения в конзолата. По подразбиране закъснението е премахнато.
  • В ядрото е добавена подсистема timerfd, която опростява преносимостта на програми от Linux.
  • Добавен е sysctl machdep.mitigations.zenbleed.enable за блокиране на уязвимостта Zenbleed в процесорите AMD Zen2.
  • В wpa_supplicant и hostapd е добавена поддръжка на Wi-Fi 6. В драйвера iwlwifi е осигурена работа с Intel чипове, поддържащи Wi-Fi 6E AX411/AX211/AX210.
  • За ядрото на системите amd64 е осигурена поддръжка на инструментите AddressSanitizer и MemorySanitizer от проекта LLVM.
  • В скриптовете rc.d е разрешено използването на метода status, дори ако в скрипта не е определено името на програмата (procname) и PID-файл.
  • Скоростта на предаване на данни през последователния порт в ядрото, буутлоадерите и пространството на потребителя по подразбиране е увеличена от 9600 до 115200 bps. Тонът на звуковия сигнал по подразбиране е зададен на 800Hz. Осигурена е интеграция с devd за извеждане на сигнала през звуковата карта. За конзолата vt звуковият сигнал по подразбиране е изключен (за активиране е необходимо да се изпълнят командите „sysctl kern.vt.enable_bell=1“ и „kbdcontrol -b normal“).
  • Подобрена е поддръжката на архитектурата за хардуерно ускорение на мрежовите операции NXP DPAA2 (Data Path Acceleration Architecture Gen2).
  • Добавен е драйвер igc за Ethernet контролери Intel I225, поддържащи скорост от 2.5 Gbps.
  • По подразбиране е активирана настройката net.inet.tcp.nolocaltimewait, която изключва създаването на timewait записи за TCP връзки, прекратени от локалната система.
  • Разширена и включена по подразбиране поддръжка на комуникационния протокол Netlink (RFC 3549), използван в Linux за организиране на взаимодействие между ядрото и процесите в потребителското пространство. Някои мрежови утилити са преведени на използване на Netlink.
  • В пакетния филтър pf е осигурена съвместимост със синтаксиса и поведението на операциите по нормализация на пакети (scrubbing) от версията pf на OpenBSD. В pfsync е реализирана възможност за използване на транспорт IPv6. Форматът на пакетите pfsync е разширен, за да поддържа опашки, нормализация на пакети и правила route-to.
  • В мрежовия интерфейс if_stf (IPv6 over IPv4) е добавена поддръжка на IPv6 Rapid Deployment (RFC 5969). Режимът IPv6 nodeinfo (RFC 4620) е деактивиран по подразбиране.
  • По подразбиране е включен параметърът sysctl net.inet.tcp.nolocaltimewait, който деактивира създаването на записи със състояние timewait за локално прекратени TCP съединения.
  • По подразбиране механизмът за управление на мрежовата задръстване CUBIC е активиран за TCP вместо NewReno, което е разширило използването на наличната честотна лента.
  • В IPv4 е деактивирано изпращането на широковещателни пакети до нулевия адрес на подсет, освен ако този адрес не е явно обявен за широковещателен. Това изменение позволява на хостовете да използват адреси, завършващи на „.0“.
  • Настройките на OpenSSH са променени: в scp по подразбиране е активиран протокол SFTP вместо scp/rcp, поддръжката на подписи RSA/SHA-1 е деактивирана, параметрите VerifyHostKeyDNS и X11Forwarding са зададени на „no“, директивата VersionAddendum е премахната, а поддръжката на настройки HPN е отстранена.
  • В утилитата date е добавена опцията „-z“ за преобразуване на часови зони.
  • В утилитата diff е добавена опцията „—color“ за цветна визуализация на промените.
  • В утилитата sleep е добавена поддръжка за единици, различни от секунди (например, можете да зададете „sleep 1h 30m“).
  • В утилитите head и tail е добавена поддръжка за опции „-q“ и „-h“, както и е реализирана възможност за задаване на величини с суфикси в международната система единици SI. Ограничението на максималния брой редове в head е премахнато (2^31).
  • В утилитата systat е добавена команда „iolat“ за показване на информация за закъснения при вход/изход, изчислени от планировчика CAM.
  • Библиотеката libncursesw е разделена на две библиотеки libtinfow и libncursesw. Добавена е поддръжка за използване на базата terminfo в ncurses, а не само termcap.
  • За архитектура aarch64 (arm64) е реализирана и по подразбиране е включена опцията за компилация COMPAT_LIB32, която осигурява компилация на 32-битови библиотеки за системи ARM64, позволяващи изпълнение на изпълними файлове, компилирани за платформата armv7.
  • Подобрена поддръжката на облачни системи. За AWS EC2 са добавени експериментални сборки с коренова файловата система ZFS и cloud-init. За Azure са предоставени образи за архитектурите arm64 и amd64, с избор между UFS или ZFS. Добавен е драйвер за виртуалната мрежова карта gve (Google Virtual NIC).
  • В системата ACPI е добавена поддръжка на праговото значение _CR3, позволяващо задаване на температура, при достигането на която системата ще бъде преведена в режим на сън (S3).
  • Актуализирани са версиите на приложенията и библиотеките, включени в основната система: OpenSSH 9.5p1, OpenSSL 3.0.12 (предишната версия беше 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. Имплементацията на утилитата objdump е заменена с llvm-objdump. Компилаторът Clang е обновен до версия 16.
  • Извършена е почистване на остарели системи:
    • Поддръжката на еднократни пароли OPIE е премахната от основната система (за възстановяване на използването им може да се инсталира порт security/opie).
    • Драйверите за звукови карти с интерфейс ISA са премахнати.
    • Утилитите fmtree и minigzip са премахнати.
    • Компонентите ATM в netgraph (NgATM) са премахнати.
    • Фоновият процес telnetd е премахнат (може да се използва порт net/freebsd-telnetd).
    • Класът VINUM в geom е премахнат.
    • Остарелите драйвери amr, iscsi_initiator, iir, mn, mly, nlmrsa и twa са премахнати.
    • Параметърът VESA е премахнат от ядрото GENERIC и MINIMAL.
    • Поддръжката на асиметрични криптографски операции е премахната от криптографския фреймворк OCF (Open Cryptographic Framework).
    • Утилитата mergemaster е обявена за остаряла, вместо нея следва да се използва etcupdate.
    • Утилитата portsnap е премахната (за извличане на портове следва да се използва „git clone https://git.FreeBSD.org/ports.git /usr/ports”).
    • Формироването на сборки за архитектурата armv6 е преустановено.
    • Поддръжката на архитектурата MIPS е премахната.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster