Alpine Linux
| Alpine Linux | |
|---|---|
| Первый выпуск | 2006[2] |
| Последняя версия |
|
| Менеджеры пакетов | Alpine package manager[вд] |
| Поддерживаемые платформы | X86, x86-64, ARM architecture, IBM System/390, ppc64[вд] и RISC-V |
| Лицензия | GNU GPL 2[3], лицензия MIT[3] и 2-пунктная лицензия BSD[3] |
| Репозиторий исходного кода | gitlab.alpinelinux.org |
| Веб-сайт | alpinelinux.org (англ.) |
Alpine Linux —дистрибутив Linux, ориентированный на безопасность, легковесность и нетребовательность к ресурсам. В основном используется во встраиваемых системах[4][5][6][7][8][9], стал основойPostmarketOS[10], также хорошо подходит для созданияDocker-контейнеров[11][12][13][14]. Основан наmusl иBusyBox, используетPaX иgrsec по умолчанию в ядре и компилирует все пакеты с защитой стека от переполнения[15].
Для обеспечения безопасности в дистрибутиве применяются:
- свежие (актуальные) версии ядраLinux и других пакетов, напримерiptables,openssl;
- применение патчей, увеличивающих безопасность, на все компоненты системы, помимо ядра;
- довольно частый релизный цикл, поддерживающий актуальность дистрибутива на высоком уровне.
Размер базовой системы Alpine Linux составляет всего лишь 4-5 Мбайт (исключая ядро). Контейнер требует не более 8 МБ, а для минимальной установки на диск требуется около 130 МБ.[4]
С целью повышения безопасности все программыпространства пользователя компилируются какposition-independent executable сзащитой от повреждения стека.
История
[править |править код]Первоначально был ответвлением проектаLEAF[англ.][16]: большинство разработчиков проекта LEAF хотело продолжать разрабатывать дистрибутив Linux, который мог поместиться на одной дискете, тогда как разработчики Alpine Linux желали включить ещё несколько тяжёлых пакетов, таких какSquid иSamba, а также дополнительные функции безопасности и новое ядро. Одна из первоначальных целей заключалась в создании основы для большой системы, сейчас это не является главной целью проекта[17].
До выпуска 3.7 дистрибутив поставлялся с hardened-ядром (патчиPaX иgrsec) с целью уменьшения возможного вреда от уязвимостей.[18]
Особенности
[править |править код]В дистрибутиве реализована собственная система управления пакетамиapk-tools, которая изначально была набором скриптов командной оболочки (shell scripts), но позже была переписана разработчиками на Си. Alpine на данный момент включает в себя такие пакеты, какKDE,GNOME,Xfce,Firefox и другие.
По умолчанию Alpine Linux во время запуска полностью загружается в оперативную память.
Первоначально в дистрибутиве в качествестандартной библиотеки языка Си использоваласьuClibc вместо традиционной библиотекиglibc, несмотря на лёгкий вес, у неё есть существенный недостаток — онабинарно несовместима с glibc, таким образом, всё программное обеспечение было скомпилировано с использованием uClibc для корректной работы. Однако с 9 апреля 2014 года[19] Alpine Linux стала использовать библиотекуmusl[20], которая является частично бинарно совместимой с glibc[21].
В качествесистемы инициализации, в отличие от других дистрибутивов, таких какDebian,Ubuntu,Arch Linux иCentOS, вместоsystemd[22] используетсяOpenRC.
Примечания
[править |править код]- ↑Alpine 3.23.2 released — 2025.
- ↑Crunchbase (англ.) — 2007.
- ↑123Shiz ...Alpine License information — 2017.
- ↑12About | Alpine Linux.About (англ.). Дата обращения: 17 апреля 2012. Архивировано 30 апреля 2012 года.
- ↑Review: Alpine Linux is made for Docker | InfoWorld . Дата обращения: 15 июня 2018. Архивировано 15 июня 2018 года.
- ↑Alpine Linux 2 review | LinuxBSDos.com . Дата обращения: 26 августа 2015. Архивировано 5 сентября 2015 года.
- ↑Security-Oriented Alpine Linux 3.7 Has UEFI Support, GRUB Support in Installer . Дата обращения: 15 июня 2018. Архивировано 15 июня 2018 года.
- ↑10 Most Secure Linux Distros For Complete Privacy & Anonymity | 2017 Edition . Дата обращения: 15 июня 2018. Архивировано 15 июня 2018 года.
- ↑Is Docker ditching Ubuntu Linux? Confusion reigns | Network World . Дата обращения: 15 июня 2018. Архивировано 16 июня 2018 года.
- ↑Aiming for a 10 year life-cycle for smartphones (англ.). postmarketos.org. Дата обращения: 19 марта 2022. Архивировано 2 октября 2017 года.
- ↑Nunez, Steven. Review: Alpine Linux is made for Docker (англ.). InfoWorld (10 июля 2017). Дата обращения: 26 июня 2018. Архивировано 15 июня 2018 года.
- ↑Nunez, Steven. Review: The best Linux distros for Docker and containers (англ.). InfoWorld (30 октября 2017). Дата обращения: 26 июня 2018. Архивировано 25 июня 2018 года.
- ↑Noyes, Katherine. Is Docker ditching Ubuntu Linux? Confusion reigns (англ.). InfoWorld (10 февраля 2016). Дата обращения: 26 июня 2018. Архивировано 27 июня 2018 года.
- ↑Alpine Linux Goes All In for Docker (англ.). eWEEK. Дата обращения: 26 июня 2018.
- ↑about | Alpine Linux (англ.). www.alpinelinux.org. Дата обращения: 19 января 2016. Архивировано 15 января 2016 года.
- ↑The Search Engine that Does at InfoWeb.net (англ.). Архивировано 14 мая 2016 года.
- ↑Alpine 2.2.0 — Linux-дистрибутив для роутеров и брандмауэров — Новости (nixp.ru) . Дата обращения: 3 мая 2022. Архивировано 12 мая 2014 года.
- ↑Alpine 3.8.0 released | Alpine Linux . alpinelinux.org. Дата обращения: 27 апреля 2022. Архивировано 3 июля 2022 года.
- ↑Alpine 3.0.0 released | Alpine Linux (англ.). Дата обращения: 15 июня 2018. Архивировано 28 января 2021 года.
- ↑Alpine Linux has switched to musl libc | Alpine Linux (англ.). Дата обращения: 10 февраля 2015. Архивировано 10 февраля 2015 года.
- ↑musl FAQ (англ.). Дата обращения: 10 февраля 2015. Архивировано 20 февраля 2015 года.
- ↑Alpine Linux Init System — Alpine Linux (англ.). Дата обращения: 15 июня 2018. Архивировано 16 ноября 2020 года.
Ссылки
[править |править код]- alpinelinux.org — официальный сайт Alpine Linux
- Jesse Smith. Exploring Alpine Linux 3.2.0 (англ.). DistroWatch.com (6 июня 2015). Дата обращения: 26 августа 2015.
- Alpine Linux 2 review (англ.). LinuxBSDos.com (23 августа 2010). Дата обращения: 26 августа 2015.