Page 1 of 1

Dual Booting Porteus Kiosk

Posted: 10 Jan 2016, 17:02
by jase1979
Hi Everyone, my first post here :D

I've managed to get porteus to boot on our school's laptops using a USB stick. However, I need to get porteus installed on 20 laptops. I need all 20 of these laptops to be dual boot. Currently they have windows 8 installed. I know how to resize partitions etc. However, I don't know how to go about installed porteus kiosk on another partition. The option to write to hdd will overwrite from the start of the hdd so this isn't an option as we already have windows 8 installed.

Could anyone advise me on how to dual boot win 8 and porteus kiosk from the hdd please?

Thanks in advance

Jason

Re: Dual Booting Porteus Kiosk

Posted: 11 Jan 2016, 15:25
by fanthom
Hello Jason,

Dual booting is possible only if you:
a) manage to install 3rd party bootloader (like Grub4DOS for example) in your system which lets you select Windows or Linux
b) extract vmlinuz and initrd.xz from kiosk ISO and place in some folder accessible by the bootloader
c) update bootloader configuration and point to extracted vmlinuz and initrd.xz (crate entry for this system)
d) burn kiosk ISO image to a partition rather than device using some live linux and 'dd' tool

Bit of work and i'm not sure if its worth hassle. Its easier to boot kiosk from usb stick/CD (if this is an option).

Thanks

Re: Dual Booting Porteus Kiosk

Posted: 11 Jan 2016, 15:58
by jase1979
Hi,

Thanks for the reply. School children will be using the laptops so booting from USB is a pain. I understand a,b,c. Step d which I've tried creates a partition that's not readable. I will try the suggested steps this evening.

Thanks

Re: Dual Booting Porteus Kiosk

Posted: 11 Jan 2016, 17:40
by fanthom
"Step d which I've tried creates a partition that's not readable."
You may have to convert back the ISO from the hybrid format to standard. In order to do this you have to unpack the ISO and create new one using make-iso.sh script.
Do not run 'isohybrid' tool against new ISO but rather burn to a partition, e.g.:

Code: Select all

dd < Porteus-Kiosk.iso > /dev/sda2
Make sure you select correct partition. Launch 'blkid' command and check if /dev/sda2 has label "Porteus-Kiosk" and filesystem iso9660 as these are searched by the booting script from initrd.xz.

Works for me so must also for you. I'm using syslinux as the bootloader, there is a chance that GRUB would read vmlinuz and initrd.xz directly from /dev/sda2 so point b) would not be required but i have not tried it yet.

Re: Dual Booting Porteus Kiosk

Posted: 11 Jan 2016, 23:12
by jase1979
I'm trying a different method as I didn't understand a some of the steps above.

Grub2 can load Linux from an iso file saved to a partition. I've put an porteus iso file on a ext2 partition /dev/sda5.

Using the the following grub commands:

Code: Select all

loopback loop (hd0,5)/porteus.iso
linux (loop)/boot/vmlinuz boot=boot iso-scan/filename=porteus.iso noprompt 
initrd (loop)/boot/initrd.lz 
I managed to get it to boot to the part that says "starting porteus kiosk .... Device not ready yet ..... Delaying 20 seconds"

It then boots no further

Re: Dual Booting Porteus Kiosk

Posted: 12 Jan 2016, 08:42
by fanthom
I don't think above commands are 100% correct as we have initrd.xz in kiosk rather than initrd.lz.
Anyway - if you got to the counting stage then its a progress.

Now it's enough if you burn the ISO to some partition and kiosk init script should find it.

You are nearly there :)

Re: Dual Booting Porteus Kiosk

Posted: 12 Jan 2016, 09:00
by jase1979
Sorry my mistake in typing it was initrd.xz I copied the wrong info into the post. Any ideas on how to proceed?

The bit I don't understand is burning the iso to a partition. Do I create a new partition with a certain file system? Or do I create a partition without a filesystem and dd the iso?

Re: Dual Booting Porteus Kiosk

Posted: 12 Jan 2016, 09:29
by jase1979
Make sure you select correct partition. Launch 'blkid' command and check if /dev/sda2 has label "Porteus-Kiosk" and filesystem iso9660 as these are searched by the booting script from initrd.xz.
So if I dd the iso to a partition as described above it will create an iso9660 file system on the hdd?

Re: Dual Booting Porteus Kiosk

Posted: 12 Jan 2016, 09:32
by fanthom
'dd' writes to a block device destroying existing filesystem. You have /dev/sda5 formatted with ext2 - you can use it for kiosk.
Move kiosk ISO to a Windows partition -> update GRUB config to point it to a new ISO location -> burn kiosk ISO to /dev/sda5 with following command:

Code: Select all

dd < Porteus-Kiosk.iso > /dev/sda5
Job done :)

"So if I dd the iso to a partition as described above it will create an iso9660 file system on the hdd?"
Yes.

3 things to note:
a) make sure you write to a partition and not device (/dev/sda5 rather than /dev/sda)
b) do not enable automatic updates as it may burn the ISO to a device rather than partition (should not but i never tested this scenario)
c) do not enable remote management as it may burn the ISO to a device rather than partition (should not but i never tested this scenario)

Re: Dual Booting Porteus Kiosk

Posted: 12 Jan 2016, 09:43
by jase1979
Great, I'll have to try this tonight when I get home. Thanks again.

Re: Dual Booting Porteus Kiosk

Posted: 12 Jan 2016, 18:34
by jase1979
Thanks for your help, I got it working by dd the iso to /dev/sda4 then booted it from grub. Didn't bother with the iso loopback stuff in the end. I've messed my windows installed up in the meantime, however this should be easy to solve.