PXE загрузка по сети

Post new topic   Reply to topic    DD-WRT Forum Forum Index -> Использование и установка DD-WRT
Author Message
lang
DD-WRT Novice


Joined: 18 Dec 2008
Posts: 32

PostPosted: Fri Mar 06, 2009 11:48    Post subject: PXE загрузка по сети Reply with quote
Не пробовал ли кто-нибудь сетевую загрузку по протоколу PXE с роутера? Если да, напишите, пожалуйста, какими дистрибутивами пользовались.
Sponsor
lang
DD-WRT Novice


Joined: 18 Dec 2008
Posts: 32

PostPosted: Sun Mar 08, 2009 6:23    Post subject: Reply with quote
Возникла проблема установки ОС на комп без CD и флоппи драйвов. Как оказалось, достаточно настроить DHCP и TFTP серверы, разместить необходимые файлы на роутере (с флешкой или HDD), и можно загрузить по сети любой компьютер, поддерживающий PXE.

На всякий случай напишу как это сделать, вдруг пригодится кому-нибудь.

1. На вкладке Services -> DNSMasq включаем:
Code:

DNSMasq    Enable
Local DNS  Enable

В окне Additional DNSMasq Options вписываем строчку:
Code:

dhcp-boot=pxelinux.0

Нажимаем кнопки Save, Apply Settings внизу. Можно проверить, что эта строчка попала в файл конфигурации:
Code:

cat /tmp/dnsmasq.conf

и перезапустить dnsmasq:
Code:

killall dnsmasq
dnsmasq --conf-file=/tmp/dnsmasq.conf

2. Ставим xinetd, если еще не установлен:
Code:

ipkg-opt install xinetd.

3. Ставим tftp сервер:
Code:

ipkg-opt install atftp

4. В файле /opt/etc/xinetd.d/atftp меняем пользователя на nobody. Его (nobody) нужно создать, если его еще нет.
Как это сделать см. Вики по Optware . Файл конфигурации atftp после этого выглядит так:
Code:

#
# atftp
#
service tftp
{
       flags            = REUSE
       socket_type      = dgram
       protocol         = udp
       instances        = 30
       wait             = yes
       user             = nobody
       server           = /opt/sbin/atftpd
       server_args      = /opt/tftpboot
       log_on_success   = HOST PID
       log_on_failure   = HOST
       disable          = no
}

5. Чтобы xinetd стартовал при перезагрузке роутера, в стартовом скрипте должны присутствовать строчки наподобие следующих (см. снова Вики по Optware ):
Code:

if [ -d /opt/etc/init.d ]; then
  for f in /opt/etc/init.d/S* ; do
      [ -x $f ] && $f start
  done
fi

6. Cоздаем директорию tftpboot для загрузки и поддиректорию pxelinux.cfg в ней:
Code:

mkdir -p /opt/tftpboot/pxelinux.cfg

7. Запускаем xinitd:
Code:

/opt/etc/init.d/S10xinitd

Проверить, что tftp сервер прослушивает свой порт, можно командой:
Code:

netstat -ln

В выводе должна быть строка, содержащая udp порт 69:
Code:

udp        0      0 0.0.0.0:69              0.0.0.0:*

8. Помещаем в директорию /opt/tftpboot/ файлы pxelinux.0 и memdisk (можно взять, например из пакета syslinux-xxxx-i386.rpm, найти в инете или загрузить по ссылке в конце).

Дальнейшие действия подгтавливают содержимое директории /opt/tftpboot и зависят от того, что именно требуется загружать. Как пример, рассмотрим загрузку Damn Small Linux и FreeDOS.

9. В директории /opt/tftpboot/pxelinux.cfg создаем текстовый файл с именем default:
Code:

DISPLAY boot.txt
DEFAULT dsl
LABEL dsl
        kernel linux24
        append ramdisk_size=100000 init=/etc/init lang=us apm=power-off vga=791 initrd=minirt24.gz nomce noapic quiet BOOT_IMAGE=knoppix frominitrd nopcmcia noagp noswap base
