Quote (Sh1td0wn)
Пробовали собирать и использовать fbinst?
только испробовал....на материнке Intel загрузилось
остальные будем пробовать завтра. Спасибо.
Добавлено (16.03.2012, 01:13)
---------------------------------------------
Quote (bodyakov)
остальные будем пробовать завтра. Спасибо.
на gigabyte не грузится
grub rescye - не может найти root
Добавлено (16.03.2012, 13:31)
---------------------------------------------
Решение.
http://www.rmprepusb.com/tutorials/usbpreplinux
Добавлено (27.03.2012, 10:35)
---------------------------------------------
На некоторых матплатах не грузилось. Решение следующие(немного с костылями):
Code
#!/bin/bash
#
flash=/dev/sdb
part=/dev/sdb1
umount $part
#erase mbr
echo Erase mbr
dd if=/dev/zero of=$flash bs=1024 count=1024
#calculate sectors, cylinders
size=`fdisk -l $flash | grep $flash | awk '{print $5}'`
echo disk size - $size bytes
cylinders=`echo $size/255/63/512 | bc`
echo cylinders - $cylinders
sectors=`echo $cylinders*255*63 | bc`
echo sectors - $sectors
sizesectors=`echo $sectors-63 | bc`
cat >sfdisk.in <<EOF
unit: sectors
/dev/sdb1 : start= 63, size= $sizesectors, Id= c, bootable
/dev/sdb2 : start= 0, size= 0, Id= 0
/dev/sdb3 : start= 0, size= 0, Id= 0
/dev/sdb4 : start= 0, size= 0, Id= 0
EOF
#create partition table and partition
echo Create partition table
sfdisk -f -C$cylinders -H255 -S63 /dev/sdb <sfdisk.in
#format partition
echo Format Partition
mkfs.vfat -F 32 -n label $part
./ms-sys -H 255 -w $flash
./ms-sys -p -H 255 -w $part
sync
partprobe -s $flash
#modify flash sectors
#erase 65 sector (strange data is here)
echo Correct FAT boot sectors
dd if=/dev/zero of=$flash bs=512 count=1 seek=65
#extract 63 sector and parse
dd if=$flash of=63.sec bs=512 count=1 skip=63
#find start sector of partition (63)
startsector=`echo "ibase=16; $(od -t x2 --skip-bytes=28 --read-bytes=2 63.sec | awk '{print $2; exit}' | tr [:lower:] [:upper:])"|bc`
#find number of hidden sectors (32)
hiddensectors=`echo "ibase=16; $(od -t x2 --skip-bytes=14 --read-bytes=2 63.sec | awk '{print $2; exit}' | tr [:lower:] [:upper:])"|bc`
#find size of FAT
fatsize=`echo "ibase=16; $(od -t x2 --skip-bytes=36 --read-bytes=2 63.sec | awk '{print $2; exit}' | tr [:lower:] [:upper:])"|bc`
#find start sectors of each FAT
fat1startsector=`echo $startsector+$hiddensectors | bc`
echo Start sector of 1st FAT: $fat1startsector
fat2startsector=`echo $startsector+$hiddensectors+$fatsize | bc`
echo Start sector of 2nd FAT: $fat2startsector
#modify 1st sectors of FATs
dd if=fat.bin of=$flash bs=16 count=1 seek=$fat1startsector
dd if=fat.bin of=$flash bs=16 count=1 seek=$fat2startsector
#extract 64 sector and copy them to 70 sector (missing fsinfo backup)
dd if=$flash of=64.sec bs=512 count=1 skip=64
dd if=64.sec of=$flash bs=512 count=1 seek=70
#install syslinux
echo Install Syslinux
./syslinux -i $part
#write syslinux MBR
dd if=mbr.bin of=$flash bs=446 count=1