После более двух лет разработки состоялся релиз Debian GNU/Linux 9.0 (Stretch), доступный для десяти официально поддерживаемых архитектур, среди которых: Intel IA-32/x86 (i686), AMD64 / x86-64, ARM EABI (armel), 64-bit ARM (arm64), ARMv7 (armhf), MIPS (mips, mipsel, mips64el), PowerPC 64 (ppc64el) и IBM System z (s390x). Обновления для Debian 9 “Stretch” будут выпускаться в течение 5 лет. Релиз посвящён Яну Мердоку, основателю проекта, ушедшему из жизни в декабре 2015 года.

В репозитории представлено 25357 исходных и 51687 бинарных пакетов, что примерно на 8 тысяч больше, чем было предложено в Debian 8. По сравнению с Debian 8.0 добавлено 15346 новых бинарных пакетов, удалено 6739 (13%) устаревших или заброшенных пакетов, обновлено 29859 (57%) пакетов. В подготовке нового выпуска приняли участие 1436 разработчиков. Для более 90% пакетов обеспечена поддержка повторяемых сборок, позволяющих подтвердить, что исполняемый файл собран именно из заявленных исходных текстов и не содержит посторонних изменений, подстановка которых, например, может быть совершена путём атаки на сборочную инфраструктуру или закладки в компиляторе.

Для загрузки доступны DVD-образы, загрузить которые можно по HTTP, jigdo или BitTorrent. Полный установочный комплект занимает 12 DVD или 2 Blu-ray диска (плюс 8 DVD с исходными текстами пакетов). Формирование образов в форме CD-дисков прекращено, за исключением сборки на базе Xfce и netinst.
Также сформирован неофициальный установочный образ, включающий в себя проприетарные прошивки. Для архитектур amd64 и i386 разработаны LiveUSB, доступные в вариантах с GNOME, KDE и Xfce, а также многоархитектурный DVD, сочетающий пакеты для платформы amd64 с дополнительными пакетами для архитектуры i386.

