- Базовая установка Alpine Linux
- Необходимые требования
- Пару слов об Alpine Linux
- Подготовка
- Работа с ISO образом
- Работа с Дисками
- Установка
- Раскладка клавиатуры
- Hostname
- Настройка сети
- Root user + TimeZone + Proxy
- Выбор основного репозитория
- Добавление нового пользователя
- Выбор ssh сервера
- Разметка диска
- Первоначальная настройка
- Добавляем community репозиторий
- Работа с менеджером пакетов
- Опционально: добавляем QEMU Agent
- Install to disk
- If using Alpine Linux 2.2.3 or later
- Continue Setting up your Computer
- If using Alpine Linux 2.2.2 or earlier
Базовая установка Alpine Linux
Этот дистрибутив долгое время попадал в поле моего внимания. Я попробовал его и не пожалел. Сегодня расскажу об установке базовой версии Alpine linux в качестве custom iso на виртуальном хостинге.
Необходимые требования
рекомендуется: 2048 MB RAM
Пару слов об Alpine Linux
Дистрибутива Alpine Linux обладает несколькими сильными преимуществами:
- Во первых он основан на Musl и BusyBox, что в свою очередь сильно повлияло на итоговый размер дистрибутива.
- За счёт своего небольшого размера и подхода разработчиков дистрибутив славится более продвинутой безопасностью. Чем меньше bloated кода, тем меньше векторов для атаки.
- В третьих, опять таки за счёт размера и других отличий таких как инит OpenRC вместо systemd этот дистрибутив является более шустрым для более слабого железа.
Учитывая все эти особенности, Alpine Linux прекрасно подходит для размещения на нём Docker контейнеров.
Минусы конечно тоже присутствуют.
- Например эта система не такая популярная и я пока нигде не встречал возможность установки этого дистрибутива нативно у хостеров, её придётся устанавливать из своёго iso, это не сложно и я опишу этот процесс ниже.
- Также опять таки из за небольшой популярности по сравнению с другими дистрибутивами, придётся погуглить некоторые моменты, но когда это нас останавливало?
Подготовка
Работа с ISO образом
Я опишу процесс установки Alpine на хостинге firstbyte, если у вас другой хостинг действуйте по такому же принципу что и в посте, поидее должно сработать везде где есть возможно ставить со своего ISO.
Первым делом отправляемся панельку управления впс серверами. В раздел ISO-образы
Добавляем наш новый Alpine Linux ISO
Дожидаемся окончания загрузки.
В результате успешной загрузки образ отобразится в списке доступных образов
Работа с Дисками
Отправляемся в главный раздел управления впс и останавливаем ту впску на которую хотим поставить Alpine. После этого снова выделяем её в списке и переходим в пункт диски
Нас интересует раздел ISO нажимаем на него, после чего выбираем из списка загруженную ранее alpine-standard-3.17.2-x86_64 (у вас скорее всего будет уже другое название). И делаем все как на картинке
Соглашаемся, нажав «ok». В результате раздел будет иметь вид
Отлично, всё готово для установки.
Установка
Для того чтобы начать установку сначала стартуем впс и после этого кликаем по иконке VNC
В открывшемся окне мы увидим уже знакомую многим картину. Первым делом нам необходимо авторизоваться, вводим имя пользователя root
После ввода пользователя root, пароль у нас никто не запрашивает и мы успешно авторизуемся под админской учёткой. Это сделано для облегчения процесса установки, разумеется позже мы сами зададим пароль для root.
Чтобы приступить к установке вписываем команду
Вся установка текстовая и сводится к тому что мы просто вдумчиво отвечаем на вопросы инсталлятора, приступаем.
Раскладка клавиатуры
Первое о чём нас спрашивают это раскладка клавиатуры. Я отвечаю US и далее опять уточняю US. Вписывайте свою или просто повторяйте за мной
Hostname
В качестве хостнейма вписываю fb-node-02. Впишите своё название или просто согласитесь с дефолтным localhost
Настройка сети
Далее у нас идёт настройка сети, если у вас все параметры получаются по DHCP то просто нажмите ENTER. В моём случае мне необходимо было вручную указать сетевые настройки. Зачастую их можно посмотреть в самой панельке в разделе ip-адрес.
Либо на каком нибудь уже установленном дистре линукса:
для ip адреса вписать hostname —ip-address
для gateway вписать sudo route -n
и взять значения оттуда.
Просто отвечаем по порядку, вписывая ip адрес, маску подсети и gateway. После того как впишем, нам вновь отобразят настройки и спросят хотим ли мы ещё что то поменять. Мне тут больше ничего не нужно отвечаю n.
Также у нас спросят дефолтный домен, если нет домена или пока не определились можно вписать example.com
DNS сервера вписал такие 1.1.1.1 8.8.8.8
Root user + TimeZone + Proxy
Задаём пароль руту. А также устанавливаем часовой пояс. Те, кому это надо, вписывают настройки прокси, у меня сеть работает без прокси, поэтому тут я просто нажимаю ENTER.
Выбор основного репозитория
Теперь нам предлагают выбрать главный репозиторий. Чтобы пролистать сразу весь список нажимаем пробел и выбираем номер репозитория. Я выбираю пункт F: Detect and add fastest mirror from above list, название говорит само за себя. (Чтобы пролистнуть список репозиториев, вместо того чтобы постоянно нажимать ENTER — можно 1 раз нажать Q)
Добавление нового пользователя
Придумываем и вписываем имя пользователя. А также задаём ему пароль.
Выбор ssh сервера
Можем выбрать openssh или dropbear в зависимости от вашей конфигурации. Рекомендовано выбирать openssh.
Разметка диска
Нам предлагают на выбор несколько вариантов разметки диска. Sys, Data, Crypt или lvm. Для того чтобы узнать больше можно выбрать пункт ?. На этом шаге я выбираю самый распространённый вариант разметки Sys.
Этот шаг является финальным. После успешной разметки диска и копирования фаилов видим что нам предлагают ребутнуться, но мы поступаем немного иначе, вписываем команду
Переходим обратно в панель управления впс и в меню диски — отключаем наш подключенный ранее iso. И теперь уже можем загружаться в свежеустановленную систему. Для этого просто стартуем впс.
Т.к. установка завершена, то можем уже подключатся через привычный нам ssh клиент, вкладка с VNC уже не нужна.
Первоначальная настройка
Добавляем community репозиторий
Мы попали в нашу новую систему. Рекомендуется обновить инфу о репозиториях и сами пакеты в системе. Но перед этим сначала раскомментируем community репозиторий, чтобы увеличить количество пакетов.
И раскомментируем репозиторий community
Работа с менеджером пакетов
Для того чтобы обновить информацию о репозиториях выполняем команду
Для того чтобы обновить пакеты в системе выполняем
Я советую сразу поставить такой набор
Для того чтобы удалить какой то пакет пишем
Опционально: добавляем QEMU Agent
Для правильного отображения ресурсов впс, некоторые пользователи захотят поставить себе QEMU Agent, для этого сначала устанавливаем его
Добавляем службу в автозагрузку
Можем сразу запустить службу
Install to disk
This material is proposed for merging .
If using Alpine Linux 2.2.3 or later
Warning: This will erase everything on your machine’s harddisk. Don’t blame me if someone sues you for this, your cat dies etc. You are warned.
The following is meant to be an absolute newbie guide
- Burn the Alpine ISO image to a CD
- Put the CD into the new computer and turn on the power. Make sure the computer is capable to boot from a CD. Your manual for the computer or the BIOS can help.
- Wait for the text login: to appear, type root and press enter.
- Run the setup-alpine script
- Choose your keyboard layout. If you don’t know your keyboard layout choose us. Here us was chosen.
- Then I chose the us variant.
- Most people will use DHCP, so press enter again, or you can enter in your static IP address
- You will be asked if you want to do any manual network configuration, press enter for no
- Now choose how you would like to use it, for this guide, choose sys, this will install the entire OS onto your hard drive
- You are given a final chance to back out, type in Y to continue
Take out the CD, and your computer should boot into Alpine using your hard drive.
Continue Setting up your Computer
- Alpine Linux package management(How to add/remove packages on your Alpine)
- OpenRC(Configure a service to automatically boot at next reboot)
- Setting up a SSH server(Using ssh is a good way to administer your box remotely)
- Tutorials and Howtos(Various tutorials, including how to setup a XFCE desktop)
If using Alpine Linux 2.2.2 or earlier
A number of steps are nowadays included in the setup-disk and setup-lbu scripts, which are invoked by setup-alpine. But in these older systems, these steps have to be performed manually.
Run setup-alpine to configure the keyboard, hostname and networking.
Now for the manual steps. Install needed programs for the setup:
apk add e2fsprogs syslinux mkinitfs
Create partitions with fdisk .
Let’s say you have 2 partitions: /dev/sda1 as «Linux» (type 83) and /dev/sda2 as «linux swap» (type 82). The partition containing /boot —here, /dev/sda1 —must be marked bootable (command «a» within fdisk ).
Next, create your filesystem(s) and swap:
mkfs.ext4 /dev/sda1 mkswap /dev/sda2
Clone the current running config created by setup-alpine (hostname, networking root password):
lbu package — | tar -C /mnt -zxf —
Install base packages on the mounted disk:
apk add —root=/mnt —initdb $(cat /etc/apk/world)
Append the / and swap to /etc/fstab :
echo -e «/dev/sda1 / ext4 defaults 1 1» >> /mnt/etc/fstab echo -e «/dev/sda2 none swap sw 0 0» >> /mnt/etc/fstab
Configure the boot loader, extlinux . We use the provided syslinux.cfg as base.
cp /media/cdrom/syslinux.cfg /mnt/boot/extlinux.conf vi /mnt/boot/extlinux.conf
It should contain something like:
timeout 20 prompt 1 default grsec label grsec kernel /boot/grsec append initrd=/boot/grsec.gz root=/dev/sda1 modules=ext4 quiet
Install the bootloader on your /boot partition:
Install the early-stage bootloader in the disk’s MBR (note that it’s /dev/sda not /dev/sda1 !)
dd if=/usr/share/syslinux/mbr.bin of=/dev/sda
cat /usr/share/syslinux/mbr.bin > /dev/sda
Unmount, remove cdrom, and reboot. (If you can’t eject, just remove it manually as the machine reboots)
umount /mnt umount /.modloop eject reboot
In recent versions of Alpine, the second line can be accomplished by rc-service modloop stop . (See this FAQ entry).
After reboot, you should be able to log in as root with the password you created in setup-alpine .
- Choose your keyboard layout. If you don’t know your keyboard layout choose us. Here us was chosen.