Дистрибутив Linux [a] (часто сокращенно distro ) — это операционная система , созданная из набора программного обеспечения, включающего ядро Linux и часто систему управления пакетами . Их часто можно получить с веб-сайта каждого дистрибутива, которые доступны для самых разных систем, начиная от встраиваемых устройств (например, OpenWrt ) и персональных компьютеров (например, Linux Mint ) до серверов (например, Red Hat Enterprise Linux ) и мощных суперкомпьютеров (например, Rocks Cluster Distribution ).
Типичный дистрибутив Linux включает в себя ядро Linux, систему инициализации (например, systemd , OpenRC или runit ), инструменты и библиотеки GNU , документацию и многие другие типы программного обеспечения (например, утилиты конфигурации IP -сети и программа настройки TTY getty , среди прочего). Дополнительно, для обеспечения рабочего стола (чаще всего графические драйверы пользовательского пространства Mesa ) может быть включен сервер отображения (наиболее распространенным является X.org Server , или, в последнее время, композитор Wayland, такой как Sway , KDE KWin , или GNOME Mutter ) , среда рабочего стола (чаще всего GNOME , KDE Plasma или Xfce ), звуковой сервер (обычно PulseAudio или , в последнее время, PipeWire ) и другие связанные программы, которые могут быть включены в дистрибутив или могут быть установлены пользователем.
Большая часть включенного программного обеспечения является бесплатным и открытым исходным кодом, доступным как в виде скомпилированных двоичных файлов , так и в виде исходного кода , что позволяет вносить изменения в оригинальное программное обеспечение. Обычно дистрибутивы Linux опционально включают некоторое фирменное программное обеспечение , которое может быть недоступно в виде исходного кода, например, двоичные BLOB-объекты, необходимые для некоторых драйверов устройств . [1]
Дистрибутив Linux также можно описать как определенный набор приложений и служебного программного обеспечения (например, различные инструменты и библиотеки GNU), упакованного с ядром Linux таким образом, что его возможности удовлетворяют потребности многих пользователей. [2] Программное обеспечение обычно адаптируется к дистрибутиву, а затем объединяется в программные пакеты сопровождающими дистрибутива. Программные пакеты доступны в сети в репозиториях , которые являются хранилищами, обычно распределенными по всему миру. [3] [4] Помимо «связующих» компонентов, таких как установщики дистрибутивов (например, Debian-Installer и Anaconda ) и системы управления пакетами, очень немногие пакеты на самом деле написаны сопровождающими дистрибутива.
Существует почти тысяча дистрибутивов Linux . [5] [6] Из-за огромной доступности программного обеспечения дистрибутивы приняли самые разные формы, включая те, которые подходят для использования на настольных компьютерах , серверах, ноутбуках, нетбуках , мобильных телефонах и планшетах, [7] [8], а также в минимальных средах, обычно используемых во встраиваемых системах. [9] [10] Существуют коммерчески поддерживаемые дистрибутивы, такие как Fedora Linux ( Red Hat ), openSUSE ( SUSE ) и Ubuntu ( Canonical Ltd. ), и полностью поддерживаемые сообществом дистрибутивы, такие как Debian , Slackware , Gentoo и Arch Linux . Большинство дистрибутивов готовы к использованию и предварительно скомпилированы для определенного набора инструкций , в то время как некоторые (например, Gentoo ) распространяются в основном в виде исходного кода и должны быть скомпилированы локально для установки. [11]
Линус Торвальдс разработал ядро Linux и распространил его первую версию, 0.01, в 1991 году. Linux изначально распространялся только в виде исходного кода , а затем в виде пары загружаемых образов дискет : один загрузочный и содержащий само ядро Linux, а другой с набором утилит GNU и инструментов для настройки файловой системы. Поскольку процедура установки была сложной, особенно в условиях растущего количества доступного программного обеспечения, появились дистрибутивы, упрощающие ее. [13]
Ранние дистрибутивы включали:
Два самых старых, все еще активных проекта дистрибуции начались в 1993 году. Дистрибутив SLS не поддерживался должным образом, поэтому в июле 1993 года Патриком Фолькердингом был выпущен новый дистрибутив на основе SLS, Slackware . [24] Также недовольный SLS, Ян Мердок решил создать свободный дистрибутив, основав Debian в августе 1993 года, первая публичная BETA-версия была выпущена в январе 1994 года, а первая стабильная версия — в июне 1996 года. [25] [26]
Пользователи были привлечены к дистрибутивам Linux как к альтернативам операционным системам DOS и Microsoft Windows на IBM PC-совместимых компьютерах, Mac OS на Apple Macintosh и проприетарным версиям Unix . Большинство ранних последователей были знакомы с Unix по работе или в школе. Они приняли дистрибутивы Linux из-за их низкой (или отсутствующей) стоимости и доступности исходного кода для большинства или всего их программного обеспечения.
По состоянию на 2024 год Linux стал более популярным на рынках серверов и встраиваемых устройств, чем на рынке настольных компьютеров. Он используется примерно в 58,9% веб-серверов; [27] его текущая доля рынка операционных систем составляет около 3,67%. [28]
Многие дистрибутивы Linux предоставляют систему установки, схожую с той, что предоставляется другими современными операционными системами. Другие дистрибутивы, включая Gentoo Linux , предоставляют только двоичные файлы базового ядра, инструменты компиляции и установщик; установщик компилирует все запрошенное программное обеспечение для конкретной архитектуры компьютера пользователя, используя эти инструменты и исходный код программного обеспечения.
Дистрибутивы обычно сегментируются в пакеты . Каждый пакет содержит определенное приложение или службу. Примерами пакетов являются библиотека для обработки формата изображения PNG , коллекция шрифтов и веб-браузер .
Пакет обычно предоставляется в виде скомпилированного кода, при этом установка и удаление пакетов выполняется системой управления пакетами (PMS), а не простым архиватором файлов . Каждый пакет, предназначенный для такой PMS, содержит метаинформацию, такую как его описание, номер версии и его зависимости (другие пакеты, необходимые для запуска). Система управления пакетами оценивает эту метаинформацию, чтобы разрешить поиск пакетов, выполнять автоматические обновления до новых версий и проверять наличие всех зависимостей пакета (и либо уведомлять пользователя об их установке, либо устанавливать их автоматически). Пакет также может быть предоставлен в виде исходного кода для компиляции в системе.
Большинство дистрибутивов устанавливают пакеты, включая ядро и другие основные компоненты операционной системы, в предопределенной конфигурации. Некоторые теперь требуют или разрешают корректировку конфигурации при первой установке. Это делает установку менее пугающей, особенно для новых пользователей, но не всегда приемлемо. Для определенных требований большая часть программного обеспечения должна быть тщательно настроена, чтобы быть полезной, правильно работать с другим программным обеспечением или быть безопасной, и локальные администраторы часто вынуждены тратить время на его проверку и повторную настройку.
Некоторые (но не все) дистрибутивы прилагают значительные усилия для настройки и кастомизации входящего в них программного обеспечения, а некоторые предоставляют инструменты настройки, помогающие пользователям в этом.
Получив и установив все, что обычно предоставляется в дистрибутиве, администратор может создать установку "без дистрибутивов". Можно построить такие системы с нуля, избегая дистрибутивов вообще. Нужен способ генерировать первые двоичные файлы, пока система не станет самостоятельным хостингом . Это можно сделать с помощью компиляции на другой системе, способной создавать двоичные файлы для предполагаемой цели (возможно, с помощью кросс-компиляции ). Например, см. Linux From Scratch .
В широком смысле дистрибутивы Linux могут быть:
Разнообразие дистрибутивов Linux обусловлено техническими, организационными и философскими различиями между поставщиками и пользователями. Разрешительное лицензирование свободного ПО означает, что пользователи с достаточными знаниями и интересом могут настроить любой существующий дистрибутив или разработать его в соответствии со своими собственными потребностями.
Дистрибутивы Rolling Linux поддерживаются в актуальном состоянии с помощью небольших и частых обновлений . Термины частично rolling и частично rolling (вместе с синонимами semi-rolling и half-rolling ), полностью rolling , истинно rolling и опционально rolling иногда используются разработчиками и пользователями программного обеспечения. [29] [30] [31] [32] [33] [34]
Репозитории скользящих дистрибутивов обычно содержат самые последние выпуски программного обеспечения — часто последние доступные стабильные версии. [31] У них есть псевдорелизы и установочные носители, которые являются просто снимками дистрибутива на момент выпуска установочного образа. Обычно операционная система с скользящим релизом, установленная со старого установочного носителя, может быть полностью обновлена после установки. [31] [35]
В зависимости от варианта использования могут быть свои плюсы и минусы как в стандартной, так и в непрерывной методологии разработки программного обеспечения . [36]
С точки зрения процесса разработки программного обеспечения , стандартные выпуски требуют значительных усилий по разработке для поддержания старых версий в актуальном состоянии путем распространения исправлений ошибок обратно в новейшую ветку, а не сосредоточения на новейшей ветке разработки . Кроме того, в отличие от скользящих выпусков, стандартные выпуски требуют разработки и поддержки более чем одной ветки кода, что увеличивает нагрузку на разработчиков и сопровождающих программного обеспечения.
С другой стороны, функции программного обеспечения и планирование технологий проще в стандартных выпусках из-за лучшего понимания предстоящих функций в следующей версии(ях). Циклы выпуска программного обеспечения также могут быть синхронизированы с циклами крупных проектов программного обеспечения, таких как среды рабочего стола .
Что касается пользовательского опыта , стандартные выпуски часто рассматриваются как более стабильные и свободные от ошибок, поскольку конфликты программного обеспечения можно легче устранить, а программный стек можно более тщательно протестировать и оценить в ходе цикла разработки программного обеспечения. [36] [37] По этой причине они, как правило, являются предпочтительным выбором в корпоративных средах и для критически важных задач. [36]
Однако скользящие выпуски предлагают более актуальное программное обеспечение, которое также может обеспечить повышенную стабильность и меньшее количество программных ошибок вместе с дополнительными преимуществами новых функций, большей функциональности, более высокой скорости работы и улучшенной безопасности системы и приложений . Что касается безопасности программного обеспечения , модель скользящего выпуска может иметь преимущества в своевременных обновлениях безопасности, исправлении ошибок и уязвимостей безопасности системы или приложений , которые стандартным выпускам, возможно, придется ждать до следующего выпуска или исправления в различных версиях. В дистрибутиве скользящего выпуска, где пользователь решил запустить его как высокодинамичную систему, постоянный поток программных пакетов может вносить новые непреднамеренные уязвимости. [36]
«Живой» дистрибутив — это дистрибутив Linux, который можно загрузить со съемных носителей, таких как оптические диски или USB-флеш-накопители , вместо установки и загрузки с жесткого диска . Переносимость дистрибутивов без установки делает их выгодными для таких приложений, как демонстрации, заимствование чужого компьютера, спасательные операции или в качестве установочного носителя для стандартного дистрибутива.
Когда операционная система загружается с носителя, доступного только для чтения, например, с CD или DVD, любые пользовательские данные, которые необходимо сохранить между сеансами, не могут быть сохранены на загрузочном устройстве, а должны быть записаны на другое устройство хранения, например, на USB-флеш-накопитель или жесткий диск. [38]
Многие дистрибутивы Linux предоставляют «живую» форму в дополнение к своей обычной форме, которая представляет собой сетевой или съемный носитель, предназначенный только для установки; такие дистрибутивы включают SUSE , Ubuntu, Linux Mint , MEPIS и Fedora Linux . Некоторые дистрибутивы, включая Knoppix , Puppy Linux , Devil-Linux, SuperGamer , SliTaz GNU/Linux и dyne:bolic , разработаны в первую очередь для живого использования. Кроме того, некоторые минимальные дистрибутивы могут быть запущены непосредственно с небольшого пространства, например, с одной дискеты, без необходимости изменения содержимого жесткого диска системы. [39]
Сайт DistroWatch перечисляет множество дистрибутивов Linux и отображает некоторые из тех, которые имеют наибольший веб-трафик на сайте. Фонд Wikimedia опубликовал анализ пользовательских агентов браузеров посетителей веб-сайтов WMF до 2015 года, который включает в себя сведения о самых популярных идентификаторах операционных систем, включая некоторые дистрибутивы Linux. [40] Многие из популярных дистрибутивов перечислены ниже.
Некоторые операционные системы включают в себя ядро Linux, но имеют пользовательское пространство, которое существенно отличается от такового в основных дистрибутивах Linux:
Считать ли такие операционные системы «дистрибутивом Linux» — спорный вопрос. Они используют ядро Linux, поэтому Linux Foundation [41] и Крис ДиБона , [42] бывший руководитель отдела открытого исходного кода Google, согласны, что Android — это дистрибутив Linux; другие, такие как инженер Google Патрик Брэди, не согласны, отмечая отсутствие поддержки многих инструментов GNU в Android, включая glibc . [43]
Другие операционные системы на базе ядра Linux включают Tizen , Mer / Sailfish OS , KaiOS и прошивку Kindle от Amazon .
Легкие дистрибутивы Linux — это те, которые были разработаны с учетом поддержки старого оборудования, позволяя использовать старое оборудование продуктивно или для максимально возможной скорости на новом оборудовании, оставляя больше ресурсов для использования приложениями. Примерами являются Tiny Core Linux , Puppy Linux и Slitaz .
Другие дистрибуции нацелены на конкретные ниши, такие как:
Free Standards Group — это организация, созданная крупными поставщиками программного и аппаратного обеспечения, которая стремится улучшить взаимодействие между различными дистрибутивами. Среди предлагаемых ими стандартов — Linux Standard Base , определяющий общий ABI и систему упаковки для Linux, и Filesystem Hierarchy Standard , который рекомендует стандартную схему именования файлов, в частности, основные имена каталогов, находящиеся в корне дерева любой файловой системы Linux. Однако эти стандарты имеют ограниченное применение даже среди дистрибутивов, разработанных членами организации. [ необходима цитата ]
Разнообразие дистрибутивов Linux означает, что не все программное обеспечение работает во всех дистрибутивах, в зависимости от того, какие библиотеки и другие системные атрибуты требуются. Упакованное программное обеспечение и репозитории программного обеспечения обычно специфичны для конкретного дистрибутива, хотя кросс-установка иногда возможна на близкородственных дистрибутивах. [ необходима цитата ]
Существует несколько способов установки дистрибутива Linux. Наиболее распространенный способ установки Linux — загрузка с флешки Live USB , которую можно создать с помощью приложения для записи образов USB и образа ISO, который можно загрузить с различных веб-сайтов дистрибутивов Linux. DVD-диски, CD-диски, сетевые установки и даже другие жесткие диски также могут использоваться в качестве «установочных носителей». [45]
В 1990-х годах дистрибутивы Linux устанавливались с помощью наборов дискет , но от этого отказались все основные дистрибутивы. К 2000-м годам многие дистрибутивы предлагали наборы CD и DVD с важными пакетами на первом диске и менее важными пакетами на последующих. Некоторые дистрибутивы, такие как Debian, также позволяли установку по сети после загрузки либо с набора дискет, либо с CD с небольшим количеством данных на нем. [46]
Новые пользователи, как правило, начинают с разбиения жесткого диска на разделы, чтобы сохранить ранее установленную операционную систему. Затем дистрибутив Linux может быть установлен на его собственный отдельный раздел, не затрагивая ранее сохраненные данные. [47]
В установке Live CD компьютер загружает всю операционную систему с CD без предварительной установки ее на жесткий диск компьютера. Во многих дистрибутивах есть установщик Live CD , где компьютер загружает операционную систему с диска, а затем ее можно установить на жесткий диск компьютера, обеспечивая плавный переход от ОС, запущенной с CD, к ОС, запущенной с жесткого диска.
Серверы и персональные компьютеры , поставляемые с уже установленной ОС Linux, можно приобрести у таких поставщиков, как Hewlett-Packard , Dell и System76 .
На встраиваемых устройствах Linux обычно содержится в прошивке устройства и может быть или не быть доступным для потребителя.
Anaconda , один из самых популярных установщиков, используется Red Hat Enterprise Linux , Fedora (которая использует Fedora Media Writer ) и другими дистрибутивами для упрощения процесса установки. Debian, Ubuntu и многие другие используют Debian-Installer .
Процесс постоянного переключения между дистрибутивами часто называют «переходом с дистрибутива на дистрибутив». [48] [49] Программное обеспечение для виртуальных машин, такое как VirtualBox и VMware Workstation, виртуализирует оборудование, позволяя пользователям тестировать живые медиа на виртуальной машине без установки на реальную систему. Некоторые веб-сайты, такие как DistroWatch, предлагают списки дистрибутивов и ссылки на скриншоты операционных систем, чтобы получить первое впечатление о различных дистрибутивах.
Некоторые дистрибутивы позволяют пользователю устанавливать Linux поверх своей текущей системы, например WinLinux или coLinux . Linux устанавливается на раздел жесткого диска Windows и может быть запущен из самой Windows.
Виртуальные машины (такие как VirtualBox или VMware ) также позволяют запускать Linux внутри другой ОС. Программное обеспечение VM имитирует отдельный компьютер, на котором установлена система Linux. После установки виртуальную машину можно загрузить так, как если бы она была независимым компьютером.
Также доступны различные инструменты для выполнения полной установки с двойной загрузкой с существующих платформ без компакт-диска, в частности:
Некоторые конкретные проприетарные программные продукты не доступны ни в какой форме для Linux. По состоянию на сентябрь 2015 года игровой сервис Steam имел более 1500 игр, доступных для Linux, по сравнению с 2323 играми для Mac и 6500 играми для Windows. [51] [52] Проекты эмуляции и API-трансляции, такие как Wine и CrossOver, позволяют запускать не-Linux-программное обеспечение в системах Linux, либо путем эмуляции проприетарной операционной системы, либо путем трансляции проприетарных вызовов API (например, вызовов Win32 или DirectX API от Microsoft) в собственные вызовы Linux API. Виртуальная машина также может использоваться для запуска проприетарной ОС (например, Microsoft Windows) поверх Linux.
Компьютерное оборудование обычно продается с операционной системой, отличной от Linux, уже установленной производителем оригинального оборудования (OEM). В случае совместимых с IBM PC ОС обычно является Microsoft Windows ; в случае компьютеров Mac от Apple это всегда была macOS ; Sun Microsystems продавала оборудование SPARC с установленной Solaris ; игровые консоли , такие как Xbox , PlayStation , Wii и Nintendo Switch , имеют свою собственную фирменную ОС. Это ограничивает долю рынка Linux: потребители не знают о существовании альтернативы, они должны приложить сознательные усилия, чтобы использовать другую операционную систему, и они должны либо выполнить фактическую установку самостоятельно, либо зависеть от поддержки друга, родственника или компьютерного специалиста.
Однако можно купить оборудование с уже установленным Linux. Lenovo , Hewlett-Packard , Dell , Affordy, [53] Purism , Pine64 и System76 продают универсальные ноутбуки с Linux. [54] Производители ПК по индивидуальному заказу также будут собирать системы Linux, но, возможно, с клавишей Windows на клавиатуре. Fixstars Solutions (ранее Terra Soft) продает компьютеры Macintosh и консоли PlayStation 3 с установленным Yellow Dog Linux .
Чаще всего встраиваемые устройства продаются с Linux в качестве поддерживаемой производителем ОС по умолчанию, включая устройство Linksys NSLU2 NAS, линейку персональных видеорегистраторов TiVo , а также сотовые телефоны на базе Linux (включая смартфоны Android), КПК и портативные музыкальные плееры.
Текущая лицензия Microsoft Windows позволяет производителю определять политику возврата средств. [55] В предыдущих версиях Windows можно было получить возврат средств, если производитель не предоставлял возврат средств, путем судебного разбирательства в судах мелких тяжб. [56] 15 февраля 1999 года группа пользователей Linux в округе Ориндж, штат Калифорния, провела акцию протеста «День возврата средств Windows», пытаясь оказать давление на Microsoft с целью вернуть им деньги. [57] Во Франции организации Linuxfrench и AFUL (Ассоциация франкоязычных пользователей свободного программного обеспечения) вместе с активистом свободного программного обеспечения Роберто Ди Космо начали движение «Windows Detax», [58] которое привело к петиции 2006 года против «racketiciels» (перевод: Racketware ), собравшей 39 415 подписей, а также к подаче отделением DGCCRF французского правительства нескольких жалоб на поставляемое в комплекте программное обеспечение. 24 марта 2014 года AFUL запустила на платформе Avaaz [59] новую международную петицию, переведенную на несколько языков и поддержанную многими организациями по всему миру.
Официальных данных о популярности, принятии, загрузках или установленной базе дистрибутивов Linux нет .
Также нет официальных данных по общему количеству систем Linux, [60] [61] отчасти из-за сложности количественной оценки количества ПК, работающих под управлением Linux (см. Принятие Linux на рабочем столе ), поскольку многие пользователи загружают дистрибутивы Linux. Следовательно, цифры продаж систем Linux и коммерческих дистрибутивов Linux указывают на гораздо меньшее количество систем Linux и уровень принятия Linux , чем есть на самом деле; это в основном связано с тем, что Linux является бесплатным и открытым программным обеспечением , которое можно загрузить бесплатно . [60] [62] Проект Linux Counter отслеживал текущую приблизительную оценку количества систем Linux, но не делал различий между выпусками с плавающим релизом и стандартными выпусками. Он прекратил работу в августе 2018 года, хотя несколько связанных сообщений в блоге были созданы до октября 2018 года. [63]
Статистические отчеты об использовании настольных компьютеров для отдельных дистрибутивов Linux собираются и публикуются с июля 2014 года [64] проектом Linux Hardware Project.
{{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка )