Gentoo Linux (произносится как /ˈdʒɛn t uː / JEN - too [ 3] ) — дистрибутив Linux , созданный с использованием системы управления пакетами Portage . В отличие от двоичного дистрибутива программного обеспечения , исходный код компилируется локально в соответствии с предпочтениями пользователя и часто оптимизируется для конкретного типа компьютера. Для некоторых пакетов доступны предварительно скомпилированные двоичные файлы. [4] Gentoo работает на самых разных архитектурах процессоров.
Управление пакетами Gentoo разработано как модульное , портативное , простое в обслуживании и гибкое. Gentoo описывает себя как метадистрибутив из-за своей адаптивности, поскольку большинство пользователей имеют конфигурации и наборы установленных программ, которые являются уникальными для системы и приложений, которые они используют. [5]
Gentoo Linux назван в честь пингвина gentoo , самого быстрого плавающего вида пингвинов. Название было выбрано, чтобы отразить потенциальные улучшения скорости машинно-специфической оптимизации, которая является основной особенностью Gentoo.
Gentoo Linux изначально был создан Дэниелом Роббинсом как дистрибутив Enoch Linux . Целью было создание дистрибутива без предварительно скомпилированных двоичных файлов, который был бы настроен на оборудование и включал бы только необходимые программы. [6] По крайней мере одна версия Enoch распространялась под этим названием: версия 0.75, в декабре 1999 года. [7]
Дэниел Роббинс и другие участники экспериментировали с ответвлением GCC , известным как EGCS, разработанным Cygnus Solutions . В этот момент «Enoch» был переименован в «Gentoo» Linux. Изменения EGCS в конечном итоге стали частью официального GCC (версия 2.95), и другие дистрибутивы Linux испытали аналогичное увеличение скорости. [8]
После возникновения проблем с ошибкой в его собственной системе Роббинс остановил разработку Gentoo и переключился на FreeBSD на несколько месяцев, позже заявив: «Я решил добавить несколько функций FreeBSD, чтобы сделать нашу систему автоматической сборки (теперь называемую Portage) настоящей системой портов следующего поколения». [9]
Gentoo Linux 1.0 был выпущен 31 марта 2002 года. [10] В 2004 году Роббинс основал некоммерческий фонд Gentoo Foundation, передал ему все авторские права и товарные знаки и ушел с поста главного архитектора проекта. [11]
Текущий совет попечителей [12] состоит из пяти членов, которые были объявлены (после выборов) 2 марта 2008 года. [13] Совет Gentoo из семи членов курирует соответствующие технические вопросы и политику. [14] Члены Совета Gentoo избираются ежегодно сроком на один год активными разработчиками Gentoo. Когда член Совета уходит в отставку, преемник избирается на его место действующими членами Совета. [15]
Gentoo Foundation — это отечественная некоммерческая корпорация, [16] зарегистрированная в штате Нью-Мексико . [17] В конце 2007 года устав Фонда был отозван, [18] но к маю 2008 года штат Нью-Мексико объявил, что Gentoo Foundation, Inc. восстановила свое добросовестное положение и может свободно заниматься бизнесом. [19]
Создатель Gentoo - Дэниел Роббинс , покидал проект в 2004 и 2007 годах из-за конфликтов с другими разработчиками. [20] [21] [22] [23] [24] [25]
Gentoo предназначен для пользователей Gnu/Linux, которые хотят иметь полный контроль над программным обеспечением, установленным и работающим на их компьютере. [26] : 402 Люди, которые готовы потратить время, необходимое для настройки и настройки системы Gentoo, могут создавать очень эффективные рабочие столы и серверы . [ требуется цитата ] Gentoo призывает пользователей создавать ядро Linux , адаптированное к их конкретному оборудованию. Оно позволяет очень точно контролировать, какие службы устанавливаются и работают, включая возможность выбора между systemd или OpenRC в качестве системы инициализации по умолчанию . Использование памяти также может быть уменьшено по сравнению с другими дистрибутивами путем исключения ненужных функций и служб ядра. [26] : 386
Репозитории пакетов Gentoo предоставляют большую коллекцию программного обеспечения. Каждый пакет содержит сведения о любых зависимостях , поэтому необходимо установить только минимальный набор пакетов. Пользователь может выбрать дополнительные функции отдельных пакетов, например, требуют ли они поддержки LDAP или Qt , и любые результирующие требования к пакетам автоматически включаются в набор зависимостей. [26] : 386
Gentoo не имеет стандартного внешнего вида , установленные пакеты обычно выглядят так, как задумали их авторы. [26] : 387
Portage — это система распространения программного обеспечения и управления пакетами Gentoo . Первоначальный дизайн был основан на системе портов, используемой операционными системами Berkeley Software Distribution (BSD). Репозиторий Gentoo содержит более 19 000 пакетов, готовых к установке в системе Gentoo. [27]
Один вызов команды portage emerge может обновить локальную копию репозитория Gentoo, выполнить поиск пакета или загрузить, скомпилировать и установить один или несколько пакетов и их зависимости. Встроенные функции могут быть установлены для отдельных пакетов или глобально с помощью так называемых «USE-флагов». [27]
Для некоторых приложений с длительным временем сборки, таких как LibreOffice и Mozilla Firefox , предоставляются предварительно скомпилированные двоичные файлы , но пользователи теряют возможность настраивать дополнительные функции. Существуют параметры конфигурации для сокращения времени компиляции, например, включение параллельной компиляции или использование каналов вместо временных файлов. [28] Компиляция пакетов также может быть распределена по нескольким компьютерам. [29] Кроме того, пользователь может иметь возможность монтировать большую файловую систему в памяти для дальнейшего ускорения процесса сборки пакетов. Некоторые подходы имеют недостатки и не включены по умолчанию. При установке одного и того же пакета на несколько компьютеров с достаточно похожим оборудованием пакет может быть скомпилирован один раз и создан двоичный пакет для быстрой установки на другие компьютеры. [30]
29 декабря 2023 года было объявлено, что Gentoo предложит бинарные пакеты для загрузки и прямой установки. Для большинства архитектур это будет ограничено базовой системой и еженедельными обновлениями. Однако для amd64 и arm64 доступность бинарных пакетов достигает более 20 ГБ. [31]
Поскольку Gentoo — это дистрибутив на основе исходного кода с репозиторием, описывающим, как собирать пакеты, добавлять инструкции для сборки на различных архитектурах машин особенно просто. [32]
Первоначально созданный на архитектуре IA-32 , Gentoo с тех пор был портирован на многие другие. Он официально поддерживается и считается стабильным на архитектурах IA-32, x86-64 , PA-RISC , 32- и 64-бит PowerPC , 64-бит SPARC , DEC Alpha и 32- и 64-бит ARM . [33] Он также официально поддерживается, но считается находящимся в стадии разработки на MIPS , [34] PS3 Cell Processor , System Z/s390 . [35] Официальная поддержка 32-бит SPARC, SuperH и Itanium прекращена. [36] [37]
Переносимость на другие операционные системы, такие как производные от Berkeley Software Distribution (BSD), включая macOS , находится в стадии активной разработки в проекте Gentoo/Alt . Проект Gentoo/FreeBSD уже имеет рабочее руководство на основе FreeSBIE , [38] в то время как Gentoo/NetBSD, Gentoo/OpenBSD и Gentoo/DragonFly находятся в стадии разработки. [39] Существует проект по запуску Portage на OpenSolaris . Существовал неофициальный проект по созданию порта Gentoo на GNU Hurd , но он неактивен с 2006 года. [40]
Также возможно установить Gentoo Prefix (предоставляемый проектом, который поддерживает альтернативные методы установки для Gentoo) в среде Cygwin на Windows, но эта конфигурация является экспериментальной. [41]
Gentoo можно установить несколькими способами. Наиболее распространенный способ — использовать Gentoo Minimum CD с архивом stage3 (объясняется ниже). Как и многие дистрибутивы Linux, Gentoo можно установить практически из любой среды Linux, например, с Live CD, Live USB или сетевой загрузки другого дистрибутива Linux с помощью «Gentoo Alternative Install Guide». Обычная установка требует подключения к Интернету, но существует руководство по установке без сети.
3 апреля 2022 года было объявлено, что появится новый официальный образ с графическим интерфейсом пользователя, называемый образом LiveGUI. Его можно установить на установочный носитель, такой как USB-накопитель или двухслойный DVD. Он включает в себя большой выбор программного обеспечения, включая среду рабочего стола KDE Plasma 5 , редакторы изображений, офисное программное обеспечение, системное администрирование и инструменты установки. [42]
Ранее Gentoo поддерживал установку из tarballs stage1 и stage2; однако Gentoo Foundation больше не рекомендует их. Stage1 и stage2 предназначены только для разработчиков Gentoo. [43]
После начальных шагов установки, процесс установки Gentoo Linux в Gentoo Handbook описывает компиляцию нового ядра Linux. Этот процесс, как правило, не требуется для других дистрибутивов Linux. Хотя это широко рассматривается как сложная задача, Gentoo предоставляет документацию и инструменты, такие как Genkernel, для упрощения процесса. Кроме того, пользователи могут также использовать существующее ядро, которое, как известно, работает в их системе, просто скопировав его в загрузочный каталог или установив один из предоставленных предварительно скомпилированных пакетов ядра и обновив свой загрузчик. Поддержка установки предоставляется на форуме Gentoo, [44] Reddit , [45] и IRC . [46]
Live USB Gentoo Linux можно создать вручную, используя различные инструменты или с помощью dd , как описано в руководстве.
До октября 2005 года монтаж можно было начать с любого из трех базовых этапов:
С октября 2005 года официально поддерживаются только установки stage3 из-за присущих сложностей начальной загрузки с более ранних стадий (что требует разрешения и последующего разрыва многочисленных циклических зависимостей ). [47] Архивы для stage1 и stage2 распространялись некоторое время после этого, [ когда? ], хотя инструкции по установке с этих стадий были удалены из руководства [48] и перемещены в Gentoo FAQ. [49] По состоянию на сентябрь 2015 года [обновлять]общедоступны только поддерживаемые архивы stage3; архивы stage1 и stage2 «официально» генерируются и используются только внутри команд разработчиков Gentoo. Однако, если это необходимо, пользователь все равно может перестроить цепочку инструментов или переустановить базовое системное программное обеспечение во время или после обычной установки stage3, эффективно имитируя старый процесс начальной загрузки. [50]
С 2003 по 2008 год Gentoo Reference Platform (GRP) представляла собой снимок предварительно собранных пакетов, которые пользователи могли быстро установить в процессе установки Gentoo, чтобы обеспечить более быстрый доступ к полностью функциональной установке Gentoo. [51] [52] Эти пакеты включали KDE , X Window System , OpenOffice , GNOME и Mozilla . [53] После завершения установки пакеты, установленные как часть GRP, должны были быть заменены пользователем на те же или более новые версии, собранные через Portage, которые будут собраны с использованием конфигурации системы пользователя, а не общих сборок, предоставляемых GRP. С 2011 года GRP прекращает свою работу, последняя ссылка на него появилась в справочнике 2008.0. [54] [ оригинальное исследование? ]
Gentoo следует модели непрерывных выпусков .
Как и в других дистрибутивах Linux, в системах Gentoo есть /etc/gentoo-release
файл, но он содержит версию установленного sys-apps/baselayout
пакета.
В 2004 году Gentoo начал выпускать версии Live media по годам, а не по номерам. Это продолжалось до 2008 года, когда было объявлено, что выпуск Live CD 2008.1 был отменен в пользу еженедельных автоматизированных сборок Stages 3 и Minimal CD. [55] 20 декабря 2008 года были опубликованы первые еженедельные сборки. [56] В 2009 году был создан специальный Live DVD в честь 10-летнего юбилея Gentoo. [57]
В 2009 году был выпущен специальный Live DVD в честь десятой годовщины Gentoo. Изначально запланированный как одноразовый, Live DVD был обновлен до последних версий пакетов в 2011 году из-за его популярности среди новых пользователей.
Хотя Gentoo не имеет концепции версионирования всей системы, он использует «профили», которые определяют конфигурацию сборки для всех пакетов в системе. Основные изменения, такие как изменение макета установки файлов по всей системе, обычно подразумевают обновление профиля и могут потребовать пересборки всего установленного программного обеспечения. Эти профили версионируются на основе года их выпуска и включают несколько вариантов для каждого выпуска, ориентированных на различные типы систем (например, серверы и настольные компьютеры ). Ранее профили отслеживали версионирование установочных носителей и перешли на двузначное наименование года после прекращения поддержки версионированных носителей. Следующие новые версии профилей были выпущены после 2008.0:
Hardened Gentoo — проект, призванный разработать и обозначить набор дополнений, которые полезны, когда требуется более безопасная установка. [88] Ранее проект включал исправления для создания укрепленного ядра, но они были прекращены. Другие части укрепленного набора, такие как SELinux и укрепление пользовательского пространства, остаются. [89]
В июне 2018 года зеркало репозитория кода Gentoo GitHub , используемое в основном разработчиками, было взломано после того, как злоумышленник получил доступ к учетной записи администратора организации, выведя пароль. Gentoo оперативно отреагировала, сдержав атаку и улучшив методы обеспечения безопасности. Никакие криптографические ключи Gentoo или подписанные пакеты не были скомпрометированы, и репозиторий был восстановлен через пять дней. [90] [91] [92] [93] [94]
Считается, что пингвин gentoo — самый быстрый пингвин, плавающий под водой. Название «Gentoo Linux» отражает как талисман Linux — пингвина по имени Tux , так и цель проекта — создать высокопроизводительную операционную систему. [26] : 383
Официальный логотип Gentoo представляет собой стилизованную букву «g», напоминающую серебряную магатаму . [95] Неофициальные талисманы включают Ларри Корову [5] и Знурт Летающую тарелку [96 ]
Существует несколько независимо разработанных вариантов Gentoo Linux, включая ChromiumOS .
Проект Gentoo с гордостью объявляет о выпуске Gentoo Linux 1.0.
произносится как "gen-too" ("g" в "Gentoo" - это мягкое "g", как в "gentle").
Помимо обычной поддержки исходных ebuild-файлов, Portage также поддерживает сборку и установку бинарных пакетов.
{{cite web}}
: CS1 maint: бот: исходный статус URL неизвестен ( ссылка )Robbins, создатель gentoo, вернулся в проект. Ну, через неделю он снова ушел. По сути, drobbins ввязался в эпическую войну с Ciaran McCreesh, популярным, но спорным бывшим разработчиком gentoo, который до сих пор часто посещает списки рассылки gentoo. empers вспыхнули, и drobbins настоял на том, чтобы ciaranm запретили в списке рассылки [email protected], якобы на том основании, что ciaranm больше не является официальным разработчиком gentoo. Остальные разработчики gentoo отказались это сделать. Затем Daniel Robbins покинул проект.
официально вернулся в команду разработчиков Gentoo две недели назад — только чтобы уйти в отставку несколько дней спустя. Причина? Резкие личные нападки со стороны некоторых нынешних разработчиков проекта.
Последняя война Gentoo началась как обсуждение в списке рассылки gentoo-dev тем для мартовского заседания совета Gentoo. Основатель Gentoo Дэниел Роббинс, который вернулся в проект Gentoo в начале той недели после ухода в апреле 2004 г., похоже, был заинтересован в споре с участником Gentoo Сиараном Маккришем о том, является ли спецификация менеджера пакетов (PMS) официальным проектом Gentoo. После того, как обсуждение стало жарким, Роббинс сказал, что он собирается "поискать способ удалить Сиарана из gentoo-dev", а затем позже сказал, что он вообще не хочет ассоциироваться с Gentoo.