LABEL fdos
        kernel memdisk
        append initrd=freedos.img floppy

TIMEOUT 0
PROMPT 1

Для каждой метки LABEL (название метки произвольное) указываются две строчки kernel и append. (Опции append для DSL не умещаются здесь в одну строчку, но строка должна быть одна.)
10. В директорию /opt/tftpboot/ помещаем файл linux24 из iso-дистрибутива Damn Small Linux и
файл minirt24.gz, который изготавливается по рецепту. Многочисленные опции загрузки DSL также взяты оттуда. Файл freedos.img заимствовован из live-cd дистрибутива systemrescuecd, где можно найти много других образов дискет.

11. Составляем текстовый файл boot.txt, который будет выведен на экран в процессе загрузки:
Code:

* OS LOAD MENU *
- To load Damn Small Linux, press ENTER
- To load FreeDOS, type 'fdos' then ENTER

12. После того, как в директорию /opt/tftpboot/ помещены все файлы, дадим команды:
Code:

cd /opt/tftpboot
chown -R nobody: .


Теперь на компьютере, имеющем проводное подключение к роутеру, можно выбрать NETBOOT в BIOS setup.
При перезапуске DHCP сервер даст IP адрес и переадресует к TFTP серверу, откуда будет выполнена загрузка.
(Так как загружаемая ОС размещается в памяти клиента, ее должно быть достаточно, но обычно это не проблема.)

Содержимое директории /opt/tftpboot можно взять отсюда в готовом виде (~50M).


Last edited by lang on Tue Feb 02, 2010 22:08; edited 1 time in total
Timuss
DD-WRT Novice


Joined: 02 Mar 2009
Posts: 3

PostPosted: Fri Mar 20, 2009 6:36    Post subject: Reply with quote
Маленькое замечание - Адрес даст не DNS (это не его функция), а DHCP.... просто DHCP есть часть пакета DNSMasq....
lang
DD-WRT Novice


Joined: 18 Dec 2008
Posts: 32

PostPosted: Fri Mar 20, 2009 10:23    Post subject: Reply with quote
Спасибо за поправку, конечно DHCP.
vladiba1
DD-WRT Novice


Joined: 09 Nov 2008
Posts: 22

PostPosted: Fri Mar 20, 2009 19:07    Post subject: Reply with quote
Отлично!
А почему до сих пор не в wiki?
dtux
DD-WRT Novice


Joined: 29 Apr 2010
Posts: 18

PostPosted: Fri Oct 15, 2010 7:06    Post subject: Reply with quote
/opt/etc/init.d/S10xinitd - такого файла нет )))
/opt/etc/init.d/S10xinetd - недостаточно прав для запуска. помогите побороть
boroda2k7
DD-WRT Novice


Joined: 17 Sep 2010
Posts: 3

PostPosted: Mon Oct 25, 2010 11:08    Post subject: Reply with quote
спасибо за информацию - сделал набор acronis и установку ubuntu

а как добавить загрузку WinPE и LiveCD Ubuntu например?

то что находил в интернете - заставить работать так как надо пока не вышло.
роутер - dir-320
speller
DD-WRT Novice


Joined: 31 Oct 2010
Posts: 22

PostPosted: Mon Nov 08, 2010 11:57    Post subject: Reply with quote
В копилку про сетевую загрузку.

У меня в сети стоит сервер под управлением вин2003 (винапдейт, закачки, обновки антивируса), поднят WDS сервер для развертывания виндов по сети. Чтобы этот сервер работал совместно с дхцп роутера - нужно в дополнительные опции DNSMasq прописать такую строчку:

dhcp-option=vendor:PXEClient,60,1.1.1.1

(вместо 1.1.1.1 вписать ип адрес wds сервера)
Сам WDS сервер должен быть сконфигурирован на работу со внешним DHCP сервером.
AKokarev
DD-WRT Novice


Joined: 03 Jan 2012
Posts: 10

