Arch Linux | |
---|---|
![]() | |
![]() | |
Разработчик |
Джадд Винет, Аарон Гриффин |
Семейство ОС | Linux |
Первый выпуск | март 2002 |
Последняя тестовая версия |
|
Метод обновления | Rolling release |
Менеджеры пакетов | Pacman |
Поддерживаемые платформы |
x86-64 неофициальные порты: PowerPC, ARM |
Тип ядра | Linux |
Лицензия | GNU GPL и лицензия свободного программного обеспечения |
Состояние | активное |
Репозиторий исходного кода | git.archlinux.org |
Веб-сайт | archlinux.org (англ.) |
![]() |
Arch Linux — независимый дистрибутив GNU/Linux общего назначения, оптимизированный для архитектуры x86-64, который стремится предоставить последние стабильные версии программ, следуя модели rolling release. По умолчанию пользователю предоставляется минималистичная базовая система, в которую пользователь может добавить то, что ему требуется. Для установки, удаления и обновления пакетов используется пакетный менеджер Pacman[2][3][4][5][6][7][8].
В официальных репозиториях Arch Linux содержится преимущественно свободное ПО, однако дистрибутив не одобрен FSF, так как Arch придерживается лояльной политики в отношении несвободного ПО[9]. Проект GNU рекомендует к установке основанный на Arch Linux дистрибутив Parabola[10]. В настоящее время в официальных репозиториях насчитывается около 11 000 пакетов[11], в AUR около 54 000[12].
Arch Linux распространяется, в основном, в виде готовых пакетов двоичных файлов, хотя допускает сборку из исходного кода, кроме того все пакеты из AUR собираются на машине пользователя. В некоторой степени, Arch напоминает дистрибутив Slackware, но, в отличие от последнего, осуществляет контроль зависимостей пакетов. Бинарные пакеты Arch Linux собраны для архитектуры x86-64, что обеспечивает высокую производительность на современных компьютерах. Существуют неофициальные версии и для других архитектур (к примеру, PowerPC и ARM), а также несколько ответвлений.
У Arch Linux есть обширный раздел документации в поддомене ArchWiki[13], основанный на MediaWiki, который поддерживается разработчиками и сообществом. Документация переведена на десятки языков, однако не все переводы содержат наиболее актуальную информацию. В документации также можно найти официальное руководство по установке[14].
Благодаря наличию обширной документации и отсутствию графического установщика, Arch представляет большой академический интерес для тех, кто хочет освоить Linux.
Arch Linux является независимым дистрибутивом, разработанным с нуля. Создатель дистрибутива Джадд Винет вдохновлялся CRUX, но мнение о том, что Arch основан на CRUX, ошибочно. На Arch основаны такие дистрибутивы, как Antergos, Parabola GNU, ArchBang, Arch Hurd, Chakra, ConnochaetOS, Manjaro и другие[15].
В конце января 2017 года разработчики сообщили, что прекращают поддержку 32-разрядной версии[16]. Поддержка образов и пакетов для процессоров x86 будет продолжена сообществом[17]. Как выяснилось позже сообщество Parabola GNU/Linux-libre неофициально продолжило поддержку x86[18].
Ведётся много дебатов на тему правильного произношения названия. Создатель Джадд Винет произносит Arch на тот же манер, что и archer или parchment (по-русски примерно звучит как «арч»). При другом произношении может возникнуть путаница с Ark Linux.[19]
Философия Arch Linux базируется на нескольких основных принципах[20]:
Так разработчики описывают основные особенности и принципы, на которых базируется Arch:[21]
В отличие от большинства дистрибутивов, установка Arch Linux происходит практически «вручную». Вместо графического установщика предоставляется Grml-кастомизированный[22] zsh в качестве командной оболочки и набор специализированных скриптов (Arch Install Scripts). Для редактирования конфигурационных файлов во время установки доступны текстовые редакторы vi, vim и nano. Во время установки в стартовой рабочей директории можно найти текстовый файл с краткой инструкцией. Более ранние версии системы включали простой установщик с псевдографическим интерфейсом, но его официальная поддержка закончена.
Одной из главных особенностей Arch является пакетный менеджер Pacman, который стремится упростить управление пакетами. По аналогии с другими пакетными менеджерами, для поддержания системы в актуальном состоянии, Pacman синхронизирует списки (базы данных) пакетов с главным сервером Arch, обычно посредством зеркал.
Pacman предоставляет простой и в то же время очень мощный CLI со множеством расширенных возможностей (например таких как выявление пакетных файлов, которые были изменены пользователем или системой).
Для проверки подлинности пакетов Pacman использует GnuPG ключи, которыми пакеты должны быть подписаны[23]. Хотя все официальные пакеты в настоящее время подписаны, работа над подписью баз данных пакетов все еще ведется, однако у пользователей есть возможность включить проверку подписей баз данных.
Arch базируется, в основном, на бинарных пакетах, но способен к прозрачной интеграции пакетов, построенных из исходных кодов (наподобие Gentoo). Управление ими производится с помощью менеджера пакетов Pacman, который управляет установочными пакетами, обновлениями, удалениями и запросами к базе.
Pacman способен самостоятельно найти зависимости, автоматически загрузить и установить все необходимые пакеты. Как правило, пользователю достаточно выполнить только одну команду для полного обновления всей системы.
Начиная с марта 2010 года[24] все пакеты Pacman представляют собой tar-архивы, сжатые по алгоритму сжатия LZMA2, каждый из которых содержит программы в скомпилированном виде и дополнительную информацию. Тем не менее, используемый ранее алгоритм сжатия gzip по-прежнему поддерживается.[25] По поводу именования и формата пакетов велись дебаты. Было принято решение оставить пакеты обычными архивами, так как это позволяет легко извлечь и проанализировать содержимое пакета. Типичное имя файла пакета может выглядеть примерно так linux-4.14.13-1-x86_64.pkg.tar.xz
, где часть суффикса .pkg
говорит о том что в архиве содержится пакет.
Также любые пакеты могут быть собраны из исходных кодов (включая бинарные) с помощью makepkg.
Официальный репозиторий Arch Linux содержит две ветви: официально поддерживаемая (supported) ветвь и пользовательский репозиторий — AUR.[26][27]
Официально поддерживаемая ветвь имеет общий баг-трекер и содержит 7 разделов:[28]
Пакеты из официально поддерживаемой ветви — бинарные (в противоположность AUR), но при желании всегда могут быть собраны из исходных кодов с помощью ABS (или дополнительных приложений, упрощающих процесс, таких как yaourt или pacaur).
AUR (Arch User Repository), поддерживаемый сообществом репозиторий, содержащий PKGBUILD, скрипты для автоматической сборки приложений из исходных кодов при помощи ABS, не вошедшие в основные репозитории. Каждый имеет право добавить понравившееся приложение в репозиторий, просто написав и отослав PKGBUILD, после чего один из Проверенных Пользователей (Trusted User) его проверит, и если все нормально (нет руткитов, и приложение правильно собирается и устанавливается), пометит как Safe (безопасный). Конечная цель пакетов из AUR — миграция в официально-поддерживаемую ветвь (раздел Community); присутствует система голосования (с помощью утилиты aurvote), которая позволяет определить наиболее важных кандидатов для перемещения.[29] Однако пакеты из AUR можно ставить и не дожидаясь попадания в репозиторий Community, для этого можно установить вспомогательный инструмент для работы с AUR (например pacaur, yaourt и многие другие), либо собрать его из исходного кода при помощи makepkg.[30]
В дополнение к официальным, пользователи создают репозитории, в основном содержащие изменённые, дополнительные или более новые версии пакетов.[31] Наиболее популярный из них — репозиторий Archlinux.fr[32].
Утилита abs была упразднена. Deprecation of ABS tool.
Arch Build System (ABS) — это схожая с портами во FreeBSD система сборки бинарных пакетов из исходников. Пакет можно собрать при помощи утилиты makepkg используя специальные скрипты — PKGBUILD. Созданные пакеты могут быть легко установлены и отслеживаться при помощи pacman.[33]
Arch Linux несколько отличался от других дистрибутивов стилем стартовых скриптов до выпуска 2012.08.04. Использовался так называемый стиль BSD вместо System V. Это позволяло свести все настройки по запуску системы, такие как загружаемые модули ядра, программы-демоны, параметры локализации и сетевых интерфейсов, в один файл /etc/rc.conf, имеющий простой и понятный синтаксис.[34]
В настоящее время системой инициализации по умолчанию в Arch Linux является systemd[35]. systemd — достаточно молодая централизованная система инициализации и управления системой Linux, призванная устранить недостатки init, а также собрать множество разрозненных программ и других средств для администрирования системы в одном месте. Мнения по поводу перехода среди пользователей неоднозначны, однако большинство разработчиков, более объективно оценивающих systemd, считают его выгодной заменой init.[36] Как бы то ни было, Arch «будет тем, что вы из него сделаете», и рассчитан не на новичков, а на более опытных пользователей, поэтому замена системы инициализации по умолчанию с sysvinit на systemd несёт чисто формальный характер. Простота sysvinit позволяет пользователю самостоятельно его поддерживать, даже когда официальная его поддержка закончится.
Arch является постоянно обновляемым дистрибутивом, новые версии пакетов появляются ежедневно. С помощью менеджера пакетов пользователи могут поддерживать свою систему в актуальном состоянии. В отличие от дистрибутивов, предлагающих устанавливать сборки в состоянии, в котором они были на момент выхода, сборки Arch являются снимками текущей системы. В силу этого нет необходимости регулярно выпускать новые версии (хотя неопытные пользователи склонны воспринимать это как нежелание разработчиков заниматься развитием дистрибутива).
С момента создания и до версии Voodoo включительно, сборки Arch нумеровались версией дистрибутива (0.1—0.8). Начиная с выпуска 2007.05 (Duke), номер версии имеет формат ГГГГ.ММ
— год и месяц выпуска установочного ISO-образа. В ISO-образ входят только пакеты из репозитория Core. В настоящее время выпуск Core сборок прекращен. Вместо этого выпускаются минималистичные netinstall-сборки, цель которых — загрузиться и создать сетевое подключение, чтобы можно было установить текущую версию системы по сети. Остальные репозитории всегда находятся в текущем состоянии и никак не связаны с выпуском сборок.
Версия | Кодовое имя | Дата | Примечание |
---|---|---|---|
0.1 | Homer | март 2002 | Первый выпуск. |
0.2 | Vega | апрель 2002 | |
0.3 | Firefly | август 2002 | |
0.4 | Dragon | декабрь 2002 | |
0.5[37] | Nova | июль 2003 | Поддержка PAM, LVM и GRUB. |
0.6[38] | Widget | март 2004 | Добавлена поддержка файловых систем JFS и XFS. |
0.7[39] | Wombat | январь 2005 | |
0.8[40] | Voodoo | март 2007 | Расширены возможности программы установки. |
2007.05[41] | Duke | май 2007 | Pacman v3.0 |
2007.08[42] | Don’t Panic | август 2007 | Исправлены ошибки в программе установки. |
2008.06[43] | Overlord | июнь 2008 | Использование .img образов для записи на USB-устройства. |
2009.02[44] | февраль 2009 | Использование AIF (Фреймворк установки Arch). | |
2009.08[45] | август 2009 | Pacman 3.3, использование переработанного AIF (возможность использования LVM и другие изменения), различные улучшения. | |
2010.05[46] | май 2010 | Использование единого образа для записи на CD и USB устройства. Появление dual-образа, помимо отдельных образов для архитектур x86 и x86-64. | |
2011.08[47] | август 2011 | Расширены возможности программы установки | |
2012.07[48] | июль 2012 | Удален AIF, вместо него используются простые установочные скрипты | |
2012.08[49] | август 2012 | GRUB 2.0, ZSH в качестве командной оболочки, автозапуск сети если доступен DHCP. | |
2012.09[50] | сентябрь 2012 | Linux 3.5.3, возможно подключиться к интернету через UMTS USB модем на Live системе | |
2012.10[51] | октябрь 2012 | Используется systemd для загрузки системы, initscripts не доступны на Live системе, упрощены загрузка и установка EFI, gummiboot используется для отрисовки меню в EFI | |
2012.11.01[52] | ноябрь 2012 | Linux 3.6, ConsoleKit удалён из репозиториев, polkit и networkmanager перенесены в extra, загрузка производится с использованием systemd-logind[53] | |
2012.12.01[54] | декабрь 2012 | Linux 3.6.8, systemd 196 | |
2013.01.04 | январь 2013 | Linux 3.6.11 | |
2013.06.01 | июнь 2013 | Linux 3.9.4 | |
2013.07.01 | июль 2013 | Linux 3.9.8 | |
2013.08.01 | август 2013 | Linux 3.10.3 | |
2013.09.01 | сентябрь 2013 | Linux 3.10.10 | |
2013.10.01 | октябрь 2013 | Linux 3.11.2 | |
2014.01.05 | январь 2014 | Linux 3.12.6 | |
2014.02.01 | февраль 2014 | Linux 3.12.9 | |
2014.03.01 | март 2014 | Linux 3.13.5 | |
2014.04.01 | апрель 2014 | Linux 3.13.7 | |
2014.05.01 | май 2014 | Linux 3.14.1 | |
2014.06.01 | июнь 2014 | Linux 3.14.4 | |
2014.07.01 | июль 2014 | Linux 3.15.3 | |
2014.09.03 | сентябрь 2014 | Linux 3.16.1 | |
2014.10.01 | октябрь 2014 | Linux 3.16.3 | |
2014.11.01 | ноябрь 2014 | Linux 3.17.1 | |
2014.12.01 | декабрь 2014 | Linux 3.17.4 | |
2015.01.01 | январь 2015 | Linux 3.17.6 | |
2015.03.01 | март 2015 | Linux 3.18.6 | |
2015.06.01 | июнь 2015 | Linux 4.0.4 | |
2015.08.01 | август 2015 | Linux 4.1.3 | |
2015.12.01 | декабрь 2015 | Linux 4.2.5 | |
2016.01.01 | январь 2016 | Linux 4.3.3 | |
2016.04.01 | апрель 2016 | Linux 4.4.5 | |
2016.05.01 | май 2016 | Linux 4.5.1 | |
2016.06.01 | июнь 2016 | Linux 4.5.4 | |
2016.07.01 | июль 2016 | Linux 4.6.3 | |
2016.08.01 | август 2016 | Linux 4.6.4 | |
2016.09.03 | сентябрь 2016 | Linux 4.7.2 | |
2016.12.01 | декабрь 2016 | Linux 4.8.11 | |
2017.01.01 | январь 2017 | Linux 4.8.13 | |
2017.02.01 | февраль 2017 | Linux 4.9.6 | |
2017.03.01 | март 2017 | Linux 4.9.11 | |
2017.04.01 | апрель 2017 | Linux 4.10.6 | |
2017.05.01 | май 2017 | Linux 4.10.13 | |
2017.06.01 | июнь 2017 | Linux 4.11.3 | |
2017.07.01 | июль 2017 | Linux 4.11.7 | |
2017.08.01 | август 2017 | Linux 4.12.3 | |
2017.09.01 | сентябрь 2017 | Linux 4.12.8 | |
2017.10.01 | октябрь 2017 | Linux 4.13.3 | |
2017.11.01 | ноябрь 2017 | Linux 4.13.9 | |
2017.12.01 | декабрь 2017 | Linux 4.13.12 | |
2018.01.01 | январь 2018 | Linux 4.14.9 | |
2018.02.01 | февраль 2018 | Linux 4.14.15 | |
2018.03.01 | март 2018 | Linux 4.15.6 | |
2018.04.01 | апрель 2018 | Linux 4.15.14 | |
2018.05.01 | май 2018 | Linux 4.16.5 | |
2018.06.01 | июнь 2018 | Linux 4.16.12 | |
2018.07.01 | июль 2018 | Linux 4.17.3 | |
2018.08.01 | август 2018 | Linux 4.17.11 | |
2018.09.01 | сентябрь 2018 | Linux 4.18.5 | |
2018.10.01 | октябрь 2018 | Linux 4.18.9 | |
2018.11.01 | ноябрь 2018 | Linux 4.18.16 | |
2018.12.01 | декабрь 2018 | Linux 4.19.4 | |
2019.03.01 | март 2019 | Linux 4.20.13 |
Условные обозначения:
Прошлый выпуск Последний выпуск
![]() |
Портал «Свободное программное обеспечение» |
---|---|
![]() |
Arch Linux на Викискладе |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .