ISO file(s) to boot installation disc or stick

Asked by TomEeePC

Many folks are frustrated by installation problems because the downloaded Linux OS files will not install for them. They ask a question in this forum and are usually given answer that says that they have to make a CD, DVD or memory stick bootable in order to do the installation using the files they already have or they have to make these files "bootable" by converting it/them into an ISO file. These are lovely answers, but there is something vital missing. Why do you have to do this and how exactly do you accomlish it.

I can answer the "Why?" but I'm still cluless as to the "How?"

A cold, powered-down computer has no idea of what operating system is installed or where it is installed (ie. a solid-state memory erray, a hard drive, a USB memory stick, a CD/DVD inside the machine or perhaps attached via some port) A BIOS chip that has an initial program burned onto it can be made to look at the above operating system locations in some order selectable by getting into the BIOS and changing the boot order.

Let's say that you own CD that's bootable. The BIOS will look at a specific address/location (boot sector?) on the CD for the magical ISO file. If it's not there, it will not look anywhere else for it. This is why the ISO file has to be burned onto the CD (or written to the hard drive) first so that it can occuoy the specific location where the BIOS will look for it. Once it finds the ISO file, the BIOS can pass on or turn over the rest of the boot process as specified in the ISO file, depending on which operating system is involved, to that operating system's kernel program which then goes into RAm, independant of any drives or memory sticks. How the ISO file is placed at specific location that the BIOS expects onto a memory stick is beyond me, but I suspect that addressing conventioins for memory locations are the same for a stick as a hard drive or CD/DVD so a program is used to place the beginning of an ISO file at that precise memory address on a stick. BIOS looks for it at that address and that's how a stick is made bootable. From then on, the contents of the ISO file tells the system where to go or how to look for the rest of the operating system kernel and on to the installation files for an operating system.

In DOS days you did this by putting a bootable floppy in drive A and issuing a format <drive letter>/s command which placed the "system files" (ISO etc.) at the proper location. If you didn't have a bootable floppy, you went to see your friend Joe down the road whose computer had DOS on it and made one by placing the floppy in drive A and issuing a format a/s command.

Where experienced Linux users fail in their explanations is that they tell you some obscure command to type at a terminal prompt which will burn or copy an ISO file to the proper address on a CD/DVD or memory stick. This is fine if you have a terminal window available, presumably a Linux terminal window, not a DOS blue screen and something in memory or on a hard drive that recognizes that command you just typed. But chances are that we don't have a friend named Joe down the road who's already running Linux...

So the question remains, if one does not have a working version of Linux installed and does not have a Linux terminal screen available where does one type the magical command to burn/place the ISO file and/or Linux kernel onto the blank CD/DVD or memory stick??? ie. If I had a working Linux installation, I would already have a bootable ISO file on something so I'd be fat dumb and happy, but as it is, I'm just dumb and would like to know how exactly do I get my memory stick or CD/DVD to have an ISO file at the location where BIOS expects to see it using something other than a Linux terminal screen? Is there a Windows or DOS (command.com) command or application that will do that and what might it be called?

Sorry to be so anal or even offensive-sounding, but I would really like to learn something, hence my interest in Linux, but most Linux gurus are so knowledgeable that they somehow miss the fact that some of us out here are dealing with only partial knowledge or outright ignorance.

Thx!

TomEeePC

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu ubiquity Edit question
Assignee:
No assignee Edit question
Solved by:
TomEeePC
Solved:
Last query:
Last reply:
Revision history for this message
Robinson Tryon (colonelqubit) said :
#1

Hey Tom,

I'll agree that having a GNU/Linux or BSD machine with a decent terminal is a fair sight more enjoyable than the command-line interface in MS-Windows. However, as you point out, there's a bit of a chicken-egg problem here where if you don't already have a *nix box to burn your ISOs.

This page provides information on how to burn an ISO to an optical disk in MS-Windows:
https://help.ubuntu.com/community/BurningIsoHowto

The wiki page above also provides links to other ways to get Ubuntu, including having discs mailed to you.

Good luck!
- qubit

Revision history for this message
kernowyon (kernowyon) said :
#2

Whilst I appreciate that those more experienced Linux users can sometimes go into quite lengthy and obscure commands, in the case of burning an iso, it can be achieved in both Linux and Windows using a GUI tool.

Almost any half-decent burning program (Linux - K3b or Brasero for example and Windows - Nero) will burn an iso to disk for you. Little point in making life complicated unless there is no other way.

Sometimes the command line is the best option - especially when diagnostics are needed, but the same is true in Windows too! In fact, many of the classic diagnostic tools (e.g ping,netstat and many others) work in both Linux and Windows (with slight differences but effectively the same).

The explanation of how a burned to disk iso boots is not actually technically correct, but the basic idea is about right ;) If you are really interested, there are several websites which explain the boot processes.