PostPosted: Tue Jan 03, 2012 17:11    Post subject: Reply with quote
Как заставить грузить файл образа\конфиги, загрузчик из интернета? Хочу выложить на сайте все необходимое, а роутер носить с собой для подключения к инету.
Если такое возможно, то это СУПЕР! Можно будет сделать отдельный проект для удаленной загрузки из интернета! (лечение вирусов и проч.)
dr04
DD-WRT Novice


Joined: 13 Feb 2012
Posts: 2

PostPosted: Mon Feb 13, 2012 2:02    Post subject: ещё интересны http протокол можно Reply with quote
вводим в википедии поиск mount и смотрим пункт монтирование фтп серверов.Можно в точку доступа пихнуть 3Г модем и через него выходить в инет. линукс ядро наверное хорошёб разместить в памяти 3Г модема - он же поддерживает микросд карты памяти. А ещё эммулирует сдром в котором лежит установщик дров - вместо них хорошёб положить syslinux. Остаётся выбор дистрибутива типа ливсд Liberté Linux или Porteus или убунта(Startup Disk Creator) тож умеет делать загрузочные флешки - можно через карт ридер микросд сделать загрузочной убунтой... я тут вообще просто про загрузку по сети читаю(роутер без юсб) Very Happy в дропбокс расшарить образ какой нить и по http его загрузить. кстати ещё интересно как может себя вести юсб хаб подключённый к роутеру.
Когда работаешь с убунту с юсб флешки в конце работы рекомендуют делать так N.B. always do a "sudo sync" and wait for it to finish every time before shutting down the PC to ensure all data is written to the USB
И тогда инфа будет сохраняться.
Важный момент что если памяти в роутере мало - он бы сам мог догрузить себя из интернета, так что как насщёт формулировки загрузки роутера по интернету
и вообще было б прикольно целевые дистрлинуксы хранить в виртуальной машине, потому что один фиг линуксы не зависят от железа и грузятся на любом железе. Научить загрузчик понамать файлы образов жёстких дисков.
http://boot.slitaz.org/ru/
dr.gopher
DD-WRT Novice


Joined: 19 Jun 2012
Posts: 1

PostPosted: Tue Jun 19, 2012 14:14    Post subject: Reply with quote
lang wrote:

Содержимое директории /opt/tftpboot можно взять отсюда в готовом виде (~50M).


ftp://lang.selfip.net просит пароль. У кого есть живой архив?
dr04
DD-WRT Novice


Joined: 13 Feb 2012
Posts: 2

PostPosted: Sat Aug 18, 2012 10:38    Post subject: Reply with quote
http://www.linux.org.ru/forum/general/7825659
вот тож интересное описание - загрузка по http://
dobs
DD-WRT User


Joined: 11 Feb 2011
Posts: 380
Location: /home/Ukraine/Kiev

PostPosted: Sat Aug 18, 2012 11:25    Post subject: Reply with quote
Kто какие исошки пробовал грузить?

У меня грузит:
Clonezilla - клонирование дисков
boot.fedoraproject.org - установщик Федоры
HirensBoot CD - старый правда
KolibriOS - подобие ОС, в которой у меня мышь не работает
Hardware Detection Tool - Инфа об устройстве
MemTest86 4.20 - тест оперативки


Доктор веб - не заработал
Каспер - не заработал


П.С. PXE стоит не на роутере, а на серваке под шляпой, на роутере прописано в конфиге DHCP что есть PXE сервер с таким-то IP...

_________________
Home - DIR-825 r22118
Work - DIR-825 x2 OpenWRT

Беспроводное оборудование, SOHO, Mikrotik, Ubiquiti, доставка по Украине

OCR Free
crusaders
DD-WRT Novice


Joined: 02 Dec 2014
Posts: 5

PostPosted: Tue Jun 13, 2017 7:32    Post subject: Reply with quote
Есть офигенная сборка AdminPE там полный фарш и описание как что делать. И при загрузке по сети подтягивает драйвера софт в виде сетевого диска Z
Display posts from previous:    Page 1 of 1
Post new topic   Reply to topic    DD-WRT Forum Forum Index -> Использование и установка DD-WRT All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum