Перейти до змісту
View in the app

A better way to browse. Learn more.

Файна Україна

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Встановлення та налаштування Alpine Linux

Рекомендовані відповіді

Опубліковано
  • Адміністратор

Ми маємо складну конфігурацію, тому ми будемо використовувати напівавтоматичну установку (Semi-Automatic Installation). Перші етапи встановлення досить прості, тому я обмежусь короткими коментарями.

Розкладка.

setup-keymap us us

Ім'я хоста.

setup-hostname alphp
vi /etc/hosts

127.0.0.1 localhost.localdomain localhost alphp.localdomain alphp
::1       localhost.localdomain localhost alphp.localdomain alphp
rc-service hostname restart

Далі налаштовуємо мережу. У посібнику користувача рекомендується уникати використання бездротового підключення, але ми ризикнемо.

setup-interfaces

Вибираємо наш бездротовий інтерфейс, зазвичай це wlan0, вибираємо нашу мережу та вводимо пароль. Незважаючи на попередження розробників не використовувати DHCP при бездротовому підключенні, ми ризикнемо і цього разу. Просто натискаємо Enter на всі наступні питання, щоб використовувати значення за промовчанням. Коли запропонують перейти до налаштування наступного інтерфейсу мережі, вводимо "done", щоб завершити конфігурування.

Запускаємо сервіс.

rc-service networking start

Перевіряємо, чи з'явився доступ до Інтернету. У моєму випадку все працює чудово.

ping alpinelinux.org

Налаштовуємо часовий пояс.

setup-timezone

Налаштовуємо репозиторії. У діалоговому меню скрипта вибираємо опцію "c" для підключення репозиторію спільноти, потім "f", щоб автоматично встановити найшвидше дзеркало.

setup-apkrepos

Після цього вручну редагуємо файл із репозиторіями: вказуємо як джерело пакетів не v3.19, а latest-stable. Таким чином, після виходу наступної стабільної версії дистрибутива ми автоматично оновимося до неї.

vi /etc/apk/repositories

/media/sdb/apks
https://mirror.ua/mirrors/alpine/latest-stable/main
https://mirror.ua/mirrors/alpine/latest-stable/community

Встановлюємо пароль суперкористувача.

passwd

Налаштовуємо SSH, всі елементи залишаємо за замовчуванням.

setup-sshd

Налаштовуємо NTP-сервер. Залишаємо всі елементи за промовчанням.

setup-ntp

Останній інсталяційний скрипт перед встановленням системи - це setup-disk, проте ми не будемо його використовувати зараз, оскільки в цьому випадку він встановить Alpine Linux на весь диск.

Перевіряємо про всяк випадок, чи ми використовуємо BIOS або UEFI.

test -d /sys/firmware/efi && echo UEFI || echo BIOS

У моєму випадку це UEFI, тому ми будемо проводити встановлення для UEFI.

У контексті оптимального налаштування операційних систем, я дотримуюся думки про необхідність наявності окремого розділу завантаження та swap-розділу для кожної ОС. Однак, у випадку Alpine, я волію не створювати окремий swap-розділ і замість цього скористатися вже існуючим swap-розділом Debian. У той же час, я планую створити окремий розділ для Alpine. Схоже, вийде неконвенційна, але цілком працездатна конфігурація.

Встановлюємо cfdisk для розмітки диска.

apk add cfdisk

Ось як виглядає розмітка диска зараз.

/dev/sda1    EFI System
/dev/sda2    Microsoft Reserved
/dev/sda3    Microsoft Basic Data
/dev/sda4    Windows Recovery Environment
/dev/sda5    Linux filesystem
/dev/sda6    Linux swap
/dev/sda7    EFI System
/dev/sda8    Linux Filesystem
Free space

За допомогою cfdisk створюємо окремий розділ EFI і розділ для кореня системи.

