My question relates to operating systems though nothing to do with actually writing and compiling source code for one.
I already have an operating system compiled and packaged to a bootable image which I can 'dd' to a USB stick. I can then boot an x86 machine from this USB stick however this does not install anything on the machine's hard drive i.e. I have to boot from the USB stick each time. What I want to achieve is something like an OS installer such as you would find in any Linux distribution, however I am uncertain of the steps needed to be undertaken by the installer.
A simple way would perhaps be to 'dd' the image directly to the hard disk but I would like to try and avoid this method if possible as it requires a skilled operator to do this. Another way would be to image the hard disk (once I had 'dd'-d the binary image to a hard disk first) and used a commercial image installer to clone the disk. again I would like to avoid this as cloning might be time consuming plus I think it's hardware dependent.
Could anyone give me some pointers on how I can create an OS installer or perhaps the steps an installer would have to go through. Could anyone give me any indication how Linux distros achieve their installation? I'm just after a starting point really and any help would be appreciated.
Writing an OS Installer
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: Writing an OS Installer
I could go into details on all sorts of things and whatnot, but you might want to read the instructions of a manual installation process to find out what the Linux installation process really entails. Of course if you take a more popular distro, most of these steps are automated by the installer - with various shortcuts.
Re: Writing an OS Installer
Thanks Combuster I'll take a look at that.Combuster wrote:I could go into details on all sorts of things and whatnot, but you might want to read the instructions of a manual installation process to find out what the Linux installation process really entails. Of course if you take a more popular distro, most of these steps are automated by the installer - with various shortcuts.
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: Writing an OS Installer
So what you are saying is that you don't know what an installer does but you want one...ks44 wrote:What I want to achieve is something like an OS installer such as you would find in any Linux distribution, however I am uncertain of the steps needed to be undertaken by the installer.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
- AndrewAPrice
- Member
- Posts: 2299
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
Re: Writing an OS Installer
An installer basically.. installs the operating system.
Generally, it goes;
- Partitioning and formatting the disk
- Copying the base OS onto the disk
- Installing a bootloader
- Copying any extra applications onto the disk (text editor, web browser, media player, any included games, etc.)
- Perform any user configuration (set up the root password, create a default account, etc.)
Many installers support mouse movement, connect to the network (wired or wifi) to download updates, let you load drivers at install-time (if you have an unconventional storage device.)
How I would do it:
Create a live CD (or floppy, or bootable network image) version of my operating system. Then I can share disk and network drivers between my installer and OS. Replace my shell with an installation wizard that walks you through the above steps.
Generally, it goes;
- Partitioning and formatting the disk
- Copying the base OS onto the disk
- Installing a bootloader
- Copying any extra applications onto the disk (text editor, web browser, media player, any included games, etc.)
- Perform any user configuration (set up the root password, create a default account, etc.)
Many installers support mouse movement, connect to the network (wired or wifi) to download updates, let you load drivers at install-time (if you have an unconventional storage device.)
How I would do it:
Create a live CD (or floppy, or bootable network image) version of my operating system. Then I can share disk and network drivers between my installer and OS. Replace my shell with an installation wizard that walks you through the above steps.
My OS is Perception.
Re: Writing an OS Installer
Thanks MessiahAndrw. I think (in my case) I would only have to do the first three steps you suggest as there is no need to install additional software - all required software I could build into the 'base' image. I'm getting some ideas now what I have to do.MessiahAndrw wrote:An installer basically.. installs the operating system.
Generally, it goes;
- Partitioning and formatting the disk
- Copying the base OS onto the disk
- Installing a bootloader
- Copying any extra applications onto the disk (text editor, web browser, media player, any included games, etc.)
- Perform any user configuration (set up the root password, create a default account, etc.)
Many installers support mouse movement, connect to the network (wired or wifi) to download updates, let you load drivers at install-time (if you have an unconventional storage device.)
How I would do it:
Create a live CD (or floppy, or bootable network image) version of my operating system. Then I can share disk and network drivers between my installer and OS. Replace my shell with an installation wizard that walks you through the above steps.