Portál AbcLinuxu, 7. května 2025 14:52
Jelikož jsem se touto problematikou docela podstatnou chvíli zabýval (stavěl jsem vlastní odlehčené liveCD s PXE serverem), něco přihodím.
Ve zkratce - ne, není to možné.
Trochu delší varianta - lze použít utilitku "memdisk" z balíku syslinux. Ta vytvoří (po nahrání a spuštění na cílovém systému) pomocí BIOS callů disk v paměti, kam se potom nahraje image z PXE serveru. To dokonale funguje pro systémy typu DOS. Nevýhodou je pak kopírování celého obrazu po síti a tudíž nutný dostatek RAM na cílovém stroji. Memdisk má navíc myslím limitaci na 32bit adresní prostor (co si pamatuju ze zdrojáku). Násilné převedení CD obrazu na diskový .img (je na to v syslinux balíku skript) obyčejně taky nefunguje - v nabootovaném systému se disk tváří jako HDD, ale systém předpokládá data na CD médiu (tzn. třeba nemá nahrané HDD drivery v tu chvíli).
Nicméně nevzdával jsem to a hledal dál, až jsem nalezl patch pro podporu ISO obrazů - možná už jej začlenili. Avšak tato podpora nepřidává nic extra převratného, jen umožňuje systému vidět nahraný image jako CD. Problém je v tom, že většina moderních OS (teď to asi neřeknu úplně přesně) resetuje disky při nahrávání svých driverů, čímž efektivně odstraní tuto virtuální mechaniku. Pokud si dobře pamatuji, takový Windows 95 to nedělá (byl tam "obrázek místo slibů").
Ve výsledku tedy ne - není možné tak jednodušše nabootovat jakýkoli ISO po PXE. Jedním řešením by mohlo být obstarání USB verze distribuce, jiným (a asi i čistějším) nabootování kernelu a initrd/initramfs na dálku a připojení zbytku přes NFS.
Řekl bych, že někdo již něco takového řešil právě se sysrescd, proto předpokládám "NFS-enabled" balíky někde na netu.
>>>disk musí být naformátován na FAT32
Nejaka novina. Rekl bych FAT 16 ci FAT 12
Z celym slavnym Hirens Boot CD mam neblahe zkusenosti ohledne podpory moderniho HW.
Na cca 6 let starem notebooku to lze pouzit. Na modernich vsak nikoliv.
Changes in 3.84 * SYSLINUX: make the DOS installer work for MS-DOS 7.x/8.x (Win9x/ME) again.
* HDT: updated to version 0.3.6 (numerous changes.)
* mboot.c32: now supports video mode setting if requested by the image.
* MEMDISK: Fix floppy images of PC-DOS.
* MEMDISK: Add support for emulation of CD-ROM images; patch by Shao Miller.
Changes in 3.84
* SYSLINUX: make the DOS installer work for MS-DOS 7.x/8.x (Win9x/ME) again.
* HDT: updated to version 0.3.6 (numerous changes.)
* mboot.c32: now supports video mode setting if requested by the image.
* MEMDISK: Fix floppy images of PC-DOS.
* MEMDISK: Add support for emulation of CD-ROM images; patch by Shao Miller.
Pvne jsem si lisknul, ale ono kazde PC umi bootovat ze site ?
yum install tftp-server xinetd syslinuxv
/etc/xinet.d/tftpjsem změnil hodnotu
disable=yesna hodnotu
disable=nos následným restartem xinetd serveru
service xinetd restartPotom jsem upravil konfigurační soubor DHCP serveru takto:
[root@gw /]# cat /etc/dhcpd.conf authoritative; allow booting; allow bootp; filename "/pxelinux.0"; ddns-update-style interim; max-lease-time 604800; default-lease-time 86400; option subnet-mask 255.255.255.0; option domain-name "work.local"; option domain-name-servers 172.20.100.254, 77.78.72.1; subnet 172.20.100.0 netmask 255.255.255.0 { option routers 172.20.100.254; option broadcast-address 172.20.100.255; range 172.20.100.101 172.20.100.150; }.....a zrestartoval DHCP server
service dhcpd restartpoté jsem nakopíroval nezbytné soubory do /tftpboot
cp /usr/lib/syslinux/pxelinux.0 /tftpboot cp /usr/lib/syslinux/menu.c32 /tftpboot cp /usr/lib/syslinux/memdisk /tftpboot cp /usr/lib/syslinux/mboot.c32 /tftpboot cp /usr/lib/syslinux/chain.c32 /tftpboot.....a vytvořil adresář "pxelinux.cfg"
mkdir /tftpboot/pxelinux.cfgTeď jsem ve stavu, kdy si PC, které je nastavené pro boot ze sítě, lízne IP adresu a TFTP začne něco dělat. Jinými slovy, prostředí by snad mělo být "připraveno".
label dos kernel memdisk append initrd=dos.img floppy
bol som .......
Uz to idem pucit.
O chvilku este popisem, ze co a ako.
Potom ked mozes tak to niekde vystav a daj tu link aby aj ostatny vedeli, ze co a ako
label nazev
kernel /vase/cesta/memdisk
append initrd=/vase/cesta/cd.iso iso
label nazev
kernel /vase/cesta/memdisk
append initrd=/vase/cesta/cd.iso iso
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.