= Installing HelenOS to a disk device = [[PageOutline(2-3)]] == Introduction == {{{#!box type=warning This is not for beginners! In most cases you can just use the live CD or ROM image! }}} This document explains how to use the HelenOS prototype installer to install the system to a hard disk. This produces an installation with a persistent file system configured under {{{/w}}}. Otherwise the system is identical with the live CD. Note that the use of {{{/w}}} by the system is currently very limited (i.e. just Tetris high scores). == Pre-requisities == The installer can only expected to work with a very specific system configuration. Realistically this will only work in QEMU. The system architecture must be ia32 or amd64, the Grub platform must be 'pc' (i.e. not EFI). Also the paths to CD-ROM and disk devices are hard-coded into the installer. * HelenOS live CD must be inserted * Target disk must be on /hw/pci0/00:01.0/ata-c1/d0 (i.e. {{{-hda}}} of QEMU) * Target disk must have enough space to hold the system (recommend at least 128 MBytes for regular build) The target disk must be empty. This can be achieved for example, if you supply a freshly created zero-filled image file to QEMU. If you are using an existing image or device, you can use {{{fdisk}}} within HelenOS to delete any label or other data from the disk. == Installation steps == Supposing the above mentioned requirements are met, just run {{{sysinst}}} and wait for shell prompt. The installation can take a few minutes (2-3), mostly spend in copying initrd.img. (This can probably be mostly attributed to the inefficiency of the ATA disk driver). On success the last message printed will be: {{{ sysinst_copy_boot_blocks: OK }}} Now you can shut the system down. E.g. by closing QEMU window. == Finishing and Booting the installed system == Now you need to configure your system to boot from the hard disk. With QEMU you can, for example, remove the {{{-cdrom}}} and {{{-boot}}} options. It might be possible to run the installation within QEMU and then boot the disk bare metal, as long as Grub device name is the same as in QEMU, i.e. {{{hd0}}}. == Using and shutting down/rebooting the installed system == The installed system has a persistent file system configured under {{{/w}}}. If you make a Tetris high score, it will be stored there. However, you need to be careful when shutting down or rebooting the system. You must eject the system volume before rebooting the system or removing power, otherwise the file system could be corrupted. To reboot your system, you can do, for example: {{{ # vol eject /w # kcon kconsole> reboot }}} == Troubleshooting == * If the installer fails, you might have problem with paths to your HelenOS live CD, or the target disk * If the installer fails, there might not be enough space on the target disk * If the system drops into Grub prompt during boot, likely the Grub device name differs from what is hardcoded in core.img ({{{hd0}}}) Still you might be able to boot the system by manually typing the required commands