/dev/sda1    EFI System
/dev/sda2    Microsoft Reserved
/dev/sda3    Microsoft Basic Data
/dev/sda4    Windows Recovery Environment
/dev/sda5    Linux filesystem
/dev/sda6    Linux swap
/dev/sda7    EFI System
/dev/sda8    Linux Filesystem
/dev/sda9    EFI System
/dev/sda10   Linux Filesystem

Створюємо файлові системи та монтуємо кореневий розділ та розділ /boot. Swap-розділ буде примонтований після завершення встановлення.

apk add e2fsprogs dosfstools
mkfs.ext4 /dev/sda10
mount /dev/sda10 /mnt
mkdir /mnt/boot
mkfs.fat -F 32 /dev/sda9
mount /dev/sda9 /mnt/boot
  

Тепер коли все змонтовано, встановлюємо дистрибутив у відповідні розділи.

setup-disk /mnt

Після того, як всі файли будуть скопійовані, виймаємо інсталяційний носій і перезавантажуємося в нову систему.

За замовчуванням Alpine використовує командну оболонку ash, але мені подобається bash.

apk add bash bash-completion

Щоб не працювати постійно від імені root, створимо користувача.

adduser -h /home/apem -s /bin/bash apem

В Alpine Linux для підвищення привілеїв традиційно використовується утиліта doas, але вона мені не підходить, тому я встановлю та настрою sudo.

apk add sudo
vi /etc/sudoers

Defaults	rootpw
Defaults	env_reset, timestamp_timeout=0
Defaults	mail_badpass
Defaults	secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
Defaults	use_pty
root	ALL=(ALL:ALL) ALL
%sudo	ALL=(ALL:ALL) ALL
apem	ALL=(ALL:ALL) ALL

Час встановити графічне середовище. Я встановлю свій улюблений Xfce. Вражає, наскільки швидко працює пакетний менеджер apk ;)

setup-xorg-base
apk add xfce4 xfce4-terminal xfce4-screensaver lightdm-gtk-greeter 
setup-devd udev
rc-service lightdm start
rc-update add lightdm default

Перезавантажимося з консолі tty у графічне середовище X11.

Змонтуємо та включимо swap-розділ.

Подивимося номер swap-розділу та його UUID.

fdisk -l
blkid

Запишемо його до /etc/fstab.

vi /etc/fstab

UUID=87e1013a-44a2-4d48-8ef6-d7884b50803b none swap sw 0 0

Включимо сервіс та додамо до автозапуску.

rc-update add swap default
rc-service swap start

На жаль, з графічного середовища ми не можемо вимкнути, перезавантажити чи відправити в режим очікування ноутбук. Виправимо це.

apk add elogind polkit-elogind
reboot

Додамо довідкові сторінки.

apk add mandoc man-pages mandoc-apropos less less-doc

Налаштуємо автомонтаж зовнішніх накопичувачів.

apk add gvfs udisks2

Налаштуємо підвищення привілеїв для утиліт з графічним інтерфейсом.

rc-update add elogind default
rc-service elogind start

Здавалося б, усе є, але не вистачає останнього звуку! Я зазвичай використовую pulseaudio, але розробники наполегливо рекомендують pipewire, тому я піду їхню пораду.

addgroup apem audio
addgroup apem video
apk add pipewire wireplumber pipewire-pulseaudio pavucontrol xfce4-pulseaudio-plugin
reboot

Мінімальне встановлення системи завершено. Все необхідне на місці і функціонує, залишається лише налаштувати специфічні для використання параметри.

images.png

images.png

На скріншотах представлена система, яку вже не можна вважати повністю мінімальною, оскільки я завантажив десяток інших утиліт і довідкових сторінок (так, довідкові сторінки в Alpine встановлюються окремим пакетом). Стандартна версія Alpine Linux з базовим налаштуванням і Xfce займає всього близько 400 пакетів. Це чудовий вибір для любителів мінімалістичних систем.

Для публікації повідомлень створіть обліковий запис або авторизуйтесь

Акаунт

Навігація

Пошук

Пошук

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.