Po dwuletnim rozwoju zadebiutował Debian 13 „Trixie”, dostępny dla ośmiu oficjalnie wspieranych architektur: Intel IA-32/x86 (i686), AMD64/x86-64, ARM EABI (armel), ARM64, ARMv7 (armhf), RISC-V, PowerPC 64 (ppc64el) oraz IBM System z (s390x). Aktualizacje dla Debiana 13 będą wydawane przez 5 lat.
Dostępne są obrazy instalacyjne, które można pobrać za pośrednictwem HTTP, jigdo lub BitTorrent. Dla architektury amd64 opracowano LiveUSB, dostępne w wariantach z GNOME, KDE, LXDE, Xfce, Cinnamon i MATE, a także wieloarchitektoniczny DVD, łączący pakiety dla platformy amd64 z dodatkowymi pakietami dla architektury i386. Przed migracją z Debiana 12 należy zapoznać się z następującym dokumentem.
W repozytorium znajduje się 69830 binarnych pakietów, co oznacza wzrost o 5411 pakietów w porównaniu do Debiana 12. W porównaniu z Debianem 12 dodano 14116 nowych binarnych pakietów, usunięto 8844 (12%) przestarzałych lub porzuconych pakietów, zaktualizowano 44326 (63%) pakietów. Całkowity rozmiar wszystkich proponowanych w dystrybucji źródeł tekstowych wynosi 1 463 291 186 linii kodu. Całkowity rozmiar wszystkich pakietów to 403 GB.
Dla 96,9% pakietów zapewniono wsparcie dla reprodukowalnych kompilacji, co pozwala potwierdzić, że plik wykonywalny został zbudowany z zadeklarowanych źródeł i nie zawiera niepożądanych zmian, które mogą powstać na przykład w wyniku ataku na infrastrukturę kompilacyjną lub backdoora w kompilatorze.
Kluczowe zmiany w Debianie 13.0:
- Dodano oficjalny port dystrybucji dla systemów opartych na 64-bitowej architekturze RISC-V.
- Dodano port „loong64” dla systemów opartych na architekturze zestawu instrukcji LoongArch, stosowanej w procesorach Loongson 3 5000, która realizuje ISA RISC, podobnego do MIPS i RISC-V. Port nie jest wliczany do liczby oficjalnie wspieranych.
- Usunięto porty „mipsel” i „mips64el” dla systemów opartych na architekturze MIPS. Port „mipsel” był jednym z najstarszych wspieranych portów Debiana, starszym zaledwie od portu dla procesorów i386. Przyczyną usunięcia były problemy techniczne, takie jak ograniczenie rozmiaru pamięci w przestrzeni użytkownika do 2 GB oraz problemy ze kompilacją.
- Zaprzestano tworzenia oficjalnych zestawów instalacyjnych i pakietów z jądrem dla 32-bitowych systemów x86, ale zachowano możliwość korzystania z oficjalnie wspieranego repozytorium pakietów oraz repozytorium multi-arch, możliwości wdrożenia 32-bitowych środowisk w izolowanych kontenerach i narzędzi do budowy aplikacji 32-bitowych. Architektura i386 w Debianie jest teraz ograniczona do wsparcia uruchamiania 32-bitowych aplikacji w 64-bitowym środowisku x86_64 (przy budowie wykorzystuje się instrukcje SSE2, które nie są dostępne w większości 32-bitowych procesorów wspieranych w Debianie 12).
- Całkowicie rozwiązano problem związany z rokiem 2038. Wszystkie pakiety zostały przetłumaczone na użycie 64-bitowego typu time_t w portach dystrybucji dla 32-bitowych architektur, które wciąż korzystały z 32-bitowego typu time_t (nie może być używany do obsługi czasu po 19 stycznia 2038 roku z powodu przepełnienia licznika sekund, które upłynęły od 1 stycznia 1970 roku).
- W instalatorze zmieniono logikę zarządzania partycjami EFI oraz dodano tryb odzyskiwania systemów zainstalowanych w podzielniku Btrfs. Wykluczono firmware, które nie są wymagane podczas instalacji, nie mogą działać bez wolnych pakietów lub są bezużyteczne przy aktualnych ustawieniach jądra. Zaprzestano wsparcia dla grub-legacy i win32-loader. Wznowiono wsparcie dla używania znaków nie-ASCII w pełnym imieniu użytkownika. Dodano wsparcie dla płyt i urządzeń: Pine64 Pinebook, MNT Reform 2, AM64x HummingBoard-T, Pine64 Star64, Wandboard rev D1 oraz laptopów i tabletów opartych na ARM SoC Snapdragon X Elite.
- Do instalatora i wersji Live dodano tryb zdalnego uruchamiania "HTTP Boot", w którym obrazy rozruchowe są dostarczane za pomocą protokołu HTTP (adres URL obrazu ISO jest wprowadzany w interfejsie firmware UEFI lub U-Boot).
- Do przechowywania katalogu z plikami tymczasowymi /tmp wykorzystano system plików tmpfs, który wykorzystuje zamontowany w pamięci RAM dysk RAM, który może być wprowadzany do obszaru swap, gdy brakuje wolnej pamięci. Użycie tmpfs pozwala zmniejszyć liczbę operacji zapisu na fizycznym nośniku, zmniejszyć zużycie energii dysków twardych, wydłużyć żywotność dysków SSD i zwiększyć wydajność pracy z plikami tymczasowymi. Aby przywrócić przechowywanie /tmp w zwykłym systemie plików, można użyć polecenia "systemctl mask tmp.mount".
- Wykluczono polecenia last, lastb i lastlog, które były powiązane z plikami /var/log/wtmp, /var/log/btmp, /var/run/utmp i /var/log/lastlog, korzystającymi z 32-bitowego typu time_t, który nie może zostać zastąpiony 64-bitowym bez zmiany ABI Glibc i naruszenia kompatybilności z aplikacjami. Zamiast tych narzędzi zaleca się użycie narzędzi wtmpdb, lastlog2 i lslogins.
- Do wykrywania i montowania szyfrowanych systemów plików wykorzystano pakiet systemd-cryptsetup.
- W systemach z architekturą AMD64 i ARM64 wykorzystano rozszerzenia Intel CET (Control-flow Enforcement Technology), ARM PAC (Pointer Authentication) i BTI (Branch Target Identification) w celu ochrony przed exploitami wykorzystującymi techniki orientacji na powroty (ROP — Return-Oriented Programming). Przy użyciu techniki ROP atakujący nie stara się umieścić swojego kodu w pamięci, lecz operuje już istniejącymi w załadowanych bibliotekach kawałkami instrukcji maszynowych, kończącymi się instrukcją powrotu (zwykle są to zakończenia funkcji bibliotecznych). Działanie exploita sprowadza się do budowy łańcucha wywołań podobnych bloków („gadżetów”) w celu uzyskania potrzebnej funkcjonalności. Istota ochrony polega na tym, że po przekazaniu kontroli funkcji, adresy powrotne są zapisywane przez procesor nie tylko w zwykłej stosie, ale także w osobnym stosie cieniowym, który nie może zostać zmieniony bezpośrednio.
- Dodano wsparcie dla narzędzia run0, dostarczanego w systemd do uruchamiania procesów pod identyfikatorami innych użytkowników. Narzędzie to zostało zaimplementowane jako nakładka na polecenie systemd-run i przedstawiane jest jako bezpieczniejsza alternatywa dla programu sudo.
- Zastosowano gałąź menedżera pakietów APT 3.0, w której przeprojektowano interfejs użytkownika, aktywowano silnik rozwiązywania zależności Solver3, dodano wsparcie dla migawek, wstrzymano użycie narzędzia apt-key, dodano backend kryptograficzny dla biblioteki OpenSSL i zrealizowano polecenie 'dist-clean'.
- Dodano polecenie debian-repro-status do sprawdzania stanu reprodukcyjnego pakietów zainstalowanych w bieżącym systemie.
- Zakończono migrację dystrybucji z użycia oddzielnej partycji /usr na podejście, w którym katalogi /bin, /sbin i /lib* są przedstawiane jako dowiązania symboliczne do odpowiednich katalogów wewnątrz /usr.
- Jądro Linux zostało zaktualizowane do wersji 6.12. Wykorzystano nowe wydania systemd 257, bash 5.2.37, Glibc 2.41, OpenSSL 3.5.
- W skład wchodzą wydania środowisk graficznych GNOME 48, KDE Plasma 6.3, LXDE 13, LXQt 2.1.0 i Xfce 4.20. Zaktualizowano stos graficzny.
- Zaktualizowano aplikacje użytkowe, takie jak LibreOffice 25.2, GIMP 3.0.2, Inkscape 1.4, Vim 9.1.
- Zaktualizowano aplikacje serwerowe, takie jak BIND 9.20, Postfix 3.10, Exim 4.98, PostgreSQL 17, MariaDB 11.8, nginx 1.26, OpenJDK 21, OpenSSH 10.0, Samba 4.22, QEMU 10.0, Docker 26.1.5, Xen 4.20.
- Zaktualizowano narzędzia deweloperskie, takie jak GCC 14.2, LLVM/Clang 19, Perl 5.40, PHP 8.4, Python 3.13, Rust 1.85, Go 1.24.
Źródło: opennet.ru
