Alpine (почтовый клиент)
- 1 year ago
- 0
- 0
Alpine Linux — дистрибутив Linux , ориентированный на безопасность, легковесность и нетребовательность к ресурсам. В основном используется во встраиваемых системах , стал основой PostmarketOS , также хорошо подходит для создания Docker -контейнеров . Основан на musl и BusyBox , использует PaX и grsec по умолчанию в ядре и компилирует все пакеты с защитой стека от переполнения .
Для обеспечения безопасности в дистрибутиве применяются:
Размер базовой системы Alpine Linux составляет всего лишь 4-5 Мбайт (исключая ядро). Контейнер требует не более 8 МБ, а для минимальной установки на диск требуется около 130 МБ.
С целью повышения безопасности все программы пространства пользователя компилируются как position-independent executable с защитой от повреждения стека .
Первоначально был ответвлением проекта : большинство разработчиков проекта LEAF хотели продолжать разрабатывать дистрибутив Linux, который мог поместиться на одной дискете, тогда как разработчики Alpine Linux желали включить ещё несколько тяжёлых пакетов, таких как Squid и Samba , а также дополнительные функции безопасности и новое ядро. Одна из первоначальных целей заключалась в создании основы для большой системы, сейчас это не является главной целью проекта .
До выпуска 3.7 дистрибутив поставлялся с hardened-ядром (патчи PaX и grsec ) с целью уменьшения возможного вреда от уязвимостей.
В дистрибутиве реализована собственная система управления пакетами apk-tools , которая изначально была частью коллекции сценариев (shell scripts), но позже была переписана разработчиками на Си. Alpine на данный момент включает в себя такие пакеты как KDE , GNOME , Xfce , Firefox , и другие.
По умолчанию, Alpine Linux во время запуска полностью загружается в оперативную память.
Первоначально в дистрибутиве в качестве стандартной библиотеки языка Си использовалась uClibc вместо традиционной библиотеки glibc , несмотря на лёгкий вес, у неё есть существенный недостаток — она бинарно несовместима с glibc, таким образом, всё программное обеспечение было скомпилировано с использованием uClibc для корректной работы. Однако с 9 апреля 2014 года , Alpine Linux стала использовать библиотеку musl , которая является частично бинарно совместимой с glibc .
Инициализация системы, по сравнению с другими дистрибутивами, такими как Debian , Ubuntu , Arch Linux и CentOS , не использует systemd .