Русская Википедия:Alpine Linux
Шаблон:Операционная система Alpine Linux — дистрибутив Linux, ориентированный на безопасность, легковесность и нетребовательность к ресурсам. В основном используется во встраиваемых системах[1][2][3][4][5][6], стал основой PostmarketOS[7], также хорошо подходит для создания Docker-контейнеров[8][9][10][11]. Основан на musl и BusyBox, использует PaX и grsec по умолчанию в ядре и компилирует все пакеты с защитой стека от переполнения[12].
Для обеспечения безопасности в дистрибутиве применяются:
- свежие (актуальные) версии ядра Linux и других пакетов, например iptables, openssl;
- применение патчей, увеличивающих безопасность, на все компоненты системы, помимо ядра;
- довольно частый релизный цикл, поддерживающий актуальность дистрибутива на высоком уровне.
Размер базовой системы Alpine Linux составляет всего лишь 4-5 Мбайт (исключая ядро). Контейнер требует не более 8 МБ, а для минимальной установки на диск требуется около 130 МБ.[1]
С целью повышения безопасности все программы пространства пользователя компилируются как position-independent executable с защитой от повреждения стека.
История
Первоначально был ответвлением проекта Шаблон:Iw[13]: большинство разработчиков проекта LEAF хотели продолжать разрабатывать дистрибутив Linux, который мог поместиться на одной дискете, тогда как разработчики Alpine Linux желали включить ещё несколько тяжёлых пакетов, таких как Squid и Samba, а также дополнительные функции безопасности и новое ядро. Одна из первоначальных целей заключалась в создании основы для большой системы, сейчас это не является главной целью проекта[14].
До выпуска 3.7 дистрибутив поставлялся с hardened-ядром (патчи PaX и grsec) с целью уменьшения возможного вреда от уязвимостей.[15]
Особенности
В дистрибутиве реализована собственная система управления пакетами apk-tools, которая изначально была частью коллекции сценариев (shell scripts), но позже была переписана разработчиками на Си. Alpine на данный момент включает в себя такие пакеты как KDE, GNOME, Xfce, Firefox, и другие.
По умолчанию, Alpine Linux во время запуска полностью загружается в оперативную память.
Первоначально в дистрибутиве в качестве стандартной библиотеки языка Си использовалась uClibc вместо традиционной библиотеки glibc, несмотря на лёгкий вес, у неё есть существенный недостаток — она бинарно несовместима с glibc, таким образом, всё программное обеспечение было скомпилировано с использованием uClibc для корректной работы. Однако с 9 апреля 2014 года[16], Alpine Linux стала использовать библиотеку musl[17], которая является частично бинарно совместимой с glibc[18].
Инициализация системы, по сравнению с другими дистрибутивами, такими как Debian, Ubuntu, Arch Linux и CentOS, не использует systemd[19].
Примечания
Ссылки
Шаблон:Дистрибутивы Linux Шаблон:Linux
- ↑ 1,0 1,1 Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Ошибка цитирования Неверный тег
<ref>
; для сносокsoftpedia
не указан текст - ↑ Ошибка цитирования Неверный тег
<ref>
; для сносокfossbytes
не указан текст - ↑ Ошибка цитирования Неверный тег
<ref>
; для сносокnetworkworld
не указан текст - ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web