It sounds like the OP's computer will only boot from a CD (since the internal drive is broken) and he wants to dual-boot Porteus and lubuntu from an external hard drive (please correct me if I'm wrong here).
If you can boot lubuntu through plop on the Porteus CD (and it sounds like this is the case from your first post unless you are using plop from a lubuntu livecd), I think the solution is relatively easy. Please try the following:
1) boot Porteus from the live CD
2) copy the porteus data from the live CD onto your usb HDD:
(assuming your cd is sr0 and you want Porteus on the second partition on the second disk attached to your computer; change these paths to suit)
3) reboot; boot from the CD, but when the boot menu comes up, hit TAB and add the following cheatcode:
4) Once it boots up, check out /var/log/porteus-livedbg (the name of that file might be slightly different) and check that it says "Porteus data found in /mnt/sdb2", or whichever device/partition you put the porteus data. If it fails to boot or fails to read data from this location, come back and let us know what happened. If it shows that you're booting from your usb HDD, move on to step 5.
5) rebuild the Porteus iso with a modified porteus.cfg so you don't have to manually enter the from= cheatcode every time:
Code: Select all
mkdir /tmp/iso
cp -ar /mnt/sr0/* /tmp/iso/
cd /tmp/iso/boot/syslinux
geany porteus.cfg #(replace geany with the text editor found in your desktop environment)
Now, go to the first boot entry in your porteus.cfg and add "from=/dev/sdb2" to the APPEND line just like you would while booting up and pressing TAB. You can add any other cheatcodes you like here. Once done, save it, close, and then:
that script will prompt you for an iso name, you can use whatever you like, e.g. /tmp/test.iso
6) burn the new iso to disk and boot from it. You should be able to boot Porteus off your USB HDD or enter plop to boot lubuntu.
Note that once you start using the "from=" cheatcode, the data inside the "porteus" folder on the cd is no longer used, everything other than the bootloader, bootloader config, kernel (/boot/syslinux/vmlinuz) and initrd (/boot/syslinux/initrd.xz) is read directly off of your usb hard drive. The kernel and initrd together make up a miniature linux operating system and this system is capable of seeing the same drives and partitions as the full-blown Porteus system. the "from=" cheatcode tells the initrd where to find the porteus data and it builds the full-blown Porteus system out of these files, so what matters under this setup is that the linux kernel can see these locations, not that they are bootable through your BIOS.
I actually have things set up a little bit more complex than this to have a little more flexibility without having to burn new boot cd's all the time; I boot grub (legacy) off a CD, which will either boot my windows partition (booooo) or chainload to another grub installation I have on a partition on my second hard drive. That grub installation reads off a menu.lst on the hard drive so I can modify that partition to boot however I want. The downside is that I have to go through two menus in order to boot linux; the up side is that I haven't had to burn a new boot disk in several months.
Once again, good luck! If any of my explanation isn't clear or sounds like it's heading in the wrong direction (I may not fully understand what you're looking to do), just let us know!