Azienda Red Hat rilascio della distribuzione . Le versioni di installazione sono preparate per le architetture x86_64, s390x (IBM System z), ppc64le e Aarch64, ma per solo per gli utenti registrati del Red Hat Customer Portal. I codici sorgente dei pacchetti rpm di Red Hat Enterprise Linux 8 sono distribuiti tramite CentOS. La distribuzione sarà supportata almeno fino al 2029.
Come base per la creazione del nuovo ramo sono state utilizzate tecnologie che fanno parte di . Il nuovo ramo è notevole per il passaggio predefinito a Wayland, la sostituzione di iptables con nftables, l'aggiornamento dei componenti di base (kernel 4.18, GCC 8), l'uso del gestore di pacchetti DNF al posto di YUM, e l'adozione di un repository modulare, con la cessazione del supporto per KDE e Btrfs.
Chiave :
- Il passaggio al gestore di pacchetti con la fornitura di un livello di compatibilità con Yum a livello di opzioni della riga di comando. Rispetto a Yum, DNF ha una velocità di esecuzione notevolmente superiore e un consumo di memoria ridotto, gestisce le dipendenze in modo più efficiente e supporta il raggruppamento dei pacchetti in moduli;
- Divisione in un repository di base BaseOS e un repository modulare AppStream. In BaseOS viene distribuito il set minimo di pacchetti necessario per il funzionamento del sistema, tutto il resto è nel repository AppStream. AppStream può essere utilizzato in due modalità: come repository RPM classico e come repository in formato modulare.
Il repository modulare offre set di pacchetti rpm raggruppati in moduli, il cui supporto è gestito indipendentemente dalle versioni della distribuzione. I moduli possono essere utilizzati per installare versioni alternative di una certa applicazione (ad esempio, è possibile installare PostgreSQL 9.6 o PostgreSQL 10). L'organizzazione modulare consente all'utente di passare a nuove versioni significative dell'applicazione senza attendere un nuovo rilascio della distribuzione e di rimanere su versioni precedenti, ma ancora supportate, dopo l'aggiornamento della distribuzione. I moduli includono l'applicazione di base e le librerie necessarie per il suo funzionamento (possono essere utilizzati altri moduli come dipendenze);
- Come desktop predefinito è stato proposto con l'implementazione predefinita di un server display basato su Wayland. L'ambiente basato su X.Org Server è disponibile come opzione. Sono stati esclusi i pacchetti con desktop KDE, è rimasta solo la supporto per GNOME;
- Il pacchetto del kernel Linux si basa sulla versione . Come compilatore predefinito è stato scelto . La libreria di sistema Glibc è stata aggiornato alla versione .
- Come implementazione predefinita del linguaggio di programmazione Python è stato utilizzato Python 3.6. È fornito un supporto limitato per Python 2.7. Python non è incluso nella fornitura di base, deve essere installato separatamente. Sono state aggiornate le versioni di Ruby 2.5, PHP 7.2, Perl 5.26, Node.js 10, Java 8 e 11, Clang/LLVM Toolset 6.0, .NET Core 2.1, Git 2.17, Mercurial 4.8, Subversion 1.10. È inclusa un sistema di build CMake (3.11);
- Nel programma di installazione Anaconda è stato aggiunto il supporto per l'installazione del sistema su dispositivi NVDIMM;
- Nel programma di installazione e nel sistema è stata aggiunta la possibilità di crittografare i dischi utilizzando il formato LUKS2, che ha sostituito il formato LUKS1 precedentemente utilizzato (in dm-crypt e cryptsetup, LUKS2 è ora offerto per impostazione predefinita). LUKS2 è notevole per la sua gestione semplificata delle chiavi, la possibilità di utilizzare settori di grandi dimensioni (4096 invece di 512, riduce il carico durante la decrittografia), identificatori simbolici delle partizioni (label) e strumenti di backup dei metadati con la possibilità di recupero automatico da una copia in caso di danni.
- È stata aggiunta una nuova utility Composer, che fornisce strumenti per la creazione di immagini di sistema di avvio personalizzate, adatte per il deployment in ambienti di diverse piattaforme cloud;
- È stata rimossa la supporto per il file system Btrfs. Non sono più inclusi il modulo del kernel btrfs.ko, le utility btrfs-progs e il pacchetto snapper;
- È stato incluso un toolkit , che fornisce strumenti per unificare e semplificare la configurazione e la gestione di pool di uno o più dischi locali. Stratis è implementato come un layer (daemon stratisd), costruito sopra la sottosistema devicemapper e XFS, e permette di utilizzare funzionalità come l'allocazione dinamica dello spazio di archiviazione, snapshot, garanzia di integrità e creazione di layer per la cache, senza la necessità di essere un esperto di amministrazione dei sistemi di archiviazione;
- Sono state implementate politiche di configurazione crittografica a livello di sistema, che coprono protocolli TLS, IPSec, SSH, DNSSec e Kerberos. Con il comando update-crypto-policies ora è possibile scegliere uno dei
modi di selezione degli algoritmi crittografici: default, legacy, future e fips. Per impostazione predefinita è attivato il rilascio con supporto per TLS 1.3; - È fornito il supporto a livello di sistema per smart card e HSM (Hardware Security Modules) con token crittografici PKCS#11;
- Con l'arrivo del filtro dei pacchetti nftables, che ora è utilizzato per impostazione predefinita, si è assistito all'unificazione delle interfacce di filtraggio dei pacchetti per IPv4, IPv6, ARP e bridge di rete. Nftables offre a livello di kernel solo un'interfaccia comune, indipendente dal protocollo specifico, che fornisce funzioni di base per l'estrazione e la gestione dei dati dai pacchetti e il controllo del flusso. La logica di filtraggio e i gestori specifici per i protocolli vengono compilati in bytecode nello spazio utente, successivamente questo bytecode viene caricato nel kernel attraverso l'interfaccia Netlink e viene eseguito in una speciale macchina virtuale simile a BPF (Berkeley Packet Filters). Il demone firewalld è stato aggiornato per utilizzare nftables come backend predefinito. Sono state aggiunte utilità come iptables-translate e ip6tables-translate per convertire le vecchie regole.
- Per garantire la connettività di rete tra più contenitori, è stata aggiunta la supporto per i driver per costruire reti virtuali IPVLAN.
- Il pacchetto base include un server http nginx (1.14). Apache httpd è stato aggiornato alla versione 2.4.35 e OpenSSH alla 7.8p1.
Tra i database disponibili nei repository ci sono MySQL 8.0, MariaDB 10.3, PostgreSQL 9.6/10 e Redis 4.0. Il database MongoDB non è incluso a causa di una nuova licenza SSPL, che non è ancora riconosciuta come open source.
- I componenti per la virtualizzazione sono stati modernizzati. Di default, quando si creano macchine virtuali, viene utilizzato il tipo (emulazione del chipset ICH9) con supporto per PCI Express. Ora è possibile utilizzare l'interfaccia web Cockpit per creare e gestire macchine virtuali. L'interfaccia virt-manager è stata dichiarata obsoleta. QEMU è stato aggiornato alla versione . In QEMU è stato implementato un modo di isolamento sandbox che limita le chiamate di sistema che i componenti QEMU possono utilizzare.
- È stato aggiunto il supporto per meccanismi di tracciamento basati su eBPF, inclusi strumenti come SystemTap (4.0). Sono stati inclusi strumenti per la costruzione e il caricamento di programmi BPF.
- È stato aggiunto il supporto sperimentale per il sottosistema XDP (eXpress Data Path), che consente l'esecuzione di programmi BPF a livello del driver di rete in Linux, con accesso diretto al buffer DMA dei pacchetti e nella fase precedente all'allocazione del buffer skbuff da parte dello stack di rete.
- È stato incluso uno strumento boom per gestire le impostazioni del bootloader. Boom semplifica operazioni come la creazione di nuove voci di avvio, ad esempio in caso di necessità di avvio da uno snapshot LVM. Boom è limitato solo all'aggiunta di nuove voci di avvio e non può essere utilizzato per modificare quelle esistenti.
- È stato integrato un toolkit leggero per la gestione di contenitori isolati, utilizzando per la costruzione dei contenitori , per l'avvio — e per la ricerca di immagini pronte — ;
- Le funzionalità relative alla clustering sono state ampliate. Il gestore delle risorse di clustering Pacemaker è stato aggiornato alla versione 2.0. Nello strumento sono state garantite piene compatibilità con Corosync 3, knet e risoluzione per nome dei nodi.
- Sono stati dichiarati obsoleti e non sono più forniti per impostazione predefinita gli script classici per la configurazione della rete (network-scripts). Per garantire la retrocompatibilità, invece degli script ifup e ifdown sono stati aggiunti dei wrapper sul NetworkManager che funzionano tramite lo strumento nmcli.
- pacchetti: crypto-utils, cvs, dmraid, empathy, finger, gnote, gstreamer, ImageMagick, mgetty, phonon, pm-utils, rdist, ntp (sostituito da chrony), qemu (sostituito da qemu-kvm), qt (sostituito da qt5-qt), rsh, rt, rubygems (ora incluso nel pacchetto principale ruby), system-config-firewall, tcp_wrappers, wxGTK.
- È stata preparata un'immagine di base universale (UBI, ) per la creazione di contenitori isolati, inclusa la possibilità di creare contenitori per singole applicazioni. L'UBI include un ambiente minimale ridotto, runtime-extensions per supportare linguaggi di programmazione (nodejs, ruby, python, php, perl) e un insieme di pacchetti aggiuntivi nel repository.
Fonte: opennet.ru