Ключевые изменения в Debian 9.0:

  • В инсталляторе по умолчанию задействован графический режим установки. Текстовый режим переведён в разряд полностью поддерживаемой опции. В качестве архитектуры по умолчанию в multi-arch образах теперь предлагается amd64 вместо i386. В инсталлятор добавлена возможность использования утилиты GNU/screen для формирования многооконного консольного интерфейса. Обеспечена возможность загрузки пакетов через защищённое соединение с зеркал, поддерживающих HTTPS.

    В debootstrap по умолчанию задействован перенос всех исполняемых файлов и библиотек из корневых директорий в /usr. Каталоги /bin, /sbin и /lib* теперь унифицированы с соответствующими каталогами внутри /usr и оформлены через символические ссылки на них. Подобная реструктуризация позволяет избавиться от путаницы с размещением файлов и упрощает поддержание пакетов;

  • Прекращено формирование полных наборов образов на CD, которые включали более 80 компакт-дисков и почти не востребованы пользователями. Поставка минималистичных CD-образов netinst продолжена, так же сохранена однодисковая CD-сборка для десктоп-систем на базе Xfce;
  • Добавлена поддержка 64-разрядной архитектуры mips64el (little-endian MIPS);
  • Прекращена поддержка 32-разрядной архитектуры PowerPC (поддержка 64-разрядной архитектуры ppc64el сохранена в полном объёме);
  • В сборах для архитектуры i386 повышены требования к процессорам: работа теперь возможна только при наличии CPU класса i686. Поддержка процессоров старее выпущенного 20 лет назад Pentium Pro прекращена. В качестве libc6 теперь предложен libc6-i686, в GCC по умолчанию включена сборка для CPU 686 и изменены настройки ядра Linux (686, non-PAE). Обладателям старых CPU рекомендуется использовать Debian 8 “Jessie”, в котором поддержка старых процессоров продлится до 2018 или 2020 года;
  • Помимо iptables для управления пакетным фильтром в состав включён инструментарий nftables;
  • Обновлены версии системных компонентов: ядро Linux 4.9, Glibc 2.24, systemd 232, GCC 6;
  • Пользователю предлагаются графические окружения GNOME 3.22, KDE Plasma 5.8, MATE 1.16, Xfce 4.12, LXDE, LXQt 0.11. Для установки предлагается два офисных пакета LibreOffice 5.2 и Calligra 2.9;
  • Обновлены средства разработки, в том числе GCC обновлён с версии 4.9 до 6.3, PHP с 5.6 до 7.0, Perl 5.24, Python 2.7.13 и 3.5.3, OpenJDK 8, Golang 1.7, Ruby 2.3;
  • Обновлены серверные приложения, в том числе BIND 9.10, Exim 4.88, Nginx 1.10, Postfix 3.1, PostgreSQL 9.6, Samba 4.5, Apache httpd 2.4.25, Asterisk 13.14.1,
  • X-сервер теперь избавлен от setuid-флага, не требует повышенных привилегий и может работать под обычным пользователем. Для работы графической подсистемы без root требуется наличие KMS-драйверов, logind и libpam-systemd. Запуск X-сервера без root пока поддерживается только в дисплейном менеджере gdm3;
  • Пакеты с MySQL заменены на эквивалентные пакеты с MariaDB (MySQL 5.5 и 5.6 во время обновления будут автоматически заменены на MariaDB 10.1). Метапакеты mysql-server и default-mysql-server теперь также приводят к установке MariaDB. Пакеты с MySQL будут поддерживаться только в ветке unstable;
  • Большая часть пакетов с библиотеками, включающими отладочную информацию, перенесена в отдельный репозиторий dbg-sym, который требует явного добавления строки “deb http://deb.debian.org/debian-debug/ stretch-debug main” в sources.list;
  • Для повышения безопасности исполняемые файлы в пакетах теперь собраны в режиме PIE (“position independent executables”) и поддерживают рандомизацию адресного пространства (ASLR);
  • Инструментарий GnuPG (GNU Privacy Guard), предоставляющий утилиты для шифрования данных, работы с электронными подписями, управления ключами и доступа к публичным хранилищам ключей, обновлён до ветки GnuPG 2.1. По сравнению с ранее поставляемой веткой GnuPG 1.4.x в новом GnuPG задействована модульная архитектура, добавлена поддержка шифрования по эллиптическим кривым (ECC), улучшена поддержка смарткарт, выведены из обихода устаревшие алгоритмы и форматы (например, PGPv3). Ветка GnuPG 1.4 всё ещё доступна в форме пакета gnupg1, но он объявлен устаревшим;
  • В пакетном менеджере APT блокирована обработка ненадёжных алгоритмов для вычисления контрольных сумм, например, apt по умолчанию не примет пакет с SHA1. Операции загрузки пакетов и индексных файлов теперь производятся от непривилегированного пользователя “_apt”;

    Решены проблемы с выводом предупреждения “hash sum mismatch”, возникающие при запуске APT во время синхронизации зеркал, файлы с метаданными теперь загружаются по имени, образованному от хеша по содержимому (разбивка by-hash). Расширены возможности по выбору зеркал — APT теперь может использовать SRV-записи в DNS для определения HTTP-бэкенда для загрузки, что позволяет обойтись силами DNS для управления бэкендами без задействования отдельного сервиса для проброса запросов;

  • Введено в строй новое зекало deb.debian.org, через которое доступно содержимое архива main, обновления с исправлением уязвимостей, порты и архив с отладочными пакетами. Работа зеркала построена на базе появившихся в APT средств выбора бэкенда через DNS, но предусмотрен откат на обычную схему редиректа при запросе через HTTPS или при обращении со старых версий APT;
  • Осуществлён переход к схеме предсказуемого именования сетевых интерфейсов, в соответствии с которой вместо eth0, eth1 и т.п. к сетевому адаптеру будет привязываться фиксированное имя, которое не изменится при добавлении/удалении других адаптеров. По умолчанию имена устройств формируются в зависимости от возможностей прошивки. Если прошивка/BIOS предоставляет индексированные номера интерфейсов, то для встроенных сетевых интерфейсов будет использовано имя “enoN”, а для PCI-плат — “ensN”. Иначе будет выбрано именование enpNsM, учитывающее физическое соединение устройства, а если параметры подобного размещения будут недоступны — будет использована классическая схема ethX. Для устройств с интерфейсом USB имя будет формироваться с учётом данных из MAC-адреса (например, enx78e7d1ea46da);
  • Значительно расширена поддержка UEFI. В том числе обеспечена возможность установки 64-разрядного ядра на системы с 32-разрядными UEFI-прошивками и добавлена возможность загрузки Live-сборок с использованием UEFI;
  • В репозитории расширено число поддерживаемых командой Debian Med метапакетов med-*, позволяющих установить подборки программ, связанные с биологией и медициной;
  • В состав дистрибутива возвращены обычные Firefox и Thunderbird, вместо которых последние 10 лет поставлялись ответвления Iceweasel и Icedove. Возвращение стало возможным после того, как проект Mozilla сделал для дистрибутива Debian исключение в области использования своих торговых марок.