User Tools

Site Tools


doc_extra:install2flash

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
doc_extra:install2flash [2011/04/19 19:57]
124.247.235.162 aqPOuRiXlG
doc_extra:install2flash [2014/12/18 21:33] (current)
Line 1: Line 1:
-XudazT  <a href="http://orwpmrlfhdwh.com/">orwpmrlfhdwh</a>+====== Установка Frenzy 1.1 на USB Flash. ======= 
 + 
 +//Инструкция от DarkSide83.// 
 + 
 +В качестве загрузчика будем использовать **Syslinux**. 
 + 
 +В первую очередь нужно получить загрузочный образ.  
 +В образе должна быть только папка **boot**, с файлом **boot.config** образ грузился только под qemu. 
 +Можно собрать его 2 способами: 
 + 
 +**1. как у AID'а** 
 + 
 +  1.1 Оставляем в ISO образе только папку boot! 
 +   
 +  1.2 Папку frenzy кидаем в корень флешки (FAT32) 
 + 
 +  1.3 Новый образ диска (чуть более 6 Мб) сохраняем в папке frenzy на флешке frenzy/frenzy-boot.iso 
 + 
 +  1.4 Качаем скрипт http://docs.freebsd.org/cgi/mid.cgi?4420AF56.60106, правим его и сохраняем его на флешке frenzy/iso2ufs.sh. 
 + 
 +<code> 
 +#!/bin/sh 
 + 
 +# You can set some variables here. Edit them to fit your needs. 
 + 
 +# Set serial variable to 0 if you don't want serial console at all, 
 +# 1 if you want comconsole and 2 if you want comconsole and vidconsole 
 +serial=
 + 
 +set -u 
 + 
 +if [ $# -lt 2 ]; then 
 +    echo "Usage$0 source-iso-path output-img-path" 
 +    exit 1 
 +fi 
 + 
 +isoimage=$1; shift 
 +imgoutfile=$1; shift 
 + 
 +export tmpdir=$(mktemp -d -t fbsdmount) 
 +# Temp file and directory to be used later 
 +export tmpfile=$(mktemp -t bsdmount) 
 + 
 +export isodev=$(mdconfig -a -t vnode -f ${isoimage}) 
 + 
 +echo "#### Building bootable UFS image ####" 
 + 
 +ISOSIZE=$(du -k ${isoimage} | awk '{print $1}'
 +SECTS=$((($ISOSIZE + ($ISOSIZE/5))*2)) 
 + 
 +# Root partition size 
 + 
 +echo "Initializing image..." 
 +dd if=/dev/zero of=${imgoutfile} count=${SECTS} 
 +ls -l ${imgoutfile} 
 +export imgdev=$(mdconfig -a -t vnode -f ${imgoutfile}) 
 + 
 +bsdlabel -w -B ${imgdev} 
 +newfs -O1 /dev/${imgdev}a 
 + 
 +mkdir -p ${tmpdir}/iso ${tmpdir}/img 
 + 
 +mount -t cd9660 /dev/${isodev} ${tmpdir}/iso 
 +mount /dev/${imgdev}a ${tmpdir}/img 
 + 
 +echo "Copying files to the image..." 
 +( cd ${tmpdir}/iso && find . -print -depth | cpio -dump ${tmpdir}/img ) 
 +#bzcat ${tmpdir}/iso/dist/root.dist.bz2 | mtree -PUr -p ${tmpdir}/img 2>&
 +1 > /dev/null 
 + 
 +#echo "/dev/ufs/${UFS_LABEL} / ufs ro 1 1" > ${tmpdir}/img/etc/fstab 
 + 
 +if [ ${serial} -eq 2 ]; then 
 +        echo "-D" > ${tmpdir}/img/boot.config 
 +        echo 'console="comconsole, vidconsole"' >> ${tmpdir}/img/boot/l= 
 +oader.conf 
 +elif [ ${serial} -eq 1 ]; then 
 +        echo "-h" > ${tmpdir}/img/boot.config 
 +        echo 'console="comconsole"' >> ${tmpdir}/img/boot/loader.conf 
 +fi 
 + 
 +cleanup() { 
 +    umount ${tmpdir}/iso 
 +    mdconfig -d -u ${isodev} 
 +    umount ${tmpdir}/img 
 +    mdconfig -d -u ${imgdev} 
 +    rm -rf ${tmpdir} ${tmpfile} 
 +
 + 
 +cleanup 
 + 
 +ls -lh ${imgoutfile} 
 +</code> 
 + 
 +1.5 Грузимся в Frenzy с компакта, или через виртуальную машину. 
 + 
 +1.6 Монтируем флешку 
 +<code> 
 +mount -t msdosfs /dev/da1s1 /mnt/tmp 
 +</code> 
 + 
 +1.7 Переходим в каталог frenzy на флешке. 
 +<code> 
 +cd /mnt/tmp/frenzy 
 +</code> 
 + 
 +1.8 Запускаем скрипт iso2ufs.sh 
 +<code> 
 +./iso2ufs.sh frenzy-boot.iso frenzy-boot.img 
 +</code> 
 +1.9 Ждем до окончания работы скрипта 
 + 
 +**2. как у qwerty.** 
 + 
 +2.1 Грузимся в Frenzy с компакта, или через виртуальную машину. 
 + 
 +2.2 Монтируем флешку и копируем на нее все содержимое каталога frenzy с компакта: 
 +<code> 
 +mkdir /mnt/flash && mount -t msdosfs /dev/da1s1 /mnt/flash 
 +cp -r /Frenzy/boot/frenzy /mnt/flash/  
 +</code> 
 + 
 +2.3 Переходим в каталог frenzy на флешке. 
 +<code> 
 +cd /mnt/flash/frenzy 
 +</code> 
 + 
 +2.3 Создаем микрообраз загрузочного диска 
 +<code> 
 +dd if=/dev/zero of=frenzy-boot.img bs=63k count=`expr 10206 / 63`  
 +mdconfig --t vnode -f frenzy-boot.img -x 63 -y 16 md3  
 +fdisk -a -i /dev/md3  
 +(на все вопросы отвечаем отрицательно кроме 'Should we write new partition table ?')  
 +</code> 
 + 
 +2.4 Устанавливаем загрузчик FreeBSD 
 +<code> 
 +boot0cfg -B -b /Frenzy/boot/boot/boot0 -o packet -s 1 -m 3 /dev/md3  
 +bsdlabel -w -B -b /Frenzy/boot/boot/boot /dev/md3s1  
 +</code> 
 + 
 +2.5 Создаем файловую систему 
 +<code> 
 +newfs -n -o space -m 0 -b 4096 -f 512 -i 8192 /dev/md3s1a  
 +</code> 
 + 
 +2.6 Монтируем образ: 
 +<code> 
 +mount /dev/md3s1a /mnt/tmp  
 +</code> 
 + 
 +2.7 Копируем только папку **boot**: 
 +<code> 
 +cp -r /Frenzy/boot/boot /mnt/tmp/  
 +</code> 
 + 
 +2.8 Отмонтируем образ: 
 +<code> 
 +umount /mnt/tmp  
 +</code> 
 + 
 +2.9 Удаляем md-устройство: 
 +<code> 
 +mdconfig -d -u 3  
 +</code> 
 + 
 +Для загрузки образа будем использовать **memdisk** из комплекта **syslinux**. 
 +Взять можно здесь http://www.kernel.org/pub/linux/utils/boot/syslinux/
 +После выполнения этих действий нужно будет внести строки 
 +<code> 
 +LABEL frenzy 
 +MENU LABEL Frenzy 1.1 RUS 
 +KERNEL /vimages/memdisk #путь до memdisk 
 +APPEND initrd=/frenzy/frenzy-boot.img harddisk bigraw 
 +</code> 
 +в файл /boot/syslinux.cfg(у меня на флешке уже была сборка ultilex-3.0.0, там я внес эти строки в /boot/slax.cfg).
doc_extra/install2flash.1303243030.txt.gz · Last modified: 2011/04/19 19:57 by 124.247.235.162