#!/bin/bash # # # SysLinux.sh.txt # ---------------- # - Make a standalone Syslinux Boot floppy # - system runs in memory # # # Original Files # --------------- # http://Linux-Boot.net/Boot.Standalone/FD/SysLinux/Syslinux.sh.txt # http://lists.debian.org/debian-boot/2002/01/msg00379.html # # # 08-Mar-05 amo Date-of-Birth # 16-Mar-05 amo Added /dev/fd0u1722 -- syslinux Bootable 1.72MB floppy # 26-Mar-05 amo Bootable Floppy ( /dev/fd0u1722 ) or Bootable USB ( /dev/sda1 ) # # # # # Run the command and show status # ------------------------------- function doecho() { cmd=$1 # echo "$cmd" eval $cmd # if [ $? != 0 ]; then echo "#" echo "# ERROR: FAILED: $cmd " echo "#" # exit 1 # fi # } # doecho # # # LowLevel format the floppy # ========================== # fdformat /dev/fd0u1440 # fdformat /dev/fd0u1722 # fdformat /dev/fd0u1760 # syslinux /dev/fd0u1760 # /dev/fd0u1760: Sector sizes other than 512 not supported # DEV="/dev/fd0u1722" DEV="/dev/sda1" # BSS="/boot/dos.bss.fd" BSS="/boot/dos.bss.usb" # # the boot kernel versions # ------------------------ KER="2.4.29ow.p4" # # # umount $DEV doecho "#" # # lowlevel format # ---------------- # fdformat $DEV # dd if=/dev/zero of=/dev/sda bs=512 # # remove prev lilo # lilo -U -C /etc/lilo.sda.conf # # erase prev MBR # dd if=/dev/zero of=/dev/sda bs=448 count=1 # # # FileSystem format # ------------------ # doecho "mformat a:/s" # # usb doecho "mkdosfs /dev/sda1" # # doecho "dd if=$DEV of=$BSS bs=512 count=1 " doecho "#" # # http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.07.tar.bz2 # http://easynews.dl.sourceforge.net/sourceforge/nasm/nasm-0.98.39.tar.bz2 # #oecho " syslinux /dev/fd0 " doecho " syslinux $DEV " doecho " #" # -- seems to like /dev/fd0u1722 # # doecho " mount -t msdos $DEV /mnt/dos " doecho " df | grep /mnt/dos " # /dev/fd0u1722 1706 1613 93 95% /mnt/dos doecho " #" # # doecho " cp -p $BSS /mnt/dos/dos.bss" # doecho " cp -p /boot/vmlinuz-$KER /mnt/dos/linux " doecho " cp -p /boot/config-$KER /mnt/dos/linux.cfg" # # initrd is NOT needed if the kernel has everything built in # #oecho " cp -p /boot/initrd-2.4.29small.gz /mnt/dos/initrd.gz" # cp -p /boot/initrd-2.4.29.custom.gz /mnt/dos/initrd.gz # # doecho " cp -p Patches.FD/boot/syslinux/boot.msg /mnt/dos" doecho " cp -p Patches.FD/boot/syslinux/syslinux.cfg /mnt/dos" #oecho " cp -p Patches.FD/boot/syslinux/syslinux.txt /mnt/dos" doecho " #" # doecho " df | grep /mnt/dos " doecho " #" # # doecho " sync" doecho " umount /mnt/dos " # # # set the / device # ================ # http://Linux-Boot.net/Scripts/Rdev/rdev.txt # # # rdev test # --------- # rdev /dev/fd0u1722 /dev/ram0 # rdev -r /dev/fd0u1722 0 # rdev -R /dev/fd0u1722 1 # rdev /mnt/floppy/linux /dev/ram0 # # # End of file