Намедни случалась беда со старым 10-ти летним нетбуком. Перестали работать USB порты и соответственно SD-card reader.
Пришлось реставрировать в памяти процесс установки Ubuntu по сети, учитывая текущие реалии с минимальными усилиями и наворотами.
Надеюсь, кому нибудь пригодится.
Берём любой Linux (подойдёт даже виртульная машина)
1. Ставим tftpd-hpa TFTP сервер :
sudo apt get tftpd-hpa
2. Ставим DHCP сервер :
sudo apt get isc-dhcp-server
3. Создаём папку tftpboot в корне файловой системы
4. Назначаем владельца папки и выставляем доступы (:
chown -R tftp:tftp /tftpboot
(опционально)
chmod -R 777 /tftpboot
5. Загружаем загрузчик (на данный момент):
http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-i386/current/images/netboot/netboot.tar.gz (для bionic)
Тут именно x86, так, как нетбук старый. Для focal и позже будут доступны только x64 версии в соответствующих папках на
http://archive.ubuntu.com/ubuntu/dists/Но после установки можно обновиться по focal (do-release-upgrade) - для пользователей x64- не прозеваете

6. Распаковываем содержимое папки в /tftpboot (pxelinux.0 должен быть в корне)
7. Открываем
sudo nano /etc/default/tftpd-hpa
и вставляем это:
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="--secure"
RUN_DAEMON="no"
8. Открываем
sudo nano /etc/default/isc-dhcp-server
и прописываем декларацию интерфейса, на котором DHCP будет слушать запросы - в моём случае WiFi:
INTERFACE="wlp2s0"
(тут я обошёлся без v4 и v6)
Для того, чтобы узнать какие сетевые интерфейсы присутствуют, введите :
ip a
Далее, этот интерфейс будет искаться в следующем файле.
9. Открываем
sudo nano /etc/dhcp/dhcpd.conf
и прописываем недостающее:
authoritative;
allow booting;
allow bootp;
subnet 192.168.1.0 netmask 255.255.255.0 {
interface wlp2s0;
range 192.168.1.220 192.168.1.250;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 8.8.8.8;
filename "/pxelinux.0";
}
Не стал создавать новую подсеть и прописал параметры текущей сети под предводительством домашнего роутера.
Так же, нужно ещё раз продублировать интерфейс.
Обратите внимание на имя файла для загрузки по DHCP : /pxelinux.0
10. Всё готово.
Можно попробовать запустить / перезапустить оба сервера (TFTP и DHCP)
Не забудьте на всякий случай отключить DHCP сервер на роутере.
systemctl start isc-dhcp-server
systemctl start tftpd-hpa
systemctl restart isc-dhcp-server
systemctl restart tftpd-hpa
Так же, при желании/ошибках, можно просмотреть статус обоих сервисов:
systemctl status isc-dhcp-server
systemctl status tftpd-hpa
В итоге получаем отличную текстовую установку Ubuntu с возможностью выбора различный опций прямо с сети. Тут и графические интерфейсы, и основные сервисы и настройка сервера под определенные нужды (Ubuntu Studio).
Установил себе версию Ubuntu Server Basic (последняя). 15 Gb и 65 Mb RAM.