To be perfectly honest, I have no idea if a Windows command line tool exists which can create a bootable disk from an iso - I have my doubts though, as it would put several companies out of business and that would perhaps go against the "Windows way" ;)
Stick to your GUI burning program - in Windows or Linux unless you have a specific need to pass some obscure switches to the creation of the disk :)

Linux is much, much easier now than it was a few years ago and many folks use it daily, rarely, if ever, seeing a command line - and, in my view, so it should be. I still use the command line regularly, but that is because I was brought up through DOS and then the relatively early Linux distros, where command line work was more than half of your day - the GUI was, at best, flakey back then. Would I go back? No - like most users, I tend to use GUI tools for most of my daily work.

Cheers,

Mark

Revision history for this message
Steve (stupendoussteve-deactivatedaccount) said :
#3

I'll bite, a little. An ISO file is a CD image. It is not the file that the system boots from. An ISO is similar to a zip file, it contains all of the data from the CD, which includes the boot information. It is pretty much like you opened a cd burning application and told it to burn an exact copy of a cd, except to a file instead of a cd (in fact, this is how you make ISO files using K3b). The bios looks at a boot sector which contains the bootloader, which loads the operating system. Linux CDs generally use a program called ISOLINUX to boot the OS from the CD, and SYSLINUX to boot from a USB stick or other media (get used to seeing H. Peter Anvin's name). When installed to a hard drive it will normally use Grub or Lilo. Windows also has a bootloader that works the same way, called NTLDR.

You have already been told how to make a bootable CD or DVD from an ISO with a burning application, Windows 7 also includes built in support for burning an ISO image to a disc. There are also easy to use programs to copy an ISO to a USB stick in such a way that it is bootable and runs like the CD. A good program that does this is unetbootin (http://unetbootin.sourceforge.net/) which works on Windows or Linux. You can choose a distribution from the list, or point it to an ISO file you have downloaded, and it will make a bootable version.

Revision history for this message
TomEeePC (vrayzm) said :
#4

Further to my earlier...

Just to be clear, I don't have a boot or installation problem - I bought two-inch thick book on Ubuntu that came with a fully bootable DVD with 8.0.4 on it. What I was trying to do is give a possibly over-simplified explanation of what's happening to people who seemed to be mystified by the ISO and boot loader process. In addition I was trying to make the obviously knowledgeable gurus aware the sometimes their explanations go way over the heads of the folks asking the questions.

By the way, so far, none of the 'indoze apps that I've tried have been able to make a 16 GB memory stick bootable. That is not to say that they all don't work since I may still be doing something wrong. But there are many more such apps that I haven't tried yet.

None of this is a complaint or put-down of Ubuntu or Linux in favour of any other OS. I wouldn't be here if I wasn't already convinced. My other post concerning windows that cannot be resized in certain programs and inablity to get the wireless adapter working is more of a problem for me at the moment.

Thanks for all of your help!

Revision history for this message
kernowyon (kernowyon) said :
#5

Hi Tom,

That is a big USB stick! Not having a stick that size, I have no idea if there could be issues based on the size of the thing, but I can't see why there would.

Creating a bootable usb stick can be done via Unetbootin as Steven mentioned - there are both Windows and Linux versions.
The UNR version of Ubuntu is a little different, in that it uses the .img file format rather than .iso - thus a different tool is needed. For the .img file to a usb stick, ImageWriter - again for both Windows and Linux - is the tool you need.

It is always useful to raise questions - it helps to move things forward.
As you say, many explanations given are often too technical for the new user and it is easy for those of us who have used Linux for a few years to forget the horror of typing out some complicated command at the terminal - with no real idea what we are doing. Luckily, the few idiots who used to recommend new users to type in commands which would wipe their drive seem to have departed from the community - I haven't seen one for a fair while!

Just as a point of interest - I have a two inch thick book on Red Hat 7 here somewhere and I was using Linux prior to that on and off for a year or two ;)

Cheers,

Mark

Revision history for this message
AA0P (aa0p) said :
#6

My Intel 486 computer is currently running Kubuntu. I prefer Ubuntu; however this spring I upgraded to Ubuntu 11.04 which seems very slow. So I downloaded Ubuntu 10.04LTS but it is an ,ISO file which I have copied onto a CD with my Windows machine, (Can't get the CD drive in Linux box to work since running U-11.04.)
Since I don't know how to make a CD with U-10.04 to reconfigure the Linux box, I loaded Kubuntu into the Linux box; it works but is also slow as well as weird (meaning I can't or don't know how to configure it per my liking, for example - How does one change the desktop screen.) I would like to get back to Ubuntu 10.04 which worked per my likes ( was able to change things per my taste).
However 1) my cd drive on Linux box doesn't seem to work.
2) How does one get the files off a CD with an ISO image so the files can be used?

Sorry I only know enough to get in trouble it seems.
Have spent much time reading Ubuntu/Linux help files/documentation; however they use many terms which I do not understand and don't seem to provide a glossary which defines what the terms mean.

Any help will be appreciated,
Steve