- Установка Alpine Linux
- Установка Alpine Linux
- Шаг 1. Загрузка образа
- Шаг 2. Запись образа
- Шаг 3. Настройка BIOS
- Шаг 4. Начало установки
- Шаг 5. Раскладка клавиатуры
- Шаг 6. Имя компьютера
- Шаг 7. Настройка сети
- Шаг 8. Пароль пользователя
- Шаг 9. Настройка прокси
- Шаг 10. Выбор зеркала репозиториев
- Шаг 11. Настройка SSH
- Шаг 12. Выбор места установки
- Шаг 13. Завершение установки
- Шаг 14. Вход в систему
- Шаг 15. Установка редактора nano
- Шаг 16. Редактирование файла с репозиториями и обновление
- Шаг 17. Установка графического интерфейса
- Шаг 18. Устанавливаем окружение xfce4
- Шаг 19. Устанавливаем файловый менеджер
- Шаг 20. Набор тем и иконок
- Шаг 21. Устанавливаем менеджер входа
- Шаг 22. Запуск сервиса D—Bus
- Шаг 23. Завершение установки.
- Alpine Linux
- Видео-обзор
- Система инициализации OpenRC
- Использует BusyBox
- Библиотека musl
- История
- Назначение, использование
- Система управления пакетами apk-tools
- Операции утилиты apk
- Репозитории и пакеты
- Установка Alpine Linux
- Релизы дистрибутива Alpine Linux
Установка Alpine Linux
Итак, что же мы знаем об Alpine Linux и зачем его устанавливать? Во-первых, он базируется на musl и BusyBox, во-вторых, это единственный независимый дистрибутив Linux предоставляющий безопасность в общих целях. Его разработка была предопределена концепцией обеспечения безопасности, а для защиты от вредоносного кода было решено использовать PaX и SSP.
Стоит отметить его необычно неприхотливые требования к ресурсам системы. Пакеты используются apk, но некоторые придется установить самостоятельно. Руководство, конечно же, присутствует на сайте дистрибутива, которому необходимо не более 8 МБ, а минимальная установка на диск требует не более 130 МБ свободного места. Для управления пакетами в Alpine используется apk. И некоторых пакетов, которые Вам будут нужны, по умолчанию не будет в Alpine.
Установка Alpine Linux
Шаг 1. Загрузка образа
Переходим по этой ссылке https://www.alpinelinux.org/downloads/ и качаем образ:
Нам нужен STANDARD.
Шаг 2. Запись образа
Все как обычно, — если у вас Linux, то качаем Unebootin; если у вас Windows, то качаем Rufus. Ссылки предоставил.
Шаг 3. Настройка BIOS
Перезагружаем компьютер и заходим в BIOS. Нам надо зайти во вкладку Boot и указать в пункте 1 st Boot Device вашу флешку. Затем сохраните настройки и перезагрузите компьютер.
Шаг 4. Начало установки
Заранее говорю, что все делается через командную строку.
Пишем для входа в командную оболочку:
Таким образом мы запускаем процесс установки
Шаг 5. Раскладка клавиатуры
Выбираем раскладку из списка. В моем случае это:
Шаг 6. Имя компьютера
При указании имени компьютера обратите внимание на то, что следует использовать числа и символы нижнего регистра. Например, имя Noma я не смог указать, зато имя noma вполне проходит по параметрам.
Шаг 7. Настройка сети
Сразу же после указания имени хоста нам предложат настройки, связанные с интернетом. Если у вас проводной интернет по DHCP, их просто пропускаем нажатием Enter. Все это можно настроить уже потом непосредственно в установленной системе.
Шаг 8. Пароль пользователя
Указываем пароль для суперпользователя. Если он 6-значный, например, то вы получите предупреждение о том, что пароль слишком слабый, но это не мешает установке.
Шаг 9. Настройка прокси
Далее вы можете установить прокси или просто пропустить. В моем случае я просто нажал Enter и пропустил этот пункт, так как все это тоже можно будет потом настроить, при необходимости.
Шаг 10. Выбор зеркала репозиториев
Вам дадут список зеркал, если вы этого не сделаете, то система будет проверять каждое и самостоятельно выберет наиболее подходящее.
Примечание для жителей Украины. Если вы не укажите зеркало, то рискуете попасть на Yandex, а с ним установка не получится, так как компания под санкциями. В вашем случае просто выберете любое другое.
Шаг 11. Настройка SSH
Если вы хотите, то можете установить и ssh сервер. И снова, на данном этапе это не является необходимым, и вы всегда сможете его поднять позже.
Шаг 12. Выбор места установки
Система предложит выбрать любой из доступных дисков для установки ОС. Я указываю следующее:
Далее вам надо выбрать для чего будет использоваться этот диск. Так как это системный диск, то я выбираю:
Получаем предупреждение о том, что все данные с выбранного диска будут удалены. Впрочем, ничего удивительного. Пишем:
Шаг 13. Завершение установки
Когда установка Alpine Linux завершится, система попросит о перезагрузке. Для этого извлекаем носитель на котором система и перезагружаемся командой:
Шаг 14. Вход в систему
Далее пишем пароль, который ранее задавали.
Шаг 15. Установка редактора nano
Так как у нас нет редактора, то мы установим. Это будет редактор Nano. Сделаем это с помощью команды:
Шаг 16. Редактирование файла с репозиториями и обновление
Теперь нам надо отредактировать файл репозиториев. Это позволит нам обновить систему и продолжить установку. Пишем:
Чтобы получить доступ к репозиторию сообщества надо раскомментиовать третью строку:
Для этого удалите # перед ней. После жмем ctrl+o -> Enter -> ctrl+x. После всего пишем команду:
Шаг 17. Установка графического интерфейса
Шаг 18. Устанавливаем окружение xfce4
Шаг 19. Устанавливаем файловый менеджер
Достаточно тривиально, но проверено.
Шаг 20. Набор тем и иконок
Шаг 21. Устанавливаем менеджер входа
Так как система является легковесной, то будем работать в направлении её преимуществ. Это ответ на вопрос: А почему Slim?.
Шаг 22. Запуск сервиса D—Bus
Чтобы приложения могли между собой взаимодействовать, нам надо запустить сервис межпроцессорного взаимодействия (IPC). Выполняем команду:
Работает, отлично. Теперь добавим его в автозагрузку?
Шаг 23. Завершение установки.
Это позволит нам перезагрузить устройство и войти в систему с графическим интерфейсом.
В поле username пишем root и указываем раннее заданный пароль. Ну а дальше рабочий стол.
Теперь вы знаете как установить Alpine Linux, а также как минимально настроить систему, так, чтобы с ней можно было работать.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Alpine Linux
Alpine Linux — независимый, маленький, быстрый дистрибутив Linux. Используется в Docker контейнерах.
Видео-обзор
Видео-обзор дистрибутива Alpine Linux.
Система инициализации OpenRC
В качестве системы инициализации используется OpenRC.
OpenRC отличается модульной структурой, загрузкой на основе зависимостей, поддержкой ограничения ресурсов, параллельной загрузкой сервисов и т.д.
Изначально OpenRC использовалась в Gentoo (c 2011 года) и была основана на SysVInit.
Использует BusyBox
Alpine Linux использует набор UNIX-утилит BusyBox. BusyBox это реализация классических утилит UNIX, выполненная в виде одного небольшого исполняемого файла.
BusyBox реализует все основные утилиты (GNU fileutils, shellutils и т.д.), которые обычно реализованы как отдельные файлы. Утилиты BusyBox, как правило, более компактные и могут иметь меньше опций, чем GNU аналоги. Не смотря на это, BusyBox предоставляет достаточно полную среду для любой небольшой или встраиваемой системы.
Вызов утилит в BusyBox выполняется путем исполнения файла busybox и указания требуемой команды и аргументов. Например, для вызова команды ls аргументом -l, необходимо выполнить:
Библиотека musl
В качестве реализации стандартной библиотеки языка C (libc) в Alpine Linux используется библиотека musl.
Самой популярной библиотекой языка C является GNU Libc (glibc). glibc обеспечивает реализацию системных вызовов и основные функции, например open, malloc и так далее. Библиотека musl представляет собой более легковесную альтернативу glibc.
musl была разработана с нуля Ричем Фелкером. Ставились цели разработать более чистую и эффективную реализацию, которая будет соответствовать стандартам.
Скомпилированная версия библиотеки представляет собой один динамический объектный файл. При использовании версии musl для статического связывания, можно создавать портативные программы в виде одного исполняемого бинарного файла.
Первый релиз musl появился 11 февраля 2011.
Помимо Alpine Linux библиотека musl также используется в дистрибутивах Gentoo, OpenWrt, Sabotage, Void Linux и других.
История
Изначально Alpine Linux являлся форком LEAF Project (Linux Embedded Appliance Framework Project).
Назначение, использование
- Из-за своего маленького размера Alpine Linux часто применяется в контейнерах.
- Может использоваться во встраиваемых системах. Например, в основе операционной системы для смартфонов postmarketOS лежит Alpine Linux.
- Может быть установлен в качестве «десктоп-системы».
Система управления пакетами apk-tools
Используется собственная система управления пакетами apk-tools.
Изначально apk-tools представляла собой набор shell-скриптов, но потом была полностью переписана на C.
Alpine Linux может быть установлен на диск, либо работать из оперативной памяти. Управление пакетами включает две фазы:
- Установка / Обновление / Удаление пакетов на работающей системе.
- Восстановление системы в ранее сконфигурированное состояние (например, после перезагрузки), включая все ранее установленные пакеты и локально измененные конфигурационные файлы. Данная фаза актуальна только для системы, работающей из RAM (diskless mode).
apk-tools включает две утилиты:
- apk — утилита для установки, обновления и удаления пакетов в работающей системе. (Не путать с apk форматом для Android)
- lbu — утилита для сохранения данных, необходимых для последующего восстановления системы в ранее сконфигурированное состояние. lbu происходит от названия «Alpine local backup»
Операции утилиты apk
Утилита apk поддерживает следующие операции:
Операция | Описание |
---|---|
add | добавление и обновление пакетов. |
del | удаление пакетов. |
fix | выполнить восстановление или обновление, установленных пакетов. |
update | обновить индекс — получить актуальную информацию о пакетах, находящихся в репозиториях. |
info | вывести информацию об установленных или доступных пакетах. |
search | поиск по названию или описанию пакетов. |
upgrade | обновление пакетов. |
cache | управление кешем. |
version | сравнение версий установленных и доступных в репозитории пакетов. |
index | создать индекс на основе списка пакетов. |
fetch | скачать, но не устанавливать пакеты. |
audit | показать изменения в файловой системе после установки пакета. |
verify | проверить подпись. |
dot | создать граф (graphviz) для описания структуры пакета. |
policy | показать репозиторий, из которого пакет был установлен, а также репозитории, в которых также содержится этот пакет. |
stats | отобразить статистику, включая количество установленных и доступных пакетов, количество директорий, файлов и т.д. |
manifest | отобразить контрольные суммы для файлов, содержащихся в пакете. |
Репозитории и пакеты
Пакеты для Alipne Linux представляют собой tar.gz архивы и имеют расширение .apk. В архиве пакета содержатся программы, конфигурационные файлы и метаданные о зависимостях.
Репозиторий представляет собой обычную директорию, в которой находятся .apk файлы. Также в директории размещается специальный индексный файл APKINDEX.tar.gz
Утилита apk может устанавливать пакеты из различных репозиториев. Список репозиториев представлен в файле /etc/apk/repositories
Если система была загружена с USB-носителя или CD-ROM, то файл /etc/apk/repositories может иметь следующее содержимое:
В дополнение к локальным репозиториям, утилита apk может загружать пакеты с внешних репозиториев по HTTP, HTTPS или FTP протоколу. Для загрузки пакетов используется busybox wget. Пример файла /etc/apk/repositories с адресами удаленных (внешних) репозиториев.
/media/sda1/apks http://dl-3.alpinelinux.org/alpine/v2.6/main https://dl-3.alpinelinux.org/alpine/v2.6/main ftp://dl-3.alpinelinux.org/alpine/v2.6/main
Установка Alpine Linux
Система устанавливается в консольном режиме. Для установки используется скрипт setup-alpine
Существует три режима установки, которые влияют на то, как будет работать система:
- Diskless Mode — вся система и все приложения загружаются в RAM.
- Data Disk Mode — система запускается из RAM, но swap и /var монтируются с диска.
- Sys Disk Mode — традиционная установка системы на диск. По умолчанию создается три раздела: /boot, swap и /.
Релизы дистрибутива Alpine Linux
Версия | Дата релиза | Окончание поддержки | |
---|---|---|---|
2.1 | 01 ноября 2010 | 01 ноября 2012 | |
2.2 | 06 мая 2011 | ||
2.3 | 01 ноября 2011 | ||
2.4 | 02 мая 2012 | ||
2.5 | 07 ноября 2012 | ||
2.6 | 17 мая 2013 | ||
2.7 | 08 ноября 2013 | ||
3.0 | 04 июня 2014 | ||
3.1 | 10 декабря 2014 | ||
3.2 | 26 мая 2015 | ||
3.3 | 18 декабря 2015 | ||
3.4 | 31 мая 2016 | ||
3.5 | 22 декабря 2016 | ||
3.6 | 24 мая 2017 | ||
3.7 | 30 ноября 2017 | ||
3.8 | 26 июня 2018 | ||
3.9 | 29 января 2019 | ||
3.10 | 19 июня 2019 | ||
3.11 | 29 декабря 2019 | 01 ноября 2021 | |
3.12 | 29 мая 2020 | 01 мая 2022 | |
3.13 | 14 января 2021 | 01 ноября 2022 | пресс-релиз |
3.14 | 15.06.2021 | ||
3.15 | 24.11.2021 | ||
3.16 | 23.05.2022 | ||
3.17 | 22 ноября 2022 | пресс-релиз |