Установка Debian с локального зеркала репозитория

Для этого нам понадобится локальное зеракало репозитория и hd-media установщик.

Все задачи разбиты на 5 шагов, + 3 необязательных.

Шаг №0 - Создание загрузочной флешки и установка Grub2

Для этого нужна флешка с файловой системой ext(2/3/4), как её делать думаю все знают (например использовать gparted)

Монтируем флешку в /media/somedrive/, после чего нужно будет установить Grub2

после выполнения этой операции на флешке появится каталог boot/grub/

Шаг №1 - Выкачивание ядра и инициализизационного образа инсталятора

заходим на официальный файло-обменник Debian (т.к. зеркало у меня под I386) то путь следующий:

качаем следующие файлы:

и пишем на флешку (/media/somedrive/)

Шаг №2 — «Делаем вид что зеркало репозитория есть cdrom»

Ниже в тексте будет встречаться каталог «mirror» — это каталог локального репозитория который находится на конкретном винте.

В «mirror» каталоге создаём следующий каталог и файлы: (.disk,base_components, base_installable, cd_type, info, udeb_include). описание как их создать ниже:

        mkdir .disk; cd .disk;
        echo main >base_components
        touch base_installable
        echo full_cd/single >cd_type 
        echo 'Debian GNU/Linux sid "Sid" - TheChosenOne' >info 
        echo -e 'netcfg\nethdetect\npcmciautils-udeb' >udeb_include 

Шаг №3 — (Если зеркало лежит на NTFS файловой системе) - Выдерание ntfs драйвера

в том же «mirror» каталоге заходим в каталог:

/pool/main/l/linux/

находим пакет под конкретное ядро (например I386):

вытаскиваем с него ntfs.ko после чего копируем его на /media/somedrive/

Шаг №4 - Grub — загрузка ядра и образа инсталятора

после 1го шага на флешке появился каталог /boot/grub, в нём нужно будет создать файл grub.cfg и прописать следующие строки:

        menuentry 'Debian GNU/Linux, hd-media installer' { 
                insmod gzio 
                insmod part_msdos 
                insmod ext2
                search --no-floppy --fs-uuid --set=root dc6056d3-e22c-4d0b-a1f6-41d525e1128f
                linux   /vmlinuz 
                initrd  /initrd.gz 
        } 

Так же:

search --no-floppy --fs-uuid --set=root dc6056d3-e22c-4d0b-a1f6-41d525e1128f

можно не писать по идее Grub уже установил текущий носитель как root

Шаг 5 - Установка Debian

После того как загрузится инсталятор Debian'a, переходим на 2ю виртуальную консоль (alt+f2) и в ней : Включаем драйвер EXT4

modprobe ext4;

Создаём временные каталоги для работы

mkdir m n;

Монтируем раздел с ntfs.ko (Данное действие не требуется если зеркало не находится на NTFS разделе)

mount /dev/sdXx /m

Загружаем ntfs драйвер (Данное действие не требуется если зеркало не находится на NTFS разделе)

insmod /m/ntfs.ko

Монтируем раздел с образом репа

mount /dev/sdXx /n

# создаём символическую ссылку на /cdrom с указанием на каталог зеркала

ln -s /n/mirror/ /cdrom

# теперь нужно будет подправить поисковик cd-образов, так что бы он их не искал и работал с тем что мы сделали.

nano /var/lib/dpkg/info/iso-scan.postinst

analyze_cd; 
exit 0;

дальше переходим на 1 консоль где запущен инcталятор и ставим ос, после установки перезагружаемся

Шаг №5.1 — Если по какой либо причине не установился Grub во время установки дебиана, загрузить Debian можно, прописав в Grub следующие строки:

        insmod gzio 
        insmod part_msdos 
        insmod ext2
        set root='(hdX,x)' 
        linux   /vmlinuz root=/dev/sdXx ro quiet 
        initrd  /initrd.gz

Шаг №6 - После установки редактируем /ect/apt/sources.list

убираем cd-rom т.к. возникают иногда «глючит» и пишем за место него

deb file:///Путь до репозитория/ Кодовое_Имя Набор_разделов_в_зеркале

deb file:///mnt/mirror/ sid main contrib non-free

обновляем данные

sudo apt-get update

Шаг №7 - Ставим рабочее окружение и дисплейный менеджер (например xfce и lightdm)

sudo apt-get install xfce4 xfce4-goodies lightdm

Шаг №8 - Ставим драйвера на видео карту (например ati)

sudo apt-get install fglrx-driver -y
sudo aticonfig --initial

Радуемся установленной ОС, теперь весь софт будет устанавливаться с локального зеркала репозитория, если конечно в /ect/apt/sources.list не пропишем глобальные зеркала =)