Dopo due anni di sviluppo il rilascio (), disponibile per dieci architetture ufficialmente supportate : Intel IA-32/x86 (i686), AMD64 / x86-64, ARM EABI (armel), ARM a 64 bit (arm64), ARMv7 (armhf), MIPS (mips, mipsel, mips64el), PowerPC 64 (ppc64el) e IBM System z (s390x). Gli aggiornamenti per Debian 10 verranno rilasciati per 5 anni.
Nel repository sono presenti 57703 pacchetti binari, circa 6000 in più rispetto a quanto offerto in Debian 9. Rispetto a Debian 9 sono stati aggiunti 13370 nuovi pacchetti binari, sono stati rimossi 7278 (13%) pacchetti obsoleti o abbandonati, e 35532 (62%) pacchetti sono stati aggiornati. Per il 91,5% dei pacchetti è supportata la ricostruzione ripetibile, che consente di verificare che l'eseguibile sia stato effettivamente costruito dai sorgenti dichiarati e non contenga modifiche non autorizzate, che potrebbero essere inserite, ad esempio, tramite attacchi all'infrastruttura di costruzione o backdoor nel compilatore.
Per Le immagini DVD, scaricabili tramite , o . Inoltre è disponibile un'immagine di installazione non ufficiale nonfree, contenente firmware proprietari. Per le architetture amd64 e i386 sono stati sviluppati , disponibili in versioni con GNOME, KDE e Xfce, oltre a un DVD multiarchitettura che combina pacchetti per la piattaforma amd64 con ulteriori pacchetti per l'architettura i386. È stato aggiunto il supporto per le immagini avviabili in rete (netboot) per schede SD e un'immagine che può essere contenuta in una chiavetta USB da 16 GB;
in Debian 10.0:
- supporto per UEFI Secure Boot, per il cui funzionamento viene utilizzato il bootloader Shim, firmato digitalmente da Microsoft (shim-signed), insieme alla firma del kernel e del bootloader grub (grub-efi-amd64-signed) con un certificato proprio del progetto (shim funge da intermediario per l'uso delle chiavi del proprio distribuzione). I pacchetti shim-signed e grub-efi-ARCH-signed sono inclusi tra le dipendenze di compilazione per amd64, i386 e arm64. I bootloader e grub, firmati da un certificato di lavoro, sono inclusi nelle immagini EFI per amd64, i386 e arm64. Ricordiamo che inizialmente il supporto per Secure Boot era atteso in Debian 9, ma non è stato stabilizzato in tempo per il rilascio ed è stato rinviato alla successiva importante versione del sistema operativo;
- È attivo per impostazione predefinita il supporto del sistema di controllo degli accessi mandatorio AppArmor, che consente di controllare le autorizzazioni dei processi definendo elenchi di file con i diritti corrispondenti (lettura, scrittura, visualizzazione in memoria e avvio, impostazione di blocco su file, ecc.) per ogni applicazione, oltre a controllare l'accesso alla rete (ad esempio, vietando l'uso di ICMP) e gestire le capacità POSIX. La principale differenza tra AppArmor e SELinux è che SELinux opera con etichette associate all'oggetto, mentre AppArmor definisce le autorizzazioni sulla base del percorso del file, semplificando notevolmente il processo di configurazione. Il pacchetto principale con AppArmor include profili di protezione solo per alcune applicazioni, mentre per le altre si consiglia di utilizzare il pacchetto apparmor-profiles-extra o profili provenienti da pacchetti di specifiche applicazioni;
- Sostituiti un filtro di pacchetti nftables, che ora viene applicato per impostazione predefinita ed è caratterizzato dall'unificazione delle interfacce di filtraggio dei pacchetti per IPv4, IPv6, ARP e ponti di rete. Nftables fornisce a livello del kernel solo un'interfaccia generale, indipendente dal protocollo specifico e che offre funzioni di base per l'estrazione dei dati dai pacchetti, l'esecuzione di operazioni sui dati e la gestione del flusso. La logica di filtraggio e i gestori specifici per i protocolli vengono compilati in bytecode nello spazio utente, dopo di che questo bytecode viene caricato nel kernel tramite l'interfaccia Netlink e viene eseguito in una macchina virtuale speciale, simile ai BPF (Berkeley Packet Filters);
Per impostazione predefinita viene installato il pacchetto iptables-nft, che offre un insieme di utilità per garantire la compatibilità con iptables, con la stessa sintassi della riga di comando, ma traspone le regole ricevute in bytecode nf_tables, eseguito nella macchina virtuale. È disponibile per l'installazione opzionale il pacchetto iptables-legacy, la vecchia implementazione basata su x_tables. I file eseguibili di iptables ora vengono installati in /usr/sbin, invece che in /sbin (per compatibilità vengono create link simboliche);
- Per APT è stata implementata la modalità di isolamento sandbox, attivabile tramite l'opzione APT::Sandbox::Seccomp, che garantisce la filtrazione delle chiamate di sistema utilizzando seccomp-BPF. Per una configurazione più dettagliata delle liste bianche e nere delle chiamate di sistema, è possibile utilizzare le liste APT::Sandbox::Seccomp::Trap e APT::Sandbox::Seccomp::Allow;
- Il kernel Linux è stato aggiornato alla versione 4.19;
- Il desktop GNOME per impostazione predefinita è stato tradotto per utilizzare Wayland, mentre la sessione basata su server X è stata proposta come opzione (il server X è ancora incluso tra i pacchetti della fornitura di base). È stato aggiornato lo stack grafico e gli ambienti utente: , , Cinnamon 3.8, LXDE 0.99.2, , , e Xfce 4.12. Il pacchetto Office LibreOffice è stato aggiornato alla versione , mentre Calligra è stato aggiornato alla versione . Sono stati aggiornati Evolution 3.30, GIMP 2.10.8, Inkscape 0.92.4, Vim 8.1;
- Il pacchetto include un compilatore per il linguaggio Rust (viene fornito Rustc 1.34). Sono stati aggiornati GCC 8.3, LLVM/Clang 7.0.1, OpenJDK 11, Perl 5.28, PHP 7.3, Python 3.7.2;
- Sono state aggiornate le applicazioni server, tra cui Apache httpd 2.4.38, BIND 9.11, Dovecot 2.3.4, Exim 4.92, Postfix 3.3.2, MariaDB 10.3, nginx 1.14, PostgreSQL 11, Samba 4.9 (il kernel supporta SMBv3);
- In cryptsetup è stato effettuato il passaggio al formato di crittografia dischi LUKS2 (in precedenza si utilizzava LUKS1). LUKS2 presenta un sistema di gestione delle chiavi semplificato, la possibilità di utilizzare settori di grande dimensione (4096 invece di 512, riduce il carico durante la decrittazione), identificatori simbolici per le partizioni (label) e strumenti per il backup dei metadati con possibilità di ripristino automatico da copia in caso di danno. Durante l'aggiornamento, le partizioni esistenti LUKS1 verranno automaticamente convertite in un formato compatibile con LUKS2, ma a causa delle limitazioni delle dimensioni dell'intestazione, non tutte le nuove funzionalità saranno disponibili per esse;
- Nell'installer è stata aggiunta la possibilità di utilizzare più console contemporaneamente durante il processo di installazione. È stato rimosso il supporto per ReiserFS. Per Btrfs è stato aggiunto il supporto per la compressione ZSTD (libzstd). È stato aggiunto il supporto per i dispositivi NVMe;
- In debootstrap è attivata di default l'opzione "--merged-usr", che sposta tutti i file eseguibili e le librerie dalle directory radice nella partizione /usr (le directory /bin, /sbin e /lib* sono impostate come collegamenti simbolici alle corrispondenti directory all'interno di /usr). La modifica viene applicata solo per nuove installazioni, durante l'aggiornamento si mantiene la vecchia disposizione delle directory;
- Nel pacchetto unattended-upgrades, oltre all'installazione automatica di aggiornamenti legati alla sicurezza, è ora attivato per impostazione predefinita anche l'aggiornamento alle versioni intermedie (Debian 10.1, 10.2 e simili);
- I componenti del sistema di stampa sono stati aggiornati a e cups-filters 1.21.6 con supporto completo per AirPrint, DNS-SD (Bonjour) e IPP Everywhere per la stampa senza l'installazione preventiva dei driver;
- Aggiunto il supporto per schede basate su processori Allwinner A64, come FriendlyARM NanoPi A64, Olimex A64-OLinuXino, TERES-A64, PINE64 PINE A64/A64/A64-LTS, SOPINE, Pinebook, SINOVOIP Banana Pi BPI-M64 e Xunlong Orange Pi Win(Plus);
- Espanso il numero di metapacchetti med-* supportati dal team Debian Med, che consentono di installare , correlate alla biologia e alla medicina;
- Supporto per i sistemi guest Xen in modalità PVH garantito;
- In OpenSSL è stato disabilitato il supporto per i protocolli TLS 1.0 e 1.1, con TLS 1.2 dichiarata come versione minima supportata;
- Molti pacchetti obsoleti e non più supportati sono stati rimossi, inclusi Qt 4 (è rimasto solo Qt 5), phpmyadmin, ipsec-tools, racoon, ssmtp, ecryptfs-utils, mcelog, revelation. In Debian 11, il supporto per Python 2 terminerà;
- È stato creato un porting per l'architettura a 64 bit RISC-V, che non era incluso tra quelli ufficialmente supportati in Debian 10. Attualmente per RISC- circa il 90% del numero totale di pacchetti;
- Negli ambienti Live è iniziato l'uso di un installer modulare sviluppato in modo indipendente con un'interfaccia basata su Qt, che viene anche utilizzata per organizzare l'installazione delle distribuzioni Manjaro, Sabayon, Chakra, NetRunner, KaOS, OpenMandriva e KDE neon. Nelle normali build di installazione continua ad essere utilizzato debian-installer.
In aggiunta a quelle precedentemente disponibili, è stato formato un ambiente Live con desktop LXQt e un ambiente Live senza interfaccia grafica, solo con strumenti da console, che costituiscono il sistema di base. L'ambiente Live console può essere utilizzato per un'installazione molto rapida della distribuzione, poiché a differenza delle tradizionali immagini di installazione, viene eseguita la copia di uno snapshot già pronto delle directory, senza estrarre pacchetti singoli tramite dpkg.
Fonte: opennet.ru
