From: Kern Sibbald Date: Mon, 21 Sep 2009 09:15:27 +0000 (+0200) Subject: Move usb to oldusb X-Git-Tag: Release-5.0.3~3 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=fb21b5066e01a80263767f2406829a10dfa58303;p=bacula%2Frescue Move usb to oldusb --- diff --git a/rescue/linux/oldusb/README.technotes b/rescue/linux/oldusb/README.technotes new file mode 100644 index 0000000..4b2f47c --- /dev/null +++ b/rescue/linux/oldusb/README.technotes @@ -0,0 +1,61 @@ + +Technical details of creating the USB key boot images. Unless +you want to rebuild (remaster) the iso boot image, you will not +need this. + +The directory "remaster" contains the scripts that allow picking +apart a Kubuntu Hardy ISO and then updating and recombining the +parts into a USB boot image. The information below is somewhat +low level and should not be needed unless you want to do your +own remastering either starting from the Kubuntu release or from +the Bacula remastered release. + +Note, the sqfs.tar.gz is the whole squashfs unsquashed. + +The kernel image (vmlinuz) is a copy of the most recent kernel i.e. + + sqfs/boot/vmlinuz-2.6.24-23-generic + +and initrd.gz is a copy of the most recent initrd.img i.e + + sqfs/boot/initrd.img-2.6.24-23-generic + +they are renamed and put in the kubuntu8 partition in: + + casper/vmlinuz +and + casper/initrd.gz + +respectively. + +The above updates are automatically done when running +the write_sqfs_to_disk_image script. Then the final +step is to tar up kubuntu8. + +Note, initrd.gz is made after fixing the bug in +/usr/share/initramfs-tools/scripts/casper +see note 2. in bugs with Kubuntu boot process below. + +When updating the USB root partition (changing something), I +strongly recommend that you work with the disk image then +repack it (pack_disk_image) and then run load_disk_image. + + +Packages needed: +apt-get install syslinux mbr + + +Kubuntu boot tricks: +1. Booting with persistence added to the kernel options will permit + mounting of a USB casper-rw and home-rw partitions on the USB key. + casper-rw is used to store changed OS files, and home-rw is the + home directory. + +Bugs with Kubuntu boot process: +1. The initrd.gz image must be opened, fixed and the repacked. +2. The fix involves removing the ,mode=755 from the mount line for + the persistent OS partition (casper-rw) or /cow + in /usr/share/initramfs-tools/scripts/casper +3. I have removed /etc/rc0.d/S89casper and /etc/rc6.d/S89casper + because they are related to a CDROM boot and create false + errors when booting from a USB key. diff --git a/rescue/linux/oldusb/README.usb b/rescue/linux/oldusb/README.usb new file mode 100644 index 0000000..c3a6403 --- /dev/null +++ b/rescue/linux/oldusb/README.usb @@ -0,0 +1,133 @@ + +Copyright (C) Kern E. Sibbald, 2009 + +This directory is used to build a USB key containing a Kubuntu 8.04 LiveCD +with persistent OS files and persistent /home files. + +You will need to run as root for most things ... + +Packages needed: +apt-get install syslinux mbr + + +1. Start by editing the "config" file. Be sure to get your USB_DEV + definition correct. Note: you can see what devices you have + connected by running: + + lsscsi + + For example, I get: + + $ lsscsi + [1:0:0:0] cd/dvd _NEC DVD+RW ND-1100A 108B /dev/scd0 + [1:0:1:0] cd/dvd PHILIPS DVD+-RW DVD8631 9D03 /dev/scd1 + [9:0:0:0] disk Kingston DataTraveler 2.0 PMAP /dev/sda + + and in my case, the USB device is the Kingston DataTraveler on + device /dev/sda. + + Alternatively you can do: + + fdisk -l + +2. The scripts you need to partition the key and + to write the boot image to it are all in this (usb) directory. + +3. If you ever want to put the key back to its prior state, *before* + running the partition_usb_key, you might consider doing a: + + sfdisk -d /dev/key-device >save_me + + where key-device is the key device name (e.g. sda). The + output file can be fed back into sfdisk to recreate the original + with: + + sfdisk /dev/key-device mount.bsi +mount -l -t ext2 >mount.ext2.bsi +mount -l -t ext3 >mount.ext3.bsi +mount -l -t reiserfs >mount.rei.bsi +cp /etc/fstab fstab.bsi +cp /etc/mtab mtab.bsi +df -Tl >df.bsi +# Pickup all disks except USB_DEV +sfdisk -s | grep -v "${USB_DEV}" >sfdisk.disks.bsi +grep "^/dev/" sfdisk.disks.bsi | sed -n 's%\(^/dev/[A-Za-z]*\):.*$%\1%p' >disks.bsi +for i in `cat disks.bsi`; do + j=`echo $i | cut -c6-` + sfdisk -l $i >sfdisk.$j.bsi + sfdisk -d $i >sfdisk.make.$j.bsi +done +cat /proc/swaps > swaps.bsi +route -n >route.bsi +ifconfig >ifconfig.bsi + +# Gather LVM information +# Only tested on LVM2 +dolvm=0 +if which lvm > /dev/null 2>/dev/null ; then + echo "Gathering LVM information" + dolvm=1 + + lvm pvs --noheadings --nosuffix -o pv_name,vg_name | cat > lvm-pv.bsi + lvm vgs --noheadings --nosuffix -o vg_name,vg_extent_size --units=k | cat > lvm-vg.bsi + lvm lvs --noheadings --nosuffix -o lv_name,vg_name,lv_size --units=k | cat > lvm-lv.bsi +fi + +echo "Done collecting info." + +# +# Done collecting information +# + + +echo "Begin creating scripts ..." +# +# First create partitioning script(s) +# +mkdir -p $scr +for i in `cat disks.bsi`; do + j=`echo $i | cut -c6-` + cat >$scr/partition.$j < $scr/create-pv <> $scr/create-pv + done + + cat >> $scr/create-pv <> $scr/create-pv + echo "lvm pvcreate -ff -y -v $pv" >> $scr/create-pv + done + echo "echo \"Done.\"" >> $scr/create-pv + echo "echo \"If there were no errors, run create-vg to create the volume groups.\"" >> $scr/create-pv + chmod +x $scr/create-pv + +# +# LVM phase 2: create Volume Groups +# + cat > $scr/create-vg <> $scr/create-vg + pelist="" + for pv in `cat lvm-pv.bsi | awk "\\\$2 == \"$vg\" { print \\\$1 }"` ; do + pelist="$pelist $pv" + done + echo "lvm vgcreate $vg -v -s ${pesize}k $pelist" >> $scr/create-vg + done + echo "echo \"Done.\"" >> $scr/create-vg + echo "echo \"If there were no errors, run create-lv to create the logical volumes.\"" >> $scr/create-vg + chmod +x $scr/create-vg + + +# +# LVM phase 3: create Logical Volumes +# +# One quick sidenote: this script creates LVs with a size based on the +# physical extent count, rather than the size in bytes. This is because +# at the time of writing this script, lvdisplay erroneously prints out +# the size in 512 byte sector count rather than 1024 byte blocks. +# Using the extent count should allow this script to continue to work +# even after the bug is fixed. + + cat > $scr/create-lv <> $scr/create-lv + echo "lvm lvcreate -L ${lvsize}k $vg -n $lv" >> $scr/create-lv + done + chmod +x $scr/create-lv +fi + +# +# Create formatting script(s) +# +echo "Begin making formatting script(s) ..." +for i in `cat disks.bsi`; do + j=`echo $i | cut -c6-` + cat >$scr/format.$j <>$scr/format.$j + echo "mkswap $check $disk" >>$scr/format.$j + echo "echo \"\"" >>$scr/format.$j + done + # Find ext2 partitions in mount output + k=`grep "^$i" mount.ext2.bsi | cut -d ' ' -f 1` + for disk in $k; do + echo "echo \"Formating $disk -- ext2 partition\"" >>$scr/format.$j + label=`grep "^$disk" mount.ext2.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` + if [ x$label = x ] ; then + echo "mke2fs -v \$check $disk" >>$scr/format.$j + else + echo "mke2fs -v \$check -L $label $disk" >>$scr/format.$j + fi + echo "echo \"\"" >>$scr/format.$j + done + # Find ext3 partitions in mount output + k=`grep "^$i" mount.ext3.bsi | cut -d ' ' -f 1` + for disk in $k; do + echo "echo \"Formating $disk -- ext3 partition\"" >>$scr/format.$j + label=`grep "^$disk" mount.ext3.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` + if [ x$label = x ] ; then + echo "mke2fs -v -j \$check $disk" >>$scr/format.$j + else + echo "mke2fs -v -j \$check -L $label $disk" >>$scr/format.$j + fi + echo "echo \"\"" >>$scr/format.$j + done + # Find reiserfs partitions in mount output + k=`grep "^$i" mount.rei.bsi | cut -d ' ' -f 1` + for disk in $k; do + echo "echo \"Formating $disk -- reiser partition\"" >>$scr/format.$j + label=`grep "^$disk" mount.rei.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` + if [ x$label = x ] ; then + echo "mkereiserfs -V \$check $disk" >>$scr/format.$j + else + echo "mkereiserfs -V \$check -L $label $disk" >>$scr/format.$j + fi + echo "echo \"\"" >>$scr/format.$j + done + chmod 755 $scr/format.$j +done + +# +# Create LVM formatting scripts(s) +# +# Somebody more clever than I with bash scripting +# could probably factor a lot of this code out. +# +if [ $dolvm -eq 1 ] ; then + echo "Begin making LVM formatting script(s) ..." + for i in `cat lvm-vg.bsi | awk '{print $1}'`; do + cat >$scr/format.$i <>$scr/format.$i + echo "mkswap $check $disk" >>$scr/format.$i + echo "echo \"\"" >>$scr/format.$i + done + # Find ext2 partitions in mount output + k=`grep "^$mapper" mount.ext2.bsi | cut -d ' ' -f 1` + for disk in $k; do + echo "echo \"Formating $disk -- ext2 partition\"" >>$scr/format.$i + label=`grep "^$disk on" mount.ext2.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` + if [ x$label = x ] ; then + echo "mke2fs -v \$check $disk" >>$scr/format.$i + else + echo "mke2fs -v \$check -L $label $disk" >>$scr/format.$i + fi + echo "echo \"\"" >>$scr/format.$i + done + # Find ext3 partitions in mount output + k=`grep "^$mapper" mount.ext3.bsi | cut -d ' ' -f 1` + for disk in $k; do + echo "echo \"Formating $disk -- ext3 partition\"" >>$scr/format.$i + label=`grep "^$disk on" mount.ext3.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` + if [ x$label = x ] ; then + echo "mke2fs -v -j \$check $disk" >>$scr/format.$i + else + echo "mke2fs -v -j \$check -L $label $disk" >>$scr/format.$i + fi + echo "echo \"\"" >>$scr/format.$i + done + # Find reiserfs partitions in mount output + k=`grep "^$mapper" mount.rei.bsi | cut -d ' ' -f 1` + for disk in $k; do + echo "echo \"Formating $disk -- reiser partition\"" >>$scr/format.$i + label=`grep "^$disk on" mount.rei.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` + if [ x$label = x ] ; then + echo "mkereiserfs -V \$check $disk" >>$scr/format.$i + else + echo "mkereiserfs -V \$check -L $label $disk" >>$scr/format.$i + fi + echo "echo \"\"" >>$scr/format.$i + done + chmod 755 $scr/format.$i + done +fi + +cd $scr + +# +# Create network start script +# +ifconfig eth0 2>/dev/null >/dev/null +if [ $? = 0 ] ; then + ip=`ifconfig eth0 | grep inet | head -1 | sed -n 's/\ \+inet addr:\([0-9]\+\(\.[0-9]\+\)\{3\}\).*/\1/p'` + cat >start_network <start_network +fi +# Try eth1 +ifconfig eth1 2>/dev/null >/dev/null +if [ $? = 0 ] ; then + ip=`ifconfig eth1 | grep inet | head -1 | sed -n 's/\ \+inet addr:\([0-9]\+\(\.[0-9]\+\)\{3\}\).*/\1/p'` + cat >>start_network <>start_network <$scr/mount_drives <${TMP1} +sed -n 's/\(^.*\)\ on\ \(.*\)\ type.*$/\1 \/mnt\/disk\2/p' $di/mount.ext3.bsi >>${TMP1} +sed -n 's/\(^.*\)\ on\ \(.*\)\ type.*$/\1 \/mnt\/disk\2/p' $di/mount.rei.bsi >>${TMP1} +# sort so that / is first +sort -k 2 <${TMP1} >${TMP2} +# output mkdir followed by its mount +sed -n 's/\(^.*\)\ \(.*$\)/mkdir -p \2\ +mount \1 \2/p' ${TMP2} >>$scr/mount_drives + +# Now build unmount_drives +cat >$scr/umount_drives <${TMP2} +sed -n 's/\(^.*\)\ \(.*$\)/umount \2/p' ${TMP2} >>$scr/umount_drives +echo "umount /mnt/cdrom 2>/dev/null >/dev/null" >>$scr/umount_drives +echo "sync" >>$scr/umount_drives +echo "sync" >>$scr/umount_drives + +rm -f ${TMP1} ${TMP2} + +chmod 755 $scr/mount_drives $scr/umount_drives +echo "Done building scripts." diff --git a/rescue/linux/oldusb/kernsconfig b/rescue/linux/oldusb/kernsconfig new file mode 100644 index 0000000..c26c306 --- /dev/null +++ b/rescue/linux/oldusb/kernsconfig @@ -0,0 +1,62 @@ +# +# You must define certain environment variables in this file +# so that the scripts know where to find things. +# + +CWD=`pwd` + +# +# Set your home directory here (do not use $HOME !!!) +# This is used when coping your desktop files to the +# USB key. +# +MY_HOME=/home/kern + +# +# The device name of your USB device (e.g. /dev/sda) +# You can find it by plugging it in then doing +# +# fdisk -l +# +# If you are unsure remove the USB device and rerun the fdisk -l +# If you get this wrong, your harddisk could be wiped out. +# It is probably "sda" or "sdb" or "sdc" +# +USB_DEV=/dev/sdg + +# +# When your USB key is mounted, what is the mount directory? +# +MOUNT_POINT=/media + +# +# This is where you downloaded the USB boot image +# +BOOT_IMAGE=${CWD}/kubuntu8.tar.gz + +# +# Disk image of boot partition of USB key -- this is where you +# unpacked the kubuntu8.tar.bz2 image. Unpacking the image +# is not necessary unless you want to change it. +# +DISK_IMAGE=${CWD}/kubuntu8 + +# +# If you are remastering a Ubuntu or Kubuntu ISO (not normally done) +# Point to the ISO image +# Used when picking apart a new ISO (i.e. upgrade or something) +# +ISO_IMAGE= + +# +# Partition 1 (kubuntu) size +# +SIZE_PART1="+750M" + +# +# Partition 2 (casper-rw) size +# +SIZE_PART2="+1000M" + +# +# Partition 3 uses whatever is left on the USB key diff --git a/rescue/linux/oldusb/partition_usb_key b/rescue/linux/oldusb/partition_usb_key new file mode 100755 index 0000000..6af5f5e --- /dev/null +++ b/rescue/linux/oldusb/partition_usb_key @@ -0,0 +1,76 @@ +#!/bin/sh +# +# Partition the USB stick -- the stick is assumed to be at least 3GB in size +# +# First delete all existing partitions +# +. ./config + +if [ ! `whoami` = "root" ] ; then + echo "" + echo "You need to be root to run this shell script" + echo "" + exit 1 +fi +if [ "x$USB_DEV" = "x" ] ; then + if [ "x$1" = "x" ] ; then + echo "You must supply the USB device name on the command line or in USB_DEV" + exit 1 + else + USB_DEV=$1 + fi +fi +echo "This script will distroy everything on $dev" +fdisk -l $USB_DEV +echo " " +echo "Answer yes to continue " +read a +if [ "$a" != "yes" ] ; then + echo "Device $USB_DEV unchanged" + exit 1 +fi +sfdisk -l $USB_DEV >original-partitioning.txt +fdisk $USB_DEV <md5sum.txt +tar cfz $CWD/kubuntu8.tar.gz . +cd $CWD +ls -l kubuntu8.tar.gz diff --git a/rescue/linux/oldusb/remaster/pack_initrd b/rescue/linux/oldusb/remaster/pack_initrd new file mode 100755 index 0000000..bd5677f --- /dev/null +++ b/rescue/linux/oldusb/remaster/pack_initrd @@ -0,0 +1,16 @@ +#!/bin/sh +# +if [ ! -d initrd ] ; then + echo "Cannot find initrd directory." + exit 1 +fi +cd initrd +echo "Packing initrd to initrd.gz ..." +find . | cpio -o -H newc | gzip -9 > ../initrd.gz +if [ "x$SUID_UID" != "x" ] ; then + if [ "x$SUID_GID" = "x" ] ; then + chown $SUID_UID ../initrd.gz + else + chown $SUID_UID:$SUID_GID ../initrd.gz + fi +fi diff --git a/rescue/linux/oldusb/remaster/pack_sqfs b/rescue/linux/oldusb/remaster/pack_sqfs new file mode 100755 index 0000000..f498ada --- /dev/null +++ b/rescue/linux/oldusb/remaster/pack_sqfs @@ -0,0 +1,13 @@ +#!/bin/sh +# +. ../config + +if [ ! -d sqfs ] ; then + echo "Cannot find sqfs ..." + exit 1 +fi +rm -f filesystem.squashfs +echo "Squashing the filesystem ..." +mksquashfs sqfs filesystem.squashfs +rm -f filesystem.manifest +cp sqfs/filesystem.manifest . diff --git a/rescue/linux/oldusb/remaster/unmount_iso b/rescue/linux/oldusb/remaster/unmount_iso new file mode 100755 index 0000000..18686f7 --- /dev/null +++ b/rescue/linux/oldusb/remaster/unmount_iso @@ -0,0 +1,7 @@ +#!/bin/sh +# + +umount cdrom +if [ $? -eq 0 ] ; then + rmdir cdrom +fi diff --git a/rescue/linux/oldusb/remaster/unpack_initrd b/rescue/linux/oldusb/remaster/unpack_initrd new file mode 100755 index 0000000..4874fa3 --- /dev/null +++ b/rescue/linux/oldusb/remaster/unpack_initrd @@ -0,0 +1,7 @@ +#!/bin/sh +# +rm -rf initrd +mkdir -p initrd +cd initrd +echo "Unpacking initrd.gz into initrd ..." +gzip -dc ../cdrom/casper/initrd.gz | cpio -i diff --git a/rescue/linux/oldusb/remaster/unpack_sqfs b/rescue/linux/oldusb/remaster/unpack_sqfs new file mode 100755 index 0000000..458f7f7 --- /dev/null +++ b/rescue/linux/oldusb/remaster/unpack_sqfs @@ -0,0 +1,22 @@ +#!/bin/sh +# +mkdir -p sqfs +mkdir cdsqfs +mount -o loop -t squashfs cdrom/casper/filesystem.squashfs cdsqfs +if [ $? -ne 0 ] ; then + echo "Error mounting squashfs ..." + rm -rf cdsqfs + exit 1 +fi +echo "Copying ISO squashfs to sqfs ..." +rsync -avx -P cdsqfs/. sqfs/. +# +umount cdsqfs/ +if [ $? -ne 0 ] ; then + umount cdsqfs/ + if [ $? -ne 0 ] ; then + echo "Could not umount cdsqfs ..." + exit 1 + fi +fi +rmdir cdsqfs diff --git a/rescue/linux/oldusb/remaster/update_packages b/rescue/linux/oldusb/remaster/update_packages new file mode 100644 index 0000000..5739e2c --- /dev/null +++ b/rescue/linux/oldusb/remaster/update_packages @@ -0,0 +1,82 @@ +#!/bin/sh +# +# Update squashfs -- assumes you start with a Hardy 8.04.1 desktop, +# but it should work even if you have already updated it. +# + +if [ ! -d sqfs ] ; then + echo "Cannot find squashfs (sqfs directory)" + exit 1 +fi +chroot sqfs /bin/sh +mount -t proc none /proc/ +mount -t sysfs non /sys/ +export HOME=/root + +# remove packages +apt-get remove --purge `dpkg-query -W --showformat '${Package}\n' | grep language-pack | egrep -v '\-en'` +apt-get remove --purge `dpkg-query -W --showformat '${Package}\n' | grep openoffice\.org-` +apt-get remove --purge amarok dictionaries-common + +cat >/etc/resolv.conf </etc/apt/sources.list <filesystem.manifest + +apt-get clean +rm -rf /tmp/* +rm -f /etc/hosts /etc/resolv.conf +umount /proc/ +umount /sys/ +exit +cp sqfs/filesystem.manifest . +rm -f sqfs/filsystem.manifest + +echo "Warning!!!! At this point, it may be better to reboot, since" +echo " upgrading packages may have restarted some daemons such as" +echo " cups, which uses sqfs/proc. If you thn try to pack the sqfs" +echo " you will get lots of errors reference /proc. Rebooting" +echo " resolves this problem." +echo " " diff --git a/rescue/linux/oldusb/remaster/write_sqfs_to_disk_image b/rescue/linux/oldusb/remaster/write_sqfs_to_disk_image new file mode 100755 index 0000000..c0c8597 --- /dev/null +++ b/rescue/linux/oldusb/remaster/write_sqfs_to_disk_image @@ -0,0 +1,37 @@ +#!/bin/sh +# +# Put a new squashfs on the disk image +# + +. ../config + + +if [ ! -d ${DISK_IMAGE}/casper ] ; then + echo "Cannot find ${DISK_IMAGE}/casper directory -- possibly not detarred" + exit 1 +fi + +if [ ! -f filesystem.squashfs ] ; then + echo "Cannot find filesystem.squashfs ..." + exit 1 +fi + +echo "Removing old squashfs" +rm -f ${DISK_IMAGE}/casper/filesystem.squashfs ${DISK_IMAGE}/casper/filesystem.manifest +rm -f ${DISK_IMAGE}/casper/filesystem.manifest-desktop + +echo "Moving new squashfs to ${DISK_IMAGE}" +cp filesystem.manifest ${DISK_IMAGE}/casper/ +cp filesystem.manifest ${DISK_IMAGE}/casper/filesystem.manifest-desktop +mv filesystem.squashfs ${DISK_IMAGE}/casper/ + +echo "Removing old initrd and kernel image" +rm -f ${DISK_IMAGE}/casper/initrd.gz +rm -f ${DISK_IMAGE}/casper/vmlinuz + +echo "Copying new initrd and kernel image" +cp sqfs/initrd.img ${DISK_IMAGE}/casper/initrd.gz +cp sqfs/vmlinuz ${DISK_IMAGE}/casper/vmlinuz +sync + +echo "Now you just need to tar up ${DISK_IMAGE}" diff --git a/rescue/linux/oldusb/write_disk_info_to_usb b/rescue/linux/oldusb/write_disk_info_to_usb new file mode 100755 index 0000000..b5374b3 --- /dev/null +++ b/rescue/linux/oldusb/write_disk_info_to_usb @@ -0,0 +1,39 @@ +#!/bin/sh +# +# write the disk info from the current system to the USB +# stick. We write it in the home-rw partition +# +. ./config + +if [ ! `whoami` = "root" ] ; then + echo "" + echo "You need to be root to run this shell script" + echo "" + exit 1 +fi + +echo " " +echo "This script will write your current system information to the USB" +echo "stick in the home-rw partition (/home/ubuntu)" + +if [ ! -d ${MOUNT_POINT}/home-rw ] ; then + mount ${USB_DEV}3 ${MOUNT_POINT}/home-rw +fi +if [ ! -d ${MOUNT_POINT}/home-rw ] ; then + echo "Mount of home-rw USB partition failed." + echo "Please pre-mount the USB stick and run this script again." + exit 1 +fi +cd ${MOUNT_POINT}/home-rw +if [ $? -ne 0 ] ; then + echo "Could not cd to home-rw USB partition" + exit 1 +fi + +mkdir -p ubuntu +chown 1000:1000 ubuntu +cd ubuntu +export USB_DEV +${CWD}/getdiskinfo +cp -f ${CWD}/write_disk_info_to_usb . +sync diff --git a/rescue/linux/oldusb/write_usb_boot_partition b/rescue/linux/oldusb/write_usb_boot_partition new file mode 100755 index 0000000..7c64a5f --- /dev/null +++ b/rescue/linux/oldusb/write_usb_boot_partition @@ -0,0 +1,66 @@ +#!/bin/sh +# +# tar the disk image +# +. ./config + +if [ ! `whoami` = "root" ] ; then + echo "" + echo "You need to be root to run this shell script" + echo "" + exit 1 +fi +if [ ! -f ${BOOT_IMAGE} ] ; then + echo "Could not find boot image: ${BOOT_IMAGE}" + exit 1 +fi +if [ "`which syslinux`x" = "x" ] ; then + echo "" + echo "Could not find syslinux. Try \"apt-get install syslinux\"" + echo "" + exit 1 +fi +if [ "`which install-mbr`x" = "x" ] ; then + echo "" + echo "Could not find install-mbr. Try \"apt-get install mbr\"" + echo "" + exit 1 +fi + +umount ${USB_DEV}1 2>/dev/null 1>/dev/null + +echo "Reformat USB boot partition" +mkfs.vfat -F 16 -n kubuntu8 ${USB_DEV}1 +if [ ! -d ${MOUNT_POINT}/kubuntu8 ] ; then + mkdir -p ${MOUNT_POINT}/kubuntu8 + created="yes" +fi +mount ${USB_DEV}1 ${MOUNT_POINT}/kubuntu8 +if [ $? -ne 0 ] ; then + echo "Mount of USB boot partition failed." + exit 1 +fi +cd ${MOUNT_POINT}/kubuntu8 +if [ $? -ne 0 ] ; then + echo "Could not cd to USB boot partition" + exit 1 +fi + +echo "Detaring boot image ..." +tar xfz ${BOOT_IMAGE} +# original-partioning.txt was created by partition_usb_key +if [ -e ${CWD}/original-partitioning.txt ] ; then + cp -f ${CWD}/original-partitioning.txt . + rm -f ${CWD}/original-partitioning.txt +fi +cd ${CWD} + +syslinux -sf ${USB_DEV}1 +install-mbr -p1 ${USB_DEV} +echo "syncing ..." +sync +sync +umount ${MOUNT_POINT}/kubuntu8 +if [ "x$created" = "xyes" ] ; then + rmdir ${MOUNT_POINT}/kubuntu8 +fi diff --git a/rescue/linux/usb/README.technotes b/rescue/linux/usb/README.technotes deleted file mode 100644 index 4b2f47c..0000000 --- a/rescue/linux/usb/README.technotes +++ /dev/null @@ -1,61 +0,0 @@ - -Technical details of creating the USB key boot images. Unless -you want to rebuild (remaster) the iso boot image, you will not -need this. - -The directory "remaster" contains the scripts that allow picking -apart a Kubuntu Hardy ISO and then updating and recombining the -parts into a USB boot image. The information below is somewhat -low level and should not be needed unless you want to do your -own remastering either starting from the Kubuntu release or from -the Bacula remastered release. - -Note, the sqfs.tar.gz is the whole squashfs unsquashed. - -The kernel image (vmlinuz) is a copy of the most recent kernel i.e. - - sqfs/boot/vmlinuz-2.6.24-23-generic - -and initrd.gz is a copy of the most recent initrd.img i.e - - sqfs/boot/initrd.img-2.6.24-23-generic - -they are renamed and put in the kubuntu8 partition in: - - casper/vmlinuz -and - casper/initrd.gz - -respectively. - -The above updates are automatically done when running -the write_sqfs_to_disk_image script. Then the final -step is to tar up kubuntu8. - -Note, initrd.gz is made after fixing the bug in -/usr/share/initramfs-tools/scripts/casper -see note 2. in bugs with Kubuntu boot process below. - -When updating the USB root partition (changing something), I -strongly recommend that you work with the disk image then -repack it (pack_disk_image) and then run load_disk_image. - - -Packages needed: -apt-get install syslinux mbr - - -Kubuntu boot tricks: -1. Booting with persistence added to the kernel options will permit - mounting of a USB casper-rw and home-rw partitions on the USB key. - casper-rw is used to store changed OS files, and home-rw is the - home directory. - -Bugs with Kubuntu boot process: -1. The initrd.gz image must be opened, fixed and the repacked. -2. The fix involves removing the ,mode=755 from the mount line for - the persistent OS partition (casper-rw) or /cow - in /usr/share/initramfs-tools/scripts/casper -3. I have removed /etc/rc0.d/S89casper and /etc/rc6.d/S89casper - because they are related to a CDROM boot and create false - errors when booting from a USB key. diff --git a/rescue/linux/usb/README.usb b/rescue/linux/usb/README.usb deleted file mode 100644 index c3a6403..0000000 --- a/rescue/linux/usb/README.usb +++ /dev/null @@ -1,133 +0,0 @@ - -Copyright (C) Kern E. Sibbald, 2009 - -This directory is used to build a USB key containing a Kubuntu 8.04 LiveCD -with persistent OS files and persistent /home files. - -You will need to run as root for most things ... - -Packages needed: -apt-get install syslinux mbr - - -1. Start by editing the "config" file. Be sure to get your USB_DEV - definition correct. Note: you can see what devices you have - connected by running: - - lsscsi - - For example, I get: - - $ lsscsi - [1:0:0:0] cd/dvd _NEC DVD+RW ND-1100A 108B /dev/scd0 - [1:0:1:0] cd/dvd PHILIPS DVD+-RW DVD8631 9D03 /dev/scd1 - [9:0:0:0] disk Kingston DataTraveler 2.0 PMAP /dev/sda - - and in my case, the USB device is the Kingston DataTraveler on - device /dev/sda. - - Alternatively you can do: - - fdisk -l - -2. The scripts you need to partition the key and - to write the boot image to it are all in this (usb) directory. - -3. If you ever want to put the key back to its prior state, *before* - running the partition_usb_key, you might consider doing a: - - sfdisk -d /dev/key-device >save_me - - where key-device is the key device name (e.g. sda). The - output file can be fed back into sfdisk to recreate the original - with: - - sfdisk /dev/key-device mount.bsi -mount -l -t ext2 >mount.ext2.bsi -mount -l -t ext3 >mount.ext3.bsi -mount -l -t reiserfs >mount.rei.bsi -cp /etc/fstab fstab.bsi -cp /etc/mtab mtab.bsi -df -Tl >df.bsi -# Pickup all disks except USB_DEV -sfdisk -s | grep -v "${USB_DEV}" >sfdisk.disks.bsi -grep "^/dev/" sfdisk.disks.bsi | sed -n 's%\(^/dev/[A-Za-z]*\):.*$%\1%p' >disks.bsi -for i in `cat disks.bsi`; do - j=`echo $i | cut -c6-` - sfdisk -l $i >sfdisk.$j.bsi - sfdisk -d $i >sfdisk.make.$j.bsi -done -cat /proc/swaps > swaps.bsi -route -n >route.bsi -ifconfig >ifconfig.bsi - -# Gather LVM information -# Only tested on LVM2 -dolvm=0 -if which lvm > /dev/null 2>/dev/null ; then - echo "Gathering LVM information" - dolvm=1 - - lvm pvs --noheadings --nosuffix -o pv_name,vg_name | cat > lvm-pv.bsi - lvm vgs --noheadings --nosuffix -o vg_name,vg_extent_size --units=k | cat > lvm-vg.bsi - lvm lvs --noheadings --nosuffix -o lv_name,vg_name,lv_size --units=k | cat > lvm-lv.bsi -fi - -echo "Done collecting info." - -# -# Done collecting information -# - - -echo "Begin creating scripts ..." -# -# First create partitioning script(s) -# -mkdir -p $scr -for i in `cat disks.bsi`; do - j=`echo $i | cut -c6-` - cat >$scr/partition.$j < $scr/create-pv <> $scr/create-pv - done - - cat >> $scr/create-pv <> $scr/create-pv - echo "lvm pvcreate -ff -y -v $pv" >> $scr/create-pv - done - echo "echo \"Done.\"" >> $scr/create-pv - echo "echo \"If there were no errors, run create-vg to create the volume groups.\"" >> $scr/create-pv - chmod +x $scr/create-pv - -# -# LVM phase 2: create Volume Groups -# - cat > $scr/create-vg <> $scr/create-vg - pelist="" - for pv in `cat lvm-pv.bsi | awk "\\\$2 == \"$vg\" { print \\\$1 }"` ; do - pelist="$pelist $pv" - done - echo "lvm vgcreate $vg -v -s ${pesize}k $pelist" >> $scr/create-vg - done - echo "echo \"Done.\"" >> $scr/create-vg - echo "echo \"If there were no errors, run create-lv to create the logical volumes.\"" >> $scr/create-vg - chmod +x $scr/create-vg - - -# -# LVM phase 3: create Logical Volumes -# -# One quick sidenote: this script creates LVs with a size based on the -# physical extent count, rather than the size in bytes. This is because -# at the time of writing this script, lvdisplay erroneously prints out -# the size in 512 byte sector count rather than 1024 byte blocks. -# Using the extent count should allow this script to continue to work -# even after the bug is fixed. - - cat > $scr/create-lv <> $scr/create-lv - echo "lvm lvcreate -L ${lvsize}k $vg -n $lv" >> $scr/create-lv - done - chmod +x $scr/create-lv -fi - -# -# Create formatting script(s) -# -echo "Begin making formatting script(s) ..." -for i in `cat disks.bsi`; do - j=`echo $i | cut -c6-` - cat >$scr/format.$j <>$scr/format.$j - echo "mkswap $check $disk" >>$scr/format.$j - echo "echo \"\"" >>$scr/format.$j - done - # Find ext2 partitions in mount output - k=`grep "^$i" mount.ext2.bsi | cut -d ' ' -f 1` - for disk in $k; do - echo "echo \"Formating $disk -- ext2 partition\"" >>$scr/format.$j - label=`grep "^$disk" mount.ext2.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` - if [ x$label = x ] ; then - echo "mke2fs -v \$check $disk" >>$scr/format.$j - else - echo "mke2fs -v \$check -L $label $disk" >>$scr/format.$j - fi - echo "echo \"\"" >>$scr/format.$j - done - # Find ext3 partitions in mount output - k=`grep "^$i" mount.ext3.bsi | cut -d ' ' -f 1` - for disk in $k; do - echo "echo \"Formating $disk -- ext3 partition\"" >>$scr/format.$j - label=`grep "^$disk" mount.ext3.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` - if [ x$label = x ] ; then - echo "mke2fs -v -j \$check $disk" >>$scr/format.$j - else - echo "mke2fs -v -j \$check -L $label $disk" >>$scr/format.$j - fi - echo "echo \"\"" >>$scr/format.$j - done - # Find reiserfs partitions in mount output - k=`grep "^$i" mount.rei.bsi | cut -d ' ' -f 1` - for disk in $k; do - echo "echo \"Formating $disk -- reiser partition\"" >>$scr/format.$j - label=`grep "^$disk" mount.rei.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` - if [ x$label = x ] ; then - echo "mkereiserfs -V \$check $disk" >>$scr/format.$j - else - echo "mkereiserfs -V \$check -L $label $disk" >>$scr/format.$j - fi - echo "echo \"\"" >>$scr/format.$j - done - chmod 755 $scr/format.$j -done - -# -# Create LVM formatting scripts(s) -# -# Somebody more clever than I with bash scripting -# could probably factor a lot of this code out. -# -if [ $dolvm -eq 1 ] ; then - echo "Begin making LVM formatting script(s) ..." - for i in `cat lvm-vg.bsi | awk '{print $1}'`; do - cat >$scr/format.$i <>$scr/format.$i - echo "mkswap $check $disk" >>$scr/format.$i - echo "echo \"\"" >>$scr/format.$i - done - # Find ext2 partitions in mount output - k=`grep "^$mapper" mount.ext2.bsi | cut -d ' ' -f 1` - for disk in $k; do - echo "echo \"Formating $disk -- ext2 partition\"" >>$scr/format.$i - label=`grep "^$disk on" mount.ext2.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` - if [ x$label = x ] ; then - echo "mke2fs -v \$check $disk" >>$scr/format.$i - else - echo "mke2fs -v \$check -L $label $disk" >>$scr/format.$i - fi - echo "echo \"\"" >>$scr/format.$i - done - # Find ext3 partitions in mount output - k=`grep "^$mapper" mount.ext3.bsi | cut -d ' ' -f 1` - for disk in $k; do - echo "echo \"Formating $disk -- ext3 partition\"" >>$scr/format.$i - label=`grep "^$disk on" mount.ext3.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` - if [ x$label = x ] ; then - echo "mke2fs -v -j \$check $disk" >>$scr/format.$i - else - echo "mke2fs -v -j \$check -L $label $disk" >>$scr/format.$i - fi - echo "echo \"\"" >>$scr/format.$i - done - # Find reiserfs partitions in mount output - k=`grep "^$mapper" mount.rei.bsi | cut -d ' ' -f 1` - for disk in $k; do - echo "echo \"Formating $disk -- reiser partition\"" >>$scr/format.$i - label=`grep "^$disk on" mount.rei.bsi | cut -d ' ' -f 7 | cut -c2- | cut -d ] -f 1` - if [ x$label = x ] ; then - echo "mkereiserfs -V \$check $disk" >>$scr/format.$i - else - echo "mkereiserfs -V \$check -L $label $disk" >>$scr/format.$i - fi - echo "echo \"\"" >>$scr/format.$i - done - chmod 755 $scr/format.$i - done -fi - -cd $scr - -# -# Create network start script -# -ifconfig eth0 2>/dev/null >/dev/null -if [ $? = 0 ] ; then - ip=`ifconfig eth0 | grep inet | head -1 | sed -n 's/\ \+inet addr:\([0-9]\+\(\.[0-9]\+\)\{3\}\).*/\1/p'` - cat >start_network <start_network -fi -# Try eth1 -ifconfig eth1 2>/dev/null >/dev/null -if [ $? = 0 ] ; then - ip=`ifconfig eth1 | grep inet | head -1 | sed -n 's/\ \+inet addr:\([0-9]\+\(\.[0-9]\+\)\{3\}\).*/\1/p'` - cat >>start_network <>start_network <$scr/mount_drives <${TMP1} -sed -n 's/\(^.*\)\ on\ \(.*\)\ type.*$/\1 \/mnt\/disk\2/p' $di/mount.ext3.bsi >>${TMP1} -sed -n 's/\(^.*\)\ on\ \(.*\)\ type.*$/\1 \/mnt\/disk\2/p' $di/mount.rei.bsi >>${TMP1} -# sort so that / is first -sort -k 2 <${TMP1} >${TMP2} -# output mkdir followed by its mount -sed -n 's/\(^.*\)\ \(.*$\)/mkdir -p \2\ -mount \1 \2/p' ${TMP2} >>$scr/mount_drives - -# Now build unmount_drives -cat >$scr/umount_drives <${TMP2} -sed -n 's/\(^.*\)\ \(.*$\)/umount \2/p' ${TMP2} >>$scr/umount_drives -echo "umount /mnt/cdrom 2>/dev/null >/dev/null" >>$scr/umount_drives -echo "sync" >>$scr/umount_drives -echo "sync" >>$scr/umount_drives - -rm -f ${TMP1} ${TMP2} - -chmod 755 $scr/mount_drives $scr/umount_drives -echo "Done building scripts." diff --git a/rescue/linux/usb/kernsconfig b/rescue/linux/usb/kernsconfig deleted file mode 100644 index c26c306..0000000 --- a/rescue/linux/usb/kernsconfig +++ /dev/null @@ -1,62 +0,0 @@ -# -# You must define certain environment variables in this file -# so that the scripts know where to find things. -# - -CWD=`pwd` - -# -# Set your home directory here (do not use $HOME !!!) -# This is used when coping your desktop files to the -# USB key. -# -MY_HOME=/home/kern - -# -# The device name of your USB device (e.g. /dev/sda) -# You can find it by plugging it in then doing -# -# fdisk -l -# -# If you are unsure remove the USB device and rerun the fdisk -l -# If you get this wrong, your harddisk could be wiped out. -# It is probably "sda" or "sdb" or "sdc" -# -USB_DEV=/dev/sdg - -# -# When your USB key is mounted, what is the mount directory? -# -MOUNT_POINT=/media - -# -# This is where you downloaded the USB boot image -# -BOOT_IMAGE=${CWD}/kubuntu8.tar.gz - -# -# Disk image of boot partition of USB key -- this is where you -# unpacked the kubuntu8.tar.bz2 image. Unpacking the image -# is not necessary unless you want to change it. -# -DISK_IMAGE=${CWD}/kubuntu8 - -# -# If you are remastering a Ubuntu or Kubuntu ISO (not normally done) -# Point to the ISO image -# Used when picking apart a new ISO (i.e. upgrade or something) -# -ISO_IMAGE= - -# -# Partition 1 (kubuntu) size -# -SIZE_PART1="+750M" - -# -# Partition 2 (casper-rw) size -# -SIZE_PART2="+1000M" - -# -# Partition 3 uses whatever is left on the USB key diff --git a/rescue/linux/usb/partition_usb_key b/rescue/linux/usb/partition_usb_key deleted file mode 100755 index 6af5f5e..0000000 --- a/rescue/linux/usb/partition_usb_key +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/sh -# -# Partition the USB stick -- the stick is assumed to be at least 3GB in size -# -# First delete all existing partitions -# -. ./config - -if [ ! `whoami` = "root" ] ; then - echo "" - echo "You need to be root to run this shell script" - echo "" - exit 1 -fi -if [ "x$USB_DEV" = "x" ] ; then - if [ "x$1" = "x" ] ; then - echo "You must supply the USB device name on the command line or in USB_DEV" - exit 1 - else - USB_DEV=$1 - fi -fi -echo "This script will distroy everything on $dev" -fdisk -l $USB_DEV -echo " " -echo "Answer yes to continue " -read a -if [ "$a" != "yes" ] ; then - echo "Device $USB_DEV unchanged" - exit 1 -fi -sfdisk -l $USB_DEV >original-partitioning.txt -fdisk $USB_DEV <md5sum.txt -tar cfz $CWD/kubuntu8.tar.gz . -cd $CWD -ls -l kubuntu8.tar.gz diff --git a/rescue/linux/usb/remaster/pack_initrd b/rescue/linux/usb/remaster/pack_initrd deleted file mode 100755 index bd5677f..0000000 --- a/rescue/linux/usb/remaster/pack_initrd +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -# -if [ ! -d initrd ] ; then - echo "Cannot find initrd directory." - exit 1 -fi -cd initrd -echo "Packing initrd to initrd.gz ..." -find . | cpio -o -H newc | gzip -9 > ../initrd.gz -if [ "x$SUID_UID" != "x" ] ; then - if [ "x$SUID_GID" = "x" ] ; then - chown $SUID_UID ../initrd.gz - else - chown $SUID_UID:$SUID_GID ../initrd.gz - fi -fi diff --git a/rescue/linux/usb/remaster/pack_sqfs b/rescue/linux/usb/remaster/pack_sqfs deleted file mode 100755 index f498ada..0000000 --- a/rescue/linux/usb/remaster/pack_sqfs +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -# -. ../config - -if [ ! -d sqfs ] ; then - echo "Cannot find sqfs ..." - exit 1 -fi -rm -f filesystem.squashfs -echo "Squashing the filesystem ..." -mksquashfs sqfs filesystem.squashfs -rm -f filesystem.manifest -cp sqfs/filesystem.manifest . diff --git a/rescue/linux/usb/remaster/unmount_iso b/rescue/linux/usb/remaster/unmount_iso deleted file mode 100755 index 18686f7..0000000 --- a/rescue/linux/usb/remaster/unmount_iso +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh -# - -umount cdrom -if [ $? -eq 0 ] ; then - rmdir cdrom -fi diff --git a/rescue/linux/usb/remaster/unpack_initrd b/rescue/linux/usb/remaster/unpack_initrd deleted file mode 100755 index 4874fa3..0000000 --- a/rescue/linux/usb/remaster/unpack_initrd +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh -# -rm -rf initrd -mkdir -p initrd -cd initrd -echo "Unpacking initrd.gz into initrd ..." -gzip -dc ../cdrom/casper/initrd.gz | cpio -i diff --git a/rescue/linux/usb/remaster/unpack_sqfs b/rescue/linux/usb/remaster/unpack_sqfs deleted file mode 100755 index 458f7f7..0000000 --- a/rescue/linux/usb/remaster/unpack_sqfs +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh -# -mkdir -p sqfs -mkdir cdsqfs -mount -o loop -t squashfs cdrom/casper/filesystem.squashfs cdsqfs -if [ $? -ne 0 ] ; then - echo "Error mounting squashfs ..." - rm -rf cdsqfs - exit 1 -fi -echo "Copying ISO squashfs to sqfs ..." -rsync -avx -P cdsqfs/. sqfs/. -# -umount cdsqfs/ -if [ $? -ne 0 ] ; then - umount cdsqfs/ - if [ $? -ne 0 ] ; then - echo "Could not umount cdsqfs ..." - exit 1 - fi -fi -rmdir cdsqfs diff --git a/rescue/linux/usb/remaster/update_packages b/rescue/linux/usb/remaster/update_packages deleted file mode 100644 index 5739e2c..0000000 --- a/rescue/linux/usb/remaster/update_packages +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh -# -# Update squashfs -- assumes you start with a Hardy 8.04.1 desktop, -# but it should work even if you have already updated it. -# - -if [ ! -d sqfs ] ; then - echo "Cannot find squashfs (sqfs directory)" - exit 1 -fi -chroot sqfs /bin/sh -mount -t proc none /proc/ -mount -t sysfs non /sys/ -export HOME=/root - -# remove packages -apt-get remove --purge `dpkg-query -W --showformat '${Package}\n' | grep language-pack | egrep -v '\-en'` -apt-get remove --purge `dpkg-query -W --showformat '${Package}\n' | grep openoffice\.org-` -apt-get remove --purge amarok dictionaries-common - -cat >/etc/resolv.conf </etc/apt/sources.list <filesystem.manifest - -apt-get clean -rm -rf /tmp/* -rm -f /etc/hosts /etc/resolv.conf -umount /proc/ -umount /sys/ -exit -cp sqfs/filesystem.manifest . -rm -f sqfs/filsystem.manifest - -echo "Warning!!!! At this point, it may be better to reboot, since" -echo " upgrading packages may have restarted some daemons such as" -echo " cups, which uses sqfs/proc. If you thn try to pack the sqfs" -echo " you will get lots of errors reference /proc. Rebooting" -echo " resolves this problem." -echo " " diff --git a/rescue/linux/usb/remaster/write_sqfs_to_disk_image b/rescue/linux/usb/remaster/write_sqfs_to_disk_image deleted file mode 100755 index c0c8597..0000000 --- a/rescue/linux/usb/remaster/write_sqfs_to_disk_image +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/sh -# -# Put a new squashfs on the disk image -# - -. ../config - - -if [ ! -d ${DISK_IMAGE}/casper ] ; then - echo "Cannot find ${DISK_IMAGE}/casper directory -- possibly not detarred" - exit 1 -fi - -if [ ! -f filesystem.squashfs ] ; then - echo "Cannot find filesystem.squashfs ..." - exit 1 -fi - -echo "Removing old squashfs" -rm -f ${DISK_IMAGE}/casper/filesystem.squashfs ${DISK_IMAGE}/casper/filesystem.manifest -rm -f ${DISK_IMAGE}/casper/filesystem.manifest-desktop - -echo "Moving new squashfs to ${DISK_IMAGE}" -cp filesystem.manifest ${DISK_IMAGE}/casper/ -cp filesystem.manifest ${DISK_IMAGE}/casper/filesystem.manifest-desktop -mv filesystem.squashfs ${DISK_IMAGE}/casper/ - -echo "Removing old initrd and kernel image" -rm -f ${DISK_IMAGE}/casper/initrd.gz -rm -f ${DISK_IMAGE}/casper/vmlinuz - -echo "Copying new initrd and kernel image" -cp sqfs/initrd.img ${DISK_IMAGE}/casper/initrd.gz -cp sqfs/vmlinuz ${DISK_IMAGE}/casper/vmlinuz -sync - -echo "Now you just need to tar up ${DISK_IMAGE}" diff --git a/rescue/linux/usb/write_disk_info_to_usb b/rescue/linux/usb/write_disk_info_to_usb deleted file mode 100755 index b5374b3..0000000 --- a/rescue/linux/usb/write_disk_info_to_usb +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh -# -# write the disk info from the current system to the USB -# stick. We write it in the home-rw partition -# -. ./config - -if [ ! `whoami` = "root" ] ; then - echo "" - echo "You need to be root to run this shell script" - echo "" - exit 1 -fi - -echo " " -echo "This script will write your current system information to the USB" -echo "stick in the home-rw partition (/home/ubuntu)" - -if [ ! -d ${MOUNT_POINT}/home-rw ] ; then - mount ${USB_DEV}3 ${MOUNT_POINT}/home-rw -fi -if [ ! -d ${MOUNT_POINT}/home-rw ] ; then - echo "Mount of home-rw USB partition failed." - echo "Please pre-mount the USB stick and run this script again." - exit 1 -fi -cd ${MOUNT_POINT}/home-rw -if [ $? -ne 0 ] ; then - echo "Could not cd to home-rw USB partition" - exit 1 -fi - -mkdir -p ubuntu -chown 1000:1000 ubuntu -cd ubuntu -export USB_DEV -${CWD}/getdiskinfo -cp -f ${CWD}/write_disk_info_to_usb . -sync diff --git a/rescue/linux/usb/write_usb_boot_partition b/rescue/linux/usb/write_usb_boot_partition deleted file mode 100755 index 7c64a5f..0000000 --- a/rescue/linux/usb/write_usb_boot_partition +++ /dev/null @@ -1,66 +0,0 @@ -#!/bin/sh -# -# tar the disk image -# -. ./config - -if [ ! `whoami` = "root" ] ; then - echo "" - echo "You need to be root to run this shell script" - echo "" - exit 1 -fi -if [ ! -f ${BOOT_IMAGE} ] ; then - echo "Could not find boot image: ${BOOT_IMAGE}" - exit 1 -fi -if [ "`which syslinux`x" = "x" ] ; then - echo "" - echo "Could not find syslinux. Try \"apt-get install syslinux\"" - echo "" - exit 1 -fi -if [ "`which install-mbr`x" = "x" ] ; then - echo "" - echo "Could not find install-mbr. Try \"apt-get install mbr\"" - echo "" - exit 1 -fi - -umount ${USB_DEV}1 2>/dev/null 1>/dev/null - -echo "Reformat USB boot partition" -mkfs.vfat -F 16 -n kubuntu8 ${USB_DEV}1 -if [ ! -d ${MOUNT_POINT}/kubuntu8 ] ; then - mkdir -p ${MOUNT_POINT}/kubuntu8 - created="yes" -fi -mount ${USB_DEV}1 ${MOUNT_POINT}/kubuntu8 -if [ $? -ne 0 ] ; then - echo "Mount of USB boot partition failed." - exit 1 -fi -cd ${MOUNT_POINT}/kubuntu8 -if [ $? -ne 0 ] ; then - echo "Could not cd to USB boot partition" - exit 1 -fi - -echo "Detaring boot image ..." -tar xfz ${BOOT_IMAGE} -# original-partioning.txt was created by partition_usb_key -if [ -e ${CWD}/original-partitioning.txt ] ; then - cp -f ${CWD}/original-partitioning.txt . - rm -f ${CWD}/original-partitioning.txt -fi -cd ${CWD} - -syslinux -sf ${USB_DEV}1 -install-mbr -p1 ${USB_DEV} -echo "syncing ..." -sync -sync -umount ${MOUNT_POINT}/kubuntu8 -if [ "x$created" = "xyes" ] ; then - rmdir ${MOUNT_POINT}/kubuntu8 -fi