- Персональный дистрибутив на основе Arch
- Install Arch Linux from existing Linux (Русский)
- Contents
- Arch Linux-based chroot
- Создаём chroot
- Способ 1: Использование Bootstrap образа (рекомендуется)
- Способ 2: Используя образ LiveCD
- Используем наше chroot окружение
- Начальная настройка хранилища ключей pacman
- Установка
- Настройка системы
- Замена уже существующей системы без LiveCD
- Archiso (Русский)
- Contents
- Установка
- Настройка live носителя
- Установка пакетов
- Собственный локальный репозиторий
- Предотвращение установки пакетов, принадлежащих основной группе
- Установка пакетов из multilib
- Добавление файлов в образ
- Загрузчик
- UEFI Secure Boot
- Вход в систему
- Изменение автоматического входа в систему
- Сборка ISO
- Удаление рабочей директории
- Использование ISO
Персональный дистрибутив на основе Arch
Всем привет, хотел бы создать личный дистрибутив со своими удобными настройками на основе Arch, с предустановленными конфигами для emacs/awesome с установленными драйверами итд. какие инсртументы есть для этого?
Прямые руки и IQ > 80. Кыш читать арчвики до просветления.
З.Ы. если еще не понял — сделай пакет со своим говном, или пересобери арчевские пакеты с твоими конфигами.
Обои, обои не забудь.
Пендель для зобаненых в гугле:
Поделия арчешкольников заблистали новыми красками обоями.
Спасибо, не знал как правильно загуглить )
Главное обои нескучными сделать.
Собирать свой дистр из-за предустановленных конфигов для редактора и вм это АДъ.
ну еще ради предустановленных прилоежний и драйверов.
Вам на декларативно конфигурируемую NixOS (конфиг для редактора, правда, всё равно придётся таскать отдельно, но это всё равно сильно лучше, чем ставить все нужные пакеты руками).
Источник
Install Arch Linux from existing Linux (Русский)
Эта статья или раздел нуждается в переводе
Этот документ описывает bootstrapping process, нужный для того, чтобы установить Arch Linux из уже работающего хоста Linux. После bootstrapping, установка продолжается так, как описано в руководстве по установке Arch Linux.
Установка Arch Linux из-под другого Linux полезна для:
- беспроводной установки Arch Linux, например для виртуального сервера
- замены существующего Linux без LiveCD (смотрите #Замена уже существующей системы без LiveCD)
- создания нового дистрибутива Linux или LiveCD основанного на Arch Linux
- создания chroot окружения Arch Linux, например для контейнеров Docker
- rootfs-over-NFS для бездисковых систем
Цель процедуры начальной загрузки в том, чтобы настроить окружение, из которого можно будет запустить arch-install-scripts (содержит такие скрипты как pacstrap и arch-root ). Установить arch-install-scripts нужно на самой хост-системе или настройкой chroot основанного на Arch Linux.
Если хост работает под Arch Linux, сразу установите arch-install-scripts .
Contents
Arch Linux-based chroot
Идея состоит в том, чтобы как бы запустить Arch Linux внутри уже имеющейся системы. Настоящая установка, которая будет содержаться внутри chroot, будет затем запущена из этой Arch системы. Есть два способа настроить и войти в chroot, они представлены ниже.
Создаём chroot
Способ 1: Использование Bootstrap образа (рекомендуется)
Скачиваем образ bootstrap с любого желаемого зеркала, либо сразу используя прямую ссылку на нужный вам образ (с зеркала kernel.org):
Образ x86_64:
Внимание! Ссылки могут оказаться нерабочими. В этом случае перейдите по адресу https://mirrors.kernel.org/archlinux/iso/ и найдите образ там
Выбираем подходящий для вашего интернета сервер, откуда будут загружаться основные репозитории:
Войдём в chroot
- Если установлен bash 4 или новее, то:
- Иначе:
Способ 2: Используя образ LiveCD
Можно смонтировать корневой образ последнего установочного диска Arch Linux и затем заchroot’ить туда. Плюс этого способа в том, что у вас будет сразу рабочий Arch Linux installation прямо внутри хост-системы без надобности в его настройки.
- Корневой образ можно скачать с одного из зеркал в папке arch/x86_64/ либо arch/i686/, смотря какую архитектуру хотите. Образ имеет формат squashfs, который является read-only, поэтому нам надо распаковать его и смонтировать корневой образ (root-image.fs).
- Чтобы распаковать корневой образ, надо
- Теперь смонтируем его с помощью опции loop
- Перед тем как chrooting to it, нужно смонтировать некоторые виртуальные системные разделы, а затем скопировать resolv.conf для интернета.
- Теперь всё готово, чтобы to chroot в только что установленное окружение Arch
Используем наше chroot окружение
Начальная настройка хранилища ключей pacman
Перед установкой, ключи pacman должны быть настроены. Перед тем как вводить следующие две команды, можете почитать pacman/Подпись пакета#Инициализация связки ключей, чтобы узнать entropy requirements:
Установка
Хост Debian
На хостах Debian pacstrap выводит следующую ошибку:
Это потому, что в Debian /dev/shm ссылается на /run/shm , который в Arch-based chroot не существует, поэтому ссылка не рабочая. Чтобы исправить это, просто создайте каталог /run/shm :
Хост Fedora
На хостах Fedora и Live USB, если у вас не получается сгенерировать ваш fstab с помощью genfstab , то удалите из fstab одинаковые записи и везде опции seclabel (это опция специфична для Fedora и поэтому не даст вам загрузиться).
Настройка системы
С этого момента просто следуйте согласно разделам начиная с «Монтирование разделов» из руководства по установке Arch Linux.
Замена уже существующей системы без LiveCD
650МБ, например, переформатировав существующий swap-раздел (после окончания установки, можете обратно создать swap). Если не можете столько освободить, выясните точно, какие пакеты группы base вам понадобятся для того, чтобы get a system с работающим интернетом and running in the temporary partition. То есть надо будет ясно указать каждый пакет для pacstrap. И ещё надо указать -c, чтобы пакеты скачивались на хост-систему, дабы избежать недостатка свободного места.
После того как установили, перезагрузитесь в свою новую систему, затем rsync the entire system to the primary partition. Fix the bootloader configuration before rebooting.
Источник
Archiso (Русский)
Archiso — набор bash скриптов, предназначенных для создания полностью функциональных Live-CD/DVD и Live-USB на базе Arch Linux. Это тот же инструмент, который используется для создания официальных образов, но он довольно гибкий инструмент, который может быть использован как для создания дисков восстановления или установочных, так и для специализированных live-CD/DVD/USB систем. Сердце Archiso — mkarchiso. Для получения подробного описания всех его опций достаточно вызвать его без параметров, так что здесь будет описанно только создание live диска своими руками.
Если вам требуется только краткое изложение требований и процесса сборки, вы можете также воспользоваться официальной документацией проекта.
Contents
Установка
Archiso поставляется с двумя «профилями»: releng и baseline.
- Если вы хотите создать полностью индивидуальную версию Arch Linux, предварительно установленной со всеми вашими любимыми программами и конфигурациями, используйте профиль releng.
- Если вы просто хотите создать основу для live CD, без предварительно установленных пакетов и минимальной конфигурацией, используйте baseline.
Теперь скопируйте профиль на Ваш выбор, в каталог (
/archlive используется в примере ниже), в котором вы можете вносить корректировки. Выполните следующую команду, заменив profile либо на releng , либо на baseline .
- Если вы используете профиль releng для создания полностью индивидуального образа, вы можете переходить к секции #Настройка live носителя.
- Если вы используете профиль baseline для создания пустого образа, то вам не нужно его настраивать, поэтому переходите к секции #Сборка ISO.
Настройка live носителя
В этом разделе подробно описывается настройка создаваемого вами образа, определение пакетов и конфигураций, которые вы хотите, чтобы ваш live образ содержал.
Внутри каталога archlive , созданного в #Установка, имеется ряд файлов и каталогов; мы рассмотрим лишь несколько из них, в основном:
- packages.x86_64 — это где вы перечисляете построчно пакеты, которые вы хотите установить, и
- каталог airootfs — это каталог, действующий как наложение, и именно там вы делаете все настройки.
Как правило, любые административные задачи, которые вы обычно делаете после новой установки, могут быть выполнены в скрипте archlive/airootfs/root/customize_airootfs.sh , за исключением установки пакетов. Скрипт должен быть написан с точки зрения новой среды, поэтому / в скрипте означает корень ISO-образа, который создается.
Установка пакетов
Отредактируйте списки пакетов в packages.x86_64 чтобы указать, какие пакеты должны быть установлены на live носителе.
Собственный локальный репозиторий
This article or section is a candidate for merging with Pacman/Tips and tricks (Русский)#Собственный локальный репозиторий.
Для подготовки своих пакетов или пакетов из AUR/ABS, вы можете создать собственный локальный репозиторий. Если вам нужна поддержка нескольких архитектур, примените соответствующие меры для предотвращения ошибок в будущем. Каждая архитектура должна иметь собственное дерево каталогов:
Затем вы можете добавить свой репозиторий, поместив следующее в
/archlive/pacman.conf выше других записей (для более высокого приоритета):
Если пакет подходит, repo-add выполняет проверку. Иначе, вы столкнетесь с сообщениями об ошибках, подобными этому:
Предотвращение установки пакетов, принадлежащих основной группе
По умолчанию /usr/bin/mkarchiso , скрипт, который используется
/archlive/build.sh , вызывает один из скриптов arch-install-scripts с именем pacstrap без флага -i , что заставляет Pacman не ждать ввода пользователя во время процесса установки.
При внесении в черный список основных пакетов группы путем добавления их в строку IgnorePkg в файле
/archlive/pacman.conf , Pacman спрашивает, должны ли они все еще быть установлены, а это значит, что они будут при обходе ввода пользователя. Чтобы избавиться от этих пакетов существует несколько вариантов:
- «Грязный» способ: Добавьте флаг -i в каждую строку, вызывающую pacstrap в /usr/bin/mkarchiso .
- «Чистый»: Создайте копию /usr/bin/mkarchiso , в которую вы добавите флаг и адаптируете
/archlive/build.sh , так чтобы он вызывал измененную версию скрипта mkarchiso.
- Расширенный способ: Создайте функцию для
/archlive/build.sh , которая явно удаляет пакеты после основной установки. Это принесет вам удовольствие от того, что вам не придется много вводить во время процесса установки.
Установка пакетов из multilib
Чтобы установить пакеты из репозитория multilib, вам нужно просто раскомментировать его в
Добавление файлов в образ
Каталог airootfs действует как наложение, считайте его корневым каталогом ‘/’ в вашей текущей системе, поэтому любые файлы, которые вы размещаете в этом каталоге, будут скопированы при загрузке.
Поэтому, если у вас есть набор скриптов iptables в вашей текущей системе, которые вы хотите использовать на вашем live образe, скопируйте их:
Размещение файлов в домашнем каталоге пользователей немного отличается. Не помещайте их в airootfs/home , а вместо этого создайте каталог skel внутри airootfs/ и разместите их там. Затем мы добавим соответствующие команды в customize_airootfs.sh , которые мы собираемся использовать для их копирования при загрузке и выяснения разрешений.
Сначала создайте каталог skel:
Теперь скопируйте файлы ‘home’ в каталог skel, например для .bashrc :
/archlive/airootfs/root/customize_airootfs.sh , и создается новый пользователь, файлы из каталога skel будут автоматически скопированы в новую домашнюю папку, а разрешения будут установлены правильно.
Аналогичным образом, требуется обратить внимание на особые файлы конфигурации, которые находятся где-то внизу по иерархии. В качестве примера конфигурационный файл /etc/X11/xinit/xinitrc находится на пути, который может быть перезаписан путем установки пакета. Чтобы поместить файл конфигурации, следует поместить пользовательский xinitrc в
/archlive/airootfs/etc/skel/ , а затем изменить customize_airootfs.sh , чтобы переместить его соответствующим образом.
Загрузчик
Файл по умолчанию должен работать прекрасно, поэтому вам не нужно трогать его.
Из-за модульной природы isolinux вы можете использовать множество дополнений, так как все *.c32 файлы копируются и доступны вам. Посмотрите официальный сайт syslinux и репозиторий git archiso. Используя указанные аддоны, можно сделать визуально привлекательные и сложные меню. Для получения дополнительной информации смотрите здесь.
UEFI Secure Boot
Если вы хотите загружать Archiso в окружении с включённым UEFI Secure Boot, вы должны использовать подписанный загрузчик. Вы можете воспользоваться инструкциями из статьи Secure Boot#Booting an installation medium.
Вход в систему
Запуск X при загрузке выполняется путем включения службы systemd менеджера входа в систему. Если вы знаете, какой файл .service нуждается в символической ссылке: Отлично. Если нет, то вы можете легко узнать в случае, если вы используете одну и ту же программу в системе, в которой вы собираете свой iso. Просто используйте:
Теперь создайте ту же самую символическую ссылку в
/archlive/airootfs/etc/systemd/system . Для LXDM:
Это позволяeт запустить LXDM при загрузке системы из вашего live образа.
В качестве альтернативы вы можете просто включить службу в airootfs/root/customize_airootfs.sh вместе с другими включенными там службами.
Если вы хотите, чтобы графическая среда фактически запускалась автоматически во время загрузки, обязательно отредактируйте airootfs/root/customize_airootfs.sh и замените
Изменение автоматического входа в систему
Файлы настроек автоматического входа для getty расположены в airootfs/etc/systemd/system/getty@tty1.service.d/autologin.conf .
Вы можете отредактировать этот файл для изменения автоматического входа пользователя в систему:
Или удалите его вообще для отключения автоматического входа в систему.
Сборка ISO
Создайте ISO, который затем можно записать на компакт-диск или USB, запустив:
- -w указывает рабочий каталог. Если параметр не указан, по умолчанию он будет работать в текущем каталоге.
- -o указывает каталог, в который будет помещен созданный ISO-образ. Если параметр не указан, по умолчанию он будет выводить в текущий каталог.
- Следует отметить, что файл профиля profiledef.sh не может быть указан при запуске mkarchiso, только путь к файлу
Замените /путь/до/профиля/ на путь к вашему пользовательскому профилю или на /usr/share/archiso/configs/relng/ , если вы создаете неизмененный профиль.
При запуске сценарий загрузит и установит указанные вами пакеты в рабочую_директорию/x86_64/airootfs , создаст образы ядра и инициализации, применит ваши настройки и, наконец, создаст ISO в выходной каталог.
Удаление рабочей директории
Временные файлы копируются в рабочую директорию. После успешного создания ISO рабочую директорию и его содержимое можно удалить. Например.:
Использование ISO
Для получения дополнительной информации смотрите статью Руководство по установке.
Источник