User Tools

Site Tools


сборка_на_базе_mageia_mandriva

This is an old revision of the document!


Сборка на базе Mageia (Mandriva)

Надобно создать образ корневой файловой системы

mkdir /home/uf4n/myrootfs/

Так решается непонятная проблема с urpmi

mkdir -p /home/uf4n/myrootfs/usr/lib64/gconv
cp /usr/lib64/gconv/gconv-modules.cache /home/uf4n/myrootfs/usr/lib64/gconv

Примонтировать некоторые системные каталоги для более корректной работы пакетного менеджера

сначала создать будущие точки монтирования

mkdir /home/uf4n/myrootfs/proc /home/uf4n/myrootfs/dev /home/uf4n/myrootfs/sys

примонтировать всё что нужно

mount -t proc none /home/uf4n/myrootfs/proc
mount --bind /dev /home/uf4n/myrootfs/dev
mount --bind /sys /home/uf4n/myrootfs/sys

Установка базового набора (система будет без пакетного менеждера; только Bash и основные утилиты)

urpmi bash drakx-installer-sysvinit net-tools iputils dhcpcd --force --root /home/uf4n/myrootfs/

Установка пакетного менеджера

urpmi rpm-build wget urpmi --force --root /home/uf4n/myrootfs/

Чтобы установить систему на диск, нужен загрузчик, утилиты для разбивки и форматирования диска, ядро

urpmi lilo e2fsprogs kernel-desktop --force --root /home/uf4n/myrootfs/

Примечание: ядро тянет непонятные зависимости и установка в среде chroot проходит не совсем корректно. Надо устанавливать ядро по-другому.

По идее, этого достаточно, чтобы установить систему (вручную) с работающим пакетным менеджером.

umount /home/uf4n/myrootfs/dev
umount /home/uf4n/myrootfs/sys
umount /home/uf4n/myrootfs/proc

Запаковать в архив образ корневой файловой системы

tar -cJf MyPreciousRootFS.tar.xz /home/uf4n/myrootfs/*

Установка на диск вручную

1) Записать на одну флешку rescue-образ, на другую архив с файловой системой.

2) Отформатировать диск

создать разделы на /dev/sda

fdisk /dev/sda

* Удалить все существующие разделы на диске, введя d и указав номер раздела.
* Создать новый раздел, введя n.
* Выбрать тип раздела (обычно p для основного раздела или e для расширенного раздела).
* Ввести номер нового раздела.
* Ввести начальный и конечный сектор раздела. Если надо использовать все свободное пространство, оставьте эти поля пустыми.
* Записать изменения, введя w.

отформатировать разделы

mkfs.ext4 /dev/sda1

3) Распаковать архив с корневой ФС на диск и чрутнуться на него

mkdir /mnt/n95 && mount /dev/sda1 /mnt/n95 && cd /mnt/n95

mkdir /mnt/n95 && mount /dev/sda1 /mnt/n95 && cd /mnt/n95
tar -xpJf ../MyPreciousRootFS.tar.xz

4) Чрутнуться

mount -o rbind /dev
mount -o rbind /sys /mnt/n95/sys/
mount -t proc none /mnt/n95/proc/
env -i TERM=$TERM SHELL=/bin/bash HOME=$HOME $(which chroot) /mnt/n95 /bin/bash
source /etc/profile
export PS1="(chroot) $PS1"

4) Написать /etc/fstab

5) Указать пакетному менеджеру репозиторий

“Прокинуть” сеть в среду chroot

ifconfig enp0s20u2c2 down
ifconfig enp0s20u2c2 up
dhcpcd enp0s20u2c2
urpmi.addmedia yamirr https://mirror.yandex.ru/mageia/distrib/9/x86_64/media/core/release/

6) Перегенерировать initrd

7) Установить загрузчик lilo

8) Настроить lilo на загрузку нужного ядра и init'a

Попытка сделать образ с apt оказалась неудачной

urpmi rpm-build –root /home/uf4n/myrootfs/ urpmi apt –root /home/uf4n/myrootfs/

Примечания

  • количество странных зависимостей, типа python и systemd повергает в шок!
  • пакетный менеджер написан на perl. Это плохо.

Ссылки

Пакетный менеджер urpmi

сборка_на_базе_mageia_mandriva.1714293015.txt.gz · Last modified: 2024/04/28 08:30 by uf4n