В прошлый раз я наверное не до конца понял когда разбирал, как развернуть Debian 10
через сервис FOG Project
, точнее я просто использовал за основу дистрибутив debian-10.0.0-amd64-netinst.iso
, вот только он не содержит большинства файлов, а если и нужны они то они загружаются с интернета через мою проксю apt-cacher-ng
. Но вот в ходе использования данной заметки «Как развернуть Debian 10 через Fog Project» я натыкался, что установщик не видит то жесткий диск, то сеть компьютера, сервера и даже гипервизора Debian 10 + Proxmox 6
. Углубленное чтение на этот счет вывело меня, а почему я не использовал связку Debian DVD + NFS + FOG
. Ведь дистрибутив DVD
размером более 4Gb
, а значит возможно в нем есть недостающие мне приложения.
Потому сегодня будет более расширенная заметка по настройке сетевого развертывания Debian 10
через сервис FOG Project
. Также это не просто заметка — это практика которую теперь использую Я в повседневности.
Шаг №1: Подключаюсь к серверу с сервисом FOG Project
ekzorchik@navy:~$ srv-fog (у меня настроен алиас: nano ~/.bashrc) ekzorchik@navy:~$ alias | grep srv-fog alias srv-fog='sshpass -p 712mbddr@ ssh -o "StrictHostKeyChecking no" ekzorchik@172.35.35.7 -p 22'
Шаг №2: Скачиваю Debian 10 DVD
на сервер где у меня развернут сервис FOG Project
ekzorchik@srv-fog:~$ wget https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/debian-10.1.0-amd64-DVD-1.iso ekzorchik@srv-fog:~$ file debian-10.1.0-amd64-DVD-1.iso debian-10.1.0-amd64-DVD-1.iso: DOS/MBR boot sector; partition 2 : ID=0xef, start-CHS (0x3ff,254,63), end-CHS (0x3ff,254,63), startsector 23504, 5664 sectors
Шаг №3: Создаю структуру каталогов для iPXE Menu
выбрав которое запуститься сетевая автоматизированная установка:
ekzorchik@srv-fog:~$ sudo mkdir -p /images/os/debian/10 ekzorchik@srv-fog:~$ sudo mkdir -p /tftpboot/os/debian/10 ekzorchik@srv-fog:~$ sudo mount -o loop -t iso9660 /home/ekzorchik/debian-10.1.0-amd64-DVD-1.iso /mnt/loop mount: /mnt/loop: WARNING: device write-protected, mounted read-only. ekzorchik@srv-fog:~$ sudo cp -R /mnt/loop/* /images/os/debian/10/ ekzorchik@srv-fog:~$ sudo umount /mnt/loop ekzorchik@srv-fog:~$ cd /tftpboot/os/debian/10/ ekzorchik@srv-fog:/tftpboot/os/debian/10$ sudo wget http://ftp.debian.org/debian/dists/buster/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz ekzorchik@srv-fog:/tftpboot/os/debian/10$ file initrd.gz && md5sum * && ls -lh initrd.gz initrd.gz: gzip compressed data, max compression, from Unix 01437ec6d6c2302bdebd2c0fad25fa68 initrd.gz -rw-r--r-- 1 root root 30M Sep 5 11:25 initrd.gz ekzorchik@srv-fog:/tftpboot/os/debian/10$ sudo wget http://ftp.debian.org/debian/dists/buster/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux ekzorchik@srv-fog:/tftpboot/os/debian/10$ file linux && md5sum * && ls -lh linux linux: Linux kernel x86 boot executable bzImage, version 4.19.0-6-amd64 (debian-kernel@lists.debian.org) #1 SMP Debian 4.19.67-2 (2019-08-28), RO-rootFS, swap_dev 0x5, Normal VGA 01437ec6d6c2302bdebd2c0fad25fa68 initrd.gz 0be9350d00f497fa4ad2c82742901082 linux -rw-r--r-- 1 root root 5.1M Sep 5 11:25 linux ekzorchik@srv-fog:/tftpboot/os/debian/10$ cd ~ ekzorchik@srv-fog:~$ sudo chown -R fog:root /tftpboot/os/debian/ ekzorchik@srv-fog:~$ ekzorchik@srv-fog:/tftpboot/os/debian/10$ ls -lh && md5sum * total 35M -rw-r--r-- 1 root root 30M Sep 5 11:25 initrd.gz -rw-r--r-- 1 root root 5.1M Sep 5 11:25 linux 01437ec6d6c2302bdebd2c0fad25fa68 initrd.gz 0be9350d00f497fa4ad2c82742901082 linux ekzorchik@srv-fog:/tftpboot/os/debian/10$ cd ~ ekzorchik@srv-fog:~$ sudo chown -R fog:root /tftpboot/os/debian/
Шаг №4: Установку Debian 10
буду производить только Server
редакции, а значит ни какого графического окружения, а не как в прошлый раз Desktop
.
ekzorchik@srv-fog:~$ sudo nano /var/www/fog/debian/buster/buster.seed d-i debian-installer/locale string en_US.UTF-8 d-i debian-installer/language string en d-i localechooser/supported-locales multiselect en_US.UTF-8 d-i debian-installer/country string US d-i console-setup/ask_detect boolean false d-i console-setup/layoutcode string us d-i console-setup/modelcode string SKIP d-i keyboard-configuration/xkb-keymap select us d-i netcfg/get_hostname string unassigned-hostname d-i netcfg/get_domain string unassigned-hostname d-i mirror/http/hostname string srv-debian d-i mirror/hthtp/domain string polygon.local d-i passwd/user-fullname string d-i passwd/root-login boolean false d-i passwd/username string ekzorchik d-i passwd/user-password password 712mbddr@ d-i passwd/user-password-again password 712mbddr@ d-i passwd/user-default-groups string sudo d-i user-setup/allow-password-weak boolean true d-i netcfg/choose_interface select auto d-i mirror/country select US d-i mirror/http/mirror select deb.debian.org d-i mirror/http/proxy string http://172.35.35.8:3142/ d-i cdrom-detect/manual_config boolean false d-i clock-setup/utc boolean true d-i clock-setup/ntp boolean true d-i time/zone string Europe/Moscow d-i partman/confirm boolean true d-i partman/choose_partition select finish d-i partman/confirm_nooverwrite boolean true d-i partman-auto/disk string /dev/[sv]da d-i partman-auto/method string lvm d-i partman-auto/choose_recipe select atomic d-i partman-lvm/device_remove_lvm boolean true d-i partman-lvm/confirm boolean true d-i partman-lvm/confirm_nooverwrite boolean true d-i partman-auto-lvm/guided_size string max d-i partman-partitioning/confirm_write_new_label boolean true d-i grub-installer/grub2_instead_of_grub_legacy boolean true d-i grub-installer/only_debian boolean true d-i grub-installer/bootdev string /dev/[sv]da d-i pkgsel/update-policy select none tasksel tasksel/first multiselect standard d-i pkgsel/include string tmux mercurial vim build-essential multipath-tools lsscsi lvm2 htop net-tools openssh-server d-i popularity-contest/participate boolean false d-i finish-install/reboot_in_progress note ekzorchik@srv-fog:~$ sudo chown -R www-data:www-data /var/www/fog/debian/buster/buster.seed
Шаг №5: Теперь создаю меню загрузки через Web
—панель администрирования FOG
.
http://IP&DNS/fog — user&pass — FOG Configuration — iPXE New Meny Entry
Menu Item: Debian 10 NFS
Description: Debian 10 NFS
Parameters:
kernel tftp://${fog-ip}/os/debian/10/linux
initrd tftp://${fog-ip}/os/debian/10/initrd.gz
imgargs linux initrd=initrd.gz root=/dev/nfs netboot=nfs nfsroot=${fog-ip}:/images/os/debian/10/ locale=en_US.UTF-8 keyboard-configuration/xkb-keymap=us console-keymaps-at/keymap=us netcfg/get_hostname=srv-debian netcfg/get_domain=polygon.local url=http://172.35.35.7/fog/debian/buster/buster.seed ip=dhcp rw boot || goto MENU
Menu Show with: All Hosts
И нажимаю Save Changes
Настройки iPXE
меню:
Шаг №6: Создаю VM
(выставляю первым грузится по сети) под гипервизором Debian 10 + Proxmox
и выбираю созданное iPXE
меню: Debian 10 NFS
и спустя некое количество время получаю развернутую Debian 10 Buster Server amd64:
Работает!!! Так у меня кстати всегда, сперва вникаю в поставленную задачу, получаю промежуточные результаты, а после дорабатываю до тех требований которые возникли в процессе эксплуатации. Уже на основе этой я смогу автоматизировать сетевую установку гипервизора Proxmox 6
, а не как раньше если мне нужно переустановить/развернуть с нуля:
- Как установить proxmox on Debian 10
- Базовая настройка сети для Proxmox 6
- Как убрать окно недействующей подписки Proxmox 6
- Режимы работы сети для VM Proxmox 6
Итого заметка работоспособна. С уважением автор блога Олло Александр aka ekzorchik.