Стаття також доступна російською (перейти до перегляду).
Вступ
- Зміни, що вже увійшли до попередньої релізної гілки під номерами 13.1 та 13.2
- Зміни, що з’явилися вперше
Наприкінці листопаду поточного року світ IT побачив нову версію доволі популярної операційної системи (ОС) FreeBSD під номером 14.0 гілки Stable. Робота над нею тривала більш ніж два з половиною роки і, тому, деякі з нововведень вже «працюють» у релізах 13.1 та 13.2, а інші представлені вперше. Зміни стосуються практично всіх напрямків – архітектури, користувацького простору, систем збереження даних різного рівня та інших позицій. Їх кількість була такою, що не дала змоги розробникам представити їх усі в новому релізі і, тому, як вони самі зазначають у документі: «основна увага приділяється рекомендаціям по безпеці, змінам, котрі безпосередньо стосуються користувача та основним покращенням архітектури». Так само і ми, спробуємо передати основні концепції нововведень, спираючись на представлений документ.
Зміни, що вже увійшли до попередньої релізної гілки під номерами 13.1 та 13.2
Зміни в основному стосувалися пристроїв, драйверів та систем збереження даних. Схоже розробники вирішили наполегливо працювати у напрямку оптимізації роботи файлових сховищ. Також було внесено кілька змін на рівні ядра, зокрема, що стосується роботи віртуальних центральних процесорів (ЦП), кількість котрих тепер може бути такою ж, як і фізичних ЦП на хості, що дуже зручно, зокрема, при використанні VPS-хостингу. Нижче наведені більшість із доступних нововведень.
Блок | Нововведення | Призначення |
Пристрої та драйвери | Драйвер igc для Ethernet-контроллера Intel I225 | Забезпечує швидкість роботи у 2,5 Гбит/с |
Драйвер мережевого інтерфейсу mgb | Дає змогу працювати Microchip пристроям, зокрема, контроллеру LAN7431 PCIe Gigabit Ethernet із інтерфейсом RGMII та іншими | |
Скрипт hostid | Генерує випадковий UUID у випадку його відсутності для пристрою | |
Утиліта bhyve | Додана підтримка емуляції пристроїв типу virtio | |
Скрипт zfskeys rc | Забезпечує автоматичне розшифрування наборів даних ZFS під час завантаження | |
Nvme | Покращена обробка помилок | |
Скрипт Growfs, змінна Groofs_swap_size | Додає керований за допомогою змінної розділ підкачування при розширенні кореневої файлової системи | |
Скрипт rc. zpoolreguid | Призначає новий ідентифікатор типу GUID одному чи кільком пулам даних, покращує роботу середовищ віртуалізації. | |
Системний завантажувач | UEFI для amd64 | Покращена сумісність при завантаженні |
Internet | IPv4 | Змінена обробка наймолодшої адреси (0), що дозволяє використовувати її у якості імені для хоста. |
Зміни, що з’явилися вперше
Нижче представлена вибірка інформації із нового релізу FreeBSD 14.0 про внесені зміни та нові функції, котрі публікуються вперше. Всі функції розподілені по блокам відповідного спрямування.
Блок | Нововведення | Призначення |
Користувацький | Оболонка SH | Встановлена оболонкою за замовчуванням для root користувача |
Утиліта Base64 | Додана | |
Утиліта CPUSET | Переміщена до каталогу /bin для забезпечення постійного доступу до неї під час обробки запиту | |
Утиліта date | Додана опція –z для можливості перетворення часового поясу | |
Утиліта FWGE | Нова. Сканує наявні периферійні пристрої, котрі потребують прошивання та встановлює для них відповідні пакети. Працює тільки для PCI та пристроїв Intel AMD | |
Утиліта makefs | Додана підтримка ZFS, можливість створення пулів на базі одного VDEV пристрою | |
Команда PW та інсталятор Bsdinstall |
По замовчуванню тепер створюють домашні директорії користувачів у /Home | |
Програма Sleep | Додана можливість розпізнавання значень затримки, виражених у інших часових одиницях, а не лише у секундах | |
Програма TCPSSO | Нова. Дає змогу керувати стеком TCP за допомогою параметрів сокету | |
Протокол OpenSSH | Оновлений до версії 9.5p1 | |
Утиліта SCP | Інтегрована у SFTP, що, зокрема, знімає потребу у розширенні знаків підстановки із подвійним цитуванням | |
Протокол SSH |
Підписи RSA та SHA-1 за замовчуванням відключені. Параметр VerifyHostKeyDNS за замовчуванням відключений. X11formating за замовчуванням відключений. Параметр VersionAddendum видалений із клієнта |
|
Бібліотека Libncursesw | Розділена на Libtinfow та Libncursesw | |
ARM64 | За замовчування включений параметр збірки COMPAT_LIB32, що забезпечить сумісність бібліотеки ARMV7 та файлів заголовків для можливості запуску 32-х розрядних файлів | |
Ядро | Система SMP |
Підтримка 1024 ядер на ARM64 та AMD64 Оновлений CPUSET для ABI за для підвищення рівня межі обмежень |
ACPI_TIMER_TEST | Відключений за замовчуванням | |
Boottrace | Новий інтерфейс Userspace для захвату подій трасування під час вимкнення живлення або завантаження системи | |
Curve25519 | Був доданий API у криптографію ядра | |
Параметр Cern.reboot_wait_time | Новий. Був доданий для можливості керування затримкою перед перезавантаженням системи | |
Пам’ять та адреси LLVM | Доступні для використання у ядрах AMD64 | |
TimerFD | Доданий для покращення функції портування Linux-програм, котрі цей таймер використовують | |
Пристрої та драйвери | Швидкість послідовного зв’язку | За замовчуванням встановлена у 115 200 біт/с замість 9600 біт/с. Можна змінити за допомогою параметру BOOT_COMCONSOLE_SPEED |
Звук дзвінка | Встановлений у 800 Гц за замовчуванням. Керується параметром kbdcontrol | |
Архітектура DPAA2 |
Покращено розмежування між каналами З’явилася підтримка FDT/ACPI MDIO та окремих портів типу DPMCP Включена можливість завантаження по мережі через DPAA2 |
|
Додатки hwpmc та libpmc | Додана підтримка контроллерів Arm Corelink DMC-620 та CMN-600 | |
Драйвер iwlwifi для безпровідних інтерфейсів Intel | Оновлений для підтримки мікросхем WiFi 6E AX411/AX211 та AX210 | |
Драйвер kvm_clock для годинника KVM | Новий. Додано | |
Диски NVMe |
За замовчуванням встановлені як nda Символьні посилання на пристрої nvd тепер створюються в /dev |
|
Драйвер Intel QAT | Доданий як заміна попередньому драйверу qat. Надає додаткові інтерфейси для засобів стиснення та шифрування чіпсету | |
Системи збереження даних | Службова програма Gunion | Нова, слугує для відслідковування змін на диску, доступному лише для читання |
Сервери NFS | Додана підтримка їх запуску у межах віртуальної мережі, котра знаходиться у власній файловій системі. Керується параметром allow.nfsd | |
Клієнт та сервер NFSv4.1/4.2 | Будуть генерувати консольні повідомлення у випадку, якщо сеанс розривається | |
Клієнт FreeBSD NFS | За допомогою параметру vfs.maxbcachebuf можна налаштувати на використання вводу-виводу обсягом у 1Мб | |
Kerberized NFSv4.1/4.2 | Додано новий спосіб монтування типу syskrb5 | |
Протокол монтування NFS | Додана підтримка SP4_MACH_CRED, що дає можливість клієнту Linux NFS v4.1/4.2 здійснювати монтування із використанням Kerberized | |
Бібліотека libufs |
Оновлена, і тепер включає засоби для здійснення фонових перевірок UFS власними утилітами файлової системи Код пошуку альтернативних суперблоків перенесений у загальний файл і, тому, він тепер доступний для утиліт файлової системи та системного завантажувача
|
|
OpenZFS | Оновлений до v2.2
Клонування блоків відключено за замовчуванням. Керується параметром vfs.zfs.bclone_enabled Додано більш швидкі контрольні суми BLAKE3 Уніфікований ARC, котрий мінімізує кількість налаштувань Проведена загальна оптимізація Під’єднання до 32-х розрядної версії powerpc/powerpcspe |
|
Файлова система Msdosfs |
Здійснює запис доступних даних у корні файлових систем FAT12/FAT16 Вірно веде облік використовуємих та доступних блоків FAT12/FAT16 Не перешкоджає здійсненню монтування у випадку застосування нестандартних параметрів |
|
Файлова система Tarfs | Додана. Підтримується tar POSIX, стиснутих за допомогою zstd | |
Системний завантажувач | Веб-сервіс Amazon EC2 | Тепер може завантажуватися із використанням UEFI, що значно прискорює процес |
Lua | Файли .lua тепер будуть виконуватися у пісочниці | |
Мережа | Мережевий протокол carp | Дозволяє використовувати одноадресні адреси для відправлення повідомлень |
Протокол netlink | Оновлений та розширений. Включений за замовчуванням | |
Фільтр пакетів pf | Додана підтримка очищення із використанням синтаксису OpenBSD | |
Протокол для синхронізації станів брандмауера pfsync |
Додана підтримка транспорту IPv6 Розширений формат пакету для покращення маршрутизації, очищення та роботи із чергами |
|
Internet | Інтерфейс 6to4 для IPv6 над IPv4 | Включена підтримка швидкого розгортання IPv6 |
IPv6 | Відключена обробка даних про вузол, встановлена за замовчуванням |
За результатами розгляду запропонованих розробниками нововведень, можна зробити висновки, що зусилля розробників в основному були сконцентровані на питаннях оптимізації роботи файлових сховищ; зближенні із 64-х розрядними архітектурами; підтримці сумісності із перспективними зовнішніми сервісами, зокрема, Amazon; покращення роботи протоколу IPv6, ну і звісно, впорядкування та розширенні можливостей програм та функцій користувацького блоку.
Доречі наш Unix хостинг працює саме на FreeBSD. Ця ОС зарекомендувала себе як швидка та надійна система. Особливо зручною та надійною є файлова система ZFS, яка дозволяє вирішувати безліч питань зручніше та швидше ніж інші файлові системи.
Підписуйтесь на наш телеграм-канал https://t.me/freehostua, щоб бути в курсі нових корисних матеріалів.
Дивіться наш канал Youtube на https://www.youtube.com/freehostua.
Ми у чомусь помилилися, чи щось пропустили?
Напишіть про це у коментарях, ми з задоволенням відповімо та обговорюємо Ваші зауваження та пропозиції.
Дата: 29.11.2023 Автор: Олександр Ровник
|
|
Авторам статті важлива Ваша думка. Будемо раді його обговорити з Вами:
comments powered by Disqus