Difference between revisions of "Bugs/Installer"
(Added Category:Bug Pages) |
|||
Line 2: | Line 2: | ||
unfortunately I'm using an old SCSI-adapter (Tekram 390UF). The necessary module -ncr53c8xx.ko or sym53c8xx.ko - isn't included in the kernel modules. Is there a workaround to load the module ncr53c8xx or the sym53c8xx on boot? | unfortunately I'm using an old SCSI-adapter (Tekram 390UF). The necessary module -ncr53c8xx.ko or sym53c8xx.ko - isn't included in the kernel modules. Is there a workaround to load the module ncr53c8xx or the sym53c8xx on boot? | ||
Can I use any precompiled module for a 2.6-kernel? | Can I use any precompiled module for a 2.6-kernel? | ||
+ | |||
+ | ---- | ||
+ | |||
+ | Hi, <br> I am making a LiveCD (of my work on localization) based on knoppix. The problem i have with Knoppix-installer is as follows. When i INSTALL knoppix, the installer just ignores all the other OS installations on the hard disk and creates a Grub menu that contains just the new installation. | ||
+ | <p>I have made some changes to the install script boot-tools.bm so that it scans hard disk partitions for other installations and make entries for them in the new Grum menu. Its not tested. | ||
+ | </p><p>'''I would like to know if there would be any improvements to knoppix-installer in the near future related to this.''' | ||
+ | </p><p>Diff (-pu) follows.. | ||
+ | <pre>--- fsextract-NEW/usr/share/knoppix-installer/modules/booting/boot-tools.bm 2005-11-30 17:23:05.000000000 +0530 | ||
+ | +++ boot-tools.bm 2005-12-27 15:00:28.000000000 +0530 | ||
+ | @@ -52,7 +52,7 @@ create_initrd() | ||
+ | # TODO: :-) | ||
+ | [ -z "$(which mkext2fs)" -a -x "tools/mkext2fs" ] && cp -f tools/mkext2fs $TARGET_MNT_POINT/usr/sbin/ | ||
+ | perl -pi -e "s/mkcramfs/mkext2fs -f/g" $TARGET_MNT_POINT/etc/mkinitrd/mkinitrd.conf | ||
+ | - #perl -pi -e "s/mkcramfs/mkext2fs/g" $TARGET_MNT_POINT/etc/mkinitrd/mkinitrd.conf ---SWECHA | ||
+ | + # SWECHA -- Added -f to above line. | ||
+ | export INITRD_PARAM_$INITRD_POSTFIX="ramdisk_size=100000 " | ||
+ | fi | ||
+ | |||
+ | @@ -568,7 +568,60 @@ translate_linux_to_grub () { | ||
+ | return 0 | ||
+ | } | ||
+ | |||
+ | +# SWECHA specific function | ||
+ | +get_grub_menu() | ||
+ | +{ | ||
+ | + mnt_point="/mnt/inst" | ||
+ | + [ ! -e $mnt_point ] && mkdir $mnt_point | ||
+ | + PART=$1 | ||
+ | + mount -o ro $PART $mnt_point 2>&1 >/dev/null | ||
+ | + [ $? -ne 0 ] && return 1 | ||
+ | + | ||
+ | + menu_file=$mnt_point/boot/grub/menu.lst | ||
+ | + if [ ! -e "$menu_file" ] ; then umount $PART ; return 1; fi | ||
+ | + | ||
+ | + return 0 | ||
+ | +} | ||
+ | |||
+ | +# SWECHA specific function | ||
+ | +# uses fdisk to detect all partitions.. | ||
+ | +# From each Linux partition it tries to get boot/grub/menu.lst | ||
+ | +# accumilates the boot entries from all of them and adds | ||
+ | +# them to a the menu.lst of the newly installed grub. | ||
+ | +# For each Fat32 partition found.. it adds a Win2k/xp entry to menu.lst | ||
+ | +# | ||
+ | +create_swecha_menu() | ||
+ | +{ | ||
+ | + #back up the default menu.lst created by the default knoppix installer | ||
+ | + cp $TARGET_MNT_POINT/boot/grub/menu.lst $TARGET_MNT_POINT/boot/grub/menu.knoppix.lst | ||
+ | + | ||
+ | + #Linux partion list | ||
+ | + for DP in `/sbin/fdisk -l /dev/hda | grep -r "^/dev" | grep -i linux | cut -d' ' -f1` # for each linux partition... | ||
+ | + do | ||
+ | + get_grub_menu $DP | ||
+ | + [ $? -ne 0 ] && continue | ||
+ | + echo "# -------------From $DP --------------------------" >> $TARGET_MNT_POINT/boot/grub/menu.lst | ||
+ | + awk '/[Tt]itle/ { start = 1 }; { if(start==1) print $0}' $menu_file >> $TARGET_MNT_POINT/boot/grub/menu.lst | ||
+ | + umount $DP | ||
+ | + done | ||
+ | + | ||
+ | + #Win partitions | ||
+ | + for DP in `/sbin/fdisk -l /dev/hda | grep -r "^/dev" | grep -i fat | cut -d' ' -f1` # for each FAT32 partition... | ||
+ | + do | ||
+ | + hd=`echo $DP | cut -d'a' -f2` | ||
+ | + let hd=$hd-1 | ||
+ | + echo "# -------------From $DP --------------------------" >> $TARGET_MNT_POINT/boot/grub/menu.lst | ||
+ | + cat <<EOI >> $TARGET_MNT_POINT/boot/grub/menu.lst | ||
+ | + | ||
+ | +title Win 2k/XP/.. | ||
+ | +chainloader (hd0,$hd)+1 | ||
+ | + | ||
+ | +EOI | ||
+ | + done | ||
+ | + | ||
+ | + return 0 | ||
+ | +} | ||
+ | + | ||
+ | install_grub() | ||
+ | { | ||
+ | # create device.map | ||
+ | @@ -714,6 +767,8 @@ EOF | ||
+ | grub-install --root-directory=$TARGET_MNT_POINT "(hd0)" >/dev/null 2>/dev/null | ||
+ | ;; | ||
+ | esac | ||
+ | + | ||
+ | + create_swecha_menu # SWECHA | ||
+ | |||
+ | return 0 | ||
+ | } | ||
+ | </pre> | ||
<!--Please add all bug reports above this line --> | <!--Please add all bug reports above this line --> | ||
[[Category:Bug Pages]] | [[Category:Bug Pages]] |
Revision as of 12:28, 28 December 2005
Hi, unfortunately I'm using an old SCSI-adapter (Tekram 390UF). The necessary module -ncr53c8xx.ko or sym53c8xx.ko - isn't included in the kernel modules. Is there a workaround to load the module ncr53c8xx or the sym53c8xx on boot? Can I use any precompiled module for a 2.6-kernel?
Hi,
I am making a LiveCD (of my work on localization) based on knoppix. The problem i have with Knoppix-installer is as follows. When i INSTALL knoppix, the installer just ignores all the other OS installations on the hard disk and creates a Grub menu that contains just the new installation.
I have made some changes to the install script boot-tools.bm so that it scans hard disk partitions for other installations and make entries for them in the new Grum menu. Its not tested.
I would like to know if there would be any improvements to knoppix-installer in the near future related to this.
Diff (-pu) follows..
--- fsextract-NEW/usr/share/knoppix-installer/modules/booting/boot-tools.bm 2005-11-30 17:23:05.000000000 +0530 +++ boot-tools.bm 2005-12-27 15:00:28.000000000 +0530 @@ -52,7 +52,7 @@ create_initrd() # TODO: :-) [ -z "$(which mkext2fs)" -a -x "tools/mkext2fs" ] && cp -f tools/mkext2fs $TARGET_MNT_POINT/usr/sbin/ perl -pi -e "s/mkcramfs/mkext2fs -f/g" $TARGET_MNT_POINT/etc/mkinitrd/mkinitrd.conf - #perl -pi -e "s/mkcramfs/mkext2fs/g" $TARGET_MNT_POINT/etc/mkinitrd/mkinitrd.conf ---SWECHA + # SWECHA -- Added -f to above line. export INITRD_PARAM_$INITRD_POSTFIX="ramdisk_size=100000 " fi @@ -568,7 +568,60 @@ translate_linux_to_grub () { return 0 } +# SWECHA specific function +get_grub_menu() +{ + mnt_point="/mnt/inst" + [ ! -e $mnt_point ] && mkdir $mnt_point + PART=$1 + mount -o ro $PART $mnt_point 2>&1 >/dev/null + [ $? -ne 0 ] && return 1 + + menu_file=$mnt_point/boot/grub/menu.lst + if [ ! -e "$menu_file" ] ; then umount $PART ; return 1; fi + + return 0 +} +# SWECHA specific function +# uses fdisk to detect all partitions.. +# From each Linux partition it tries to get boot/grub/menu.lst +# accumilates the boot entries from all of them and adds +# them to a the menu.lst of the newly installed grub. +# For each Fat32 partition found.. it adds a Win2k/xp entry to menu.lst +# +create_swecha_menu() +{ + #back up the default menu.lst created by the default knoppix installer + cp $TARGET_MNT_POINT/boot/grub/menu.lst $TARGET_MNT_POINT/boot/grub/menu.knoppix.lst + + #Linux partion list + for DP in `/sbin/fdisk -l /dev/hda | grep -r "^/dev" | grep -i linux | cut -d' ' -f1` # for each linux partition... + do + get_grub_menu $DP + [ $? -ne 0 ] && continue + echo "# -------------From $DP --------------------------" >> $TARGET_MNT_POINT/boot/grub/menu.lst + awk '/[Tt]itle/ { start = 1 }; { if(start==1) print $0}' $menu_file >> $TARGET_MNT_POINT/boot/grub/menu.lst + umount $DP + done + + #Win partitions + for DP in `/sbin/fdisk -l /dev/hda | grep -r "^/dev" | grep -i fat | cut -d' ' -f1` # for each FAT32 partition... + do + hd=`echo $DP | cut -d'a' -f2` + let hd=$hd-1 + echo "# -------------From $DP --------------------------" >> $TARGET_MNT_POINT/boot/grub/menu.lst + cat <<EOI >> $TARGET_MNT_POINT/boot/grub/menu.lst + +title Win 2k/XP/.. +chainloader (hd0,$hd)+1 + +EOI + done + + return 0 +} + install_grub() { # create device.map @@ -714,6 +767,8 @@ EOF grub-install --root-directory=$TARGET_MNT_POINT "(hd0)" >/dev/null 2>/dev/null ;; esac + + create_swecha_menu # SWECHA return 0 }