Debian поддерживает множество архитектур, соответственно, может быть установлен на широкий спектр устройств. На текущий момент (середина 2023) актуальной версией Debian является версия 12 (bookworm), она официально поддерживает 9 архитектур.
Приведем список архитектур:
- amd64 — архитектура обычного (IBM PC совместимого) ПК с 64 битным процессором Intel или AMD. Не надо пугаться слова «amd» в названии архитектуры, оно в нём по историческим причинам (первый 64 битный процессор для IBM PC совместимого ПК выпустила AMD). Intel не приняла такого названия (что неудивительно), и называет архитектуру x86_64 (но правильное название — amd64). В некоторых источниках эту архитектуру называют x86_64, x64, или 64-bit. В 99% случаев для вашего сервера или десктопа нужна именно она. По ветке Intel 64 битные процессоры начинаются с Socket 775, а по ветке AMD — с Socket 754.
- i386 — архитектура обычного (IBM PC совместимого) ПК с 32 битным процессором Intel или AMD (старую экзотику типа Cyrix, IBM и пр. не рассматриваем). В некоторых источниках эту архитектуру называют x86, IA-32, или 32-bit. Название этой архитектуры в проекте Debian сохранилось по историческим причинам — по факту в Debian 12 используется i686. То есть минимальные процессоры для установки Debian 12 — процессоры на Socket 8 (Pentium PRO) или Slot 1 (Celeron II/Pentium II/Xeon II). Последними 32 битными процессорами по ветке Intel были процессоры на Socket 478, а по ветке AMD на Socket A (462). Если у вас более новый процессор — используйте amd64. Даже при малых объемах ОЗУ не стоит использовать на 64 битном процессоре 32 битную архитектуру ради небольшой экономии памяти (из-за сокращения длины указателей) — много современного софта для 32 бит уже не собирают, да и общая производительность 32 битных приложений на 64 битном процессоре будет на 10-15% ниже. Также не стоит использовать эту архитектуру на современных компьютерах — архитектура имеет ограничение по максимальному объему ОЗУ — не более 4 ГБ из-за 32 битной адресации (по факту не более 3.5 ГБ). Кстати, в 32 битном Debian 12 по умолчанию ставится ядро с поддержкой PAE, которое позволяет смягчить это ограничение путем перехода от 32 битной к 36 битной виртуальной адресации, из-за чего ограничение объема ОЗУ двигается до 64 ГБ, но каждый процесс все равно не может адресовать более 3.5 ГБ. Если вы все же хотите использовать 32 битную архитектуру на компьютере с малым объемом ОЗУ (< 3 ГБ) ради экономии ОЗУ — используйте ядро без PAE (установить пакет linux-image-686 и удалить пакет linux-image-686-pae), отсутствие PAE немного прибавит скорости. По итогу, 32 битная архитектура — устаревшая, скорее всего вам нет смысла ее использовать. Многие дистрибутивы отказались от ее поддержки. Аналогичные разговоры велись и в Debian, но, как видим, архитектура пока живет.
- aarch64 (ARMv8) — архитектура 64 битного ARM (с порядком байт от младшего к старшему, little-endian). Данную архитектуру имеют почти все современные ARM процессоры. Примеры устройств с такими процессорами: Raspberry Pi Zero 2/Raspberry Pi 3 и новее, более менее свежие Orange Pi/другие одноплатные компьютеры, устройства от Pine64, более менее свежие TV боксы и смарфоны, свежие компьютеры от Apple, и многое другое.
- armhf (ARMv7 с плавающей точкой) — архитектура старых 32 битных ARM процессоров (с порядком байт от младшего к старшему, little-endian) с аппаратным сопроцессором (с модулем для операций с плавающей точкой: hf — hard float). Устройств на этой архитектуре осталось довольно мало, например, Raspberry Pi 2, старые андройд приставки, старые смартфоны.
- armel (ARMv5T, ARMv6, ARMv7 без плавающей точки) — архитектура старых 32 битных ARM процессоров (с порядком байт от младшего к старшему, little-endian) без аппаратного сопроцессора (без модуля для операций с плавающей точкой: el — emulation). Для операций с дробными числами процессор представляет их в целочисленном формате, выполняет операции, затем выполняет обратный перевод в дробный формат. Устройств на этой архитектуре осталось совсем мало. Например, Raspberry Pi 1, очень старые андройд боксы или очень старые смартфоны.
- mipsel — 32 битная архитектура MIPS (с порядком байт от младшего к старшему, little-endian), устаревшая в плане PC, но еще худо-бедно живущая в embeded. Хорошим примером будет наш любимый mt7621 в относительно мощных (за свои деньги) роутерах.
- mips64el — 64 битная архитектура MIPS (с порядком байт от младшего к старшему, little-endian), менее популярная, чем ARM, ибо проигрывает в плане энергопотребления и других параметров, но устройства на ней еще живы и даже производятся. Но их очень мало.
- ppc64el — 64 битная архитектура PowerPC (с порядком байт от младшего к старшему, little-endian). Имеет довольно слабую энергоэффективность (из-за чего в свое время Apple перешла с нее на amd64). Устройств на ней осталось уже довольно мало. Примеры устройств: Apple iBook, iBook2, TiBook.
- s390x (S/390, IBM System z) — архитектура мейнфреймов (суперкомпьютеров) от IBM.
О других неофициальных или архивных портах Debian читайте тут.
Кто-то может подумать «пофиг на всю эту поддержку debian, мой дистр хоть и умеет только amd64, но я все сам скопилю под arm», на что я отвечу «удачи потратить на это пару дней и один фиг остаться без репозиториев, ибо придется компилить еще и их»😁. А с debian такой проблемы нет — ставишь его хоть на роутер, хоть на старый тонкий клиент, хоть на что угодно нишевое (даже с даунстрим ядром) — и софт из репозиториев всегда к твоим услугам в пару команд.
Вывод:
Если вы не знаете какая архитектура вам нужна, то в 99% случаев вам нужна amd64.