| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

Install a new Linux version from the ISO file without needing to burn it to CD or DVD

Page history last edited by Paul G. Taylor 15 years ago

 


 

A few methods for installing a Linux OS from an ISO file directly, without burning to CD or DVD.

 

This method saves time, cost and hassles associated with burning to CD or DVD and is particulary called for in those cases where a DVD-RW or CD-RW is not available.

 

 

Here's a simple description of the method [items in red may need changing to your file system]: --

 

Taken from

Alternative Installation Methods for Feisty

- How to install Ubuntu Feisty over network or from a hard-disk.

By: Mihai Marinof, Linux Editor

 

 INSTALL FROM HARD DISK

 

For this method, you'll need to already have a working Linux system on the machine on which you want to install the new Feisty system. This method provides a faster and more usable system because the installer is running from a hard drive rather than from a CD.

 

First of all, you need to use GParted to create a new primary partition and format it to ext3. For example, let's say that the partition is /dev/hda3. You will need to copy the ISO's contents over to the new partition: 

CODE

$ mkdir /tmp/installcd

$ sudo mount -o loop /path/to/ubuntu-7.04-desktop-i386.iso /tmp/installcd

$ sudo mkdir /mnt/installer

$ sudo mount /dev/hda3 /mnt/installer

$ sudo cp -r /tmp/installcd/* /mnt/installer

$ sudo umount /tmp/installcd

 

 

Next, you'll need to edit your current Grub configuration file to boot the new partition. To do this, open the /boot/grub/menu.lst in a text editor and add the following lines:

 

CODE

title disk-installer

root (hd0,2)                                                      Note: This is the hda3 partition in GRUB notation.

kernel /casper/vmlinuz boot=casper root=/dev/ram ramdisk_size=1048576 rw

initrd /casper/initrd.gz

 

 

NOTE: the root line tells Grub which partition contains the installer. If in your case, the partition you created is /dev/hda1, you'll need to edit that line to root (hd0,0). As you can see, the partition number becomes number -1 as Grub starts counting from 0.

 

Next, reboot and choose 'disk-instaler' from the grub boot menu.

 

 

 


Here's a generic description of the method : --

 

Microsoft Windows Based Method

Microsoft Windows Based Method to Install any Linux distro directly from hard disk without burning any DVD

http://www.instantfundas.com/2007/08/install-any-linux-distro-directly-from.html

 

After you download any Linux distro from the internet, you have to burn it to a DVD, CD or a number of CDs to install it. That CD or DVD is generally used only once after which it lies unused , and worse, almost every Linux distro comes up with a new release every 6 months. So if you are in the habit of upgrading to every new version, you must have dozens of CDs lying at the bottom of your drawer. What a wastage of CDs! But with a little trick you can install any Linux directly from the hard disk without burning a single CD or DVD. The prerequisite of this trick is to have an operating system already installed on your computer. This is obvious because unless you are able to boot into your machine, you can't install anything; and we are not going to boot from the Linux disk because we aren't burning any. Here I'm going to focus on Microsoft Windows as the pre installed operating system.

Almost all Linux installers uses two files to boot the computer: a Linux kernel, and an initial root file system containing a minimal set of directories that is mounted prior to when the real root file system is available. This initial root file system is also called Ram disk (initrd). We will use these two files to boot our PC. Now lets get to the actual procedure.

1. The first thing you will have to do is copy the ISO file(s) of the Linux to your hard disk (ofcourse, you already have it). Make sure that the partition is FAT32 unless the distro you are installing has native NTFS read/write support. Some distros require you to copy the ISO file(s) to the root of the partition. If you keep it inside a folder, the setup might not be able to detect it.

2. Use Winrar to open the ISO file (you need not need to extract it). Now you will have to extract the two files I talked about earlier. The files are usually found inside a directory called isolinux. Different distros might place the files in different location; you just have to search for it, but it isn't hard to locate. These two files are also named differently in different distros. The files that you will need to search and extract are: (the kernel file is shown in green and the Ram disk is shown in red)

Fedora: vmlinuz and initrd.img

Suse: linux and initrd

Mandriva: vmlinuz and all.rdz

Ubuntu: vmlinuz and initrd.gz

Gentoo: gentoo and gentoo.igz

Knoppix:  vmlinuz and initrd.img

Slackware: bzImage and initrd.img

Debian:  vmlinuz and initrd.gz

3. After you have extracted the two files, copy them to c:\boot (you will need to create the folder "boot")

4. Now download the file called grub4dos from here. Extract the folder "boot" and the file "grldr" from the downloaded zip file. Inside the folder "boot" is another folder called "grub"; copy the folder "grub" to c:\boot. Copy the file "grldr" to c:\

5. Open c:\boot\grub\menu.lst and add these following lines. (Notice that hd0 refers to the first hard drive. If you have more than one hard drive, they will be named hd1, hd2 etc. Replace hd0 with the proper hard drive number incase you have windows installed on another drive.) Replace Linux_kernel and Ram_disk with the appropriate file names below. (the ones you copied to c:\boot)


title Install Linux
kernel (hd0,0)/boot/Linux_kernel
initrd (hd0,0)/boot/Ram_disk



6. Now you have to add grub to your c:\boot.ini file. You can open boot.ini by clicking on Start>Run and typing c:\boot.ini. If Windows does not allow the file to be modified, then go to Control Panel>System and click on the Advanced tab. Now under Startup and Recovery click Settings and then under System Startup click Edit. Open boot.ini and add this line in the end.

C:\grldr=”Start GRUB”

7. You are now ready to install Linux. Restart your PC and from the boot screen select "Start GRUB". This will load GRUB. From the grub screen select "Install Linux". During the setup you will be asked the source of installation. Choose hard disk and then select the hard drive partition where you copied the ISO files. Sometimes you might have to type the whole path of the partition and the exact name of the ISO. So write it down before you begin.

I have personally tested this with Fedora, Suse and Mandriva and it works without problem. I have no doubt it will work for others too.

 

 

 

Linux-based version of generic method.


Update: dougfractal adds that this is possible from Linux too. The method as he describes is:

From the terminal enter these commands

sudo mkdir /distro
sudo chmod `whoami`:`whoami`
cp MYLINUX.iso /distro/distro.iso

Now extract Linux_kernel & Ram_disk to /distro#

Open  /boot/grub/menu.lst

#ADD NEW ENTRY#
title Install Linux
root (hdX,X)
kernel /distro/Linux_kernel
initrd /distro/Ram_disk

Reboot and select "Install Linux" from grub.

 

 

 

 

 


 

Here's a record of one person's steps : --

 

Thanks for everyone's help!

Here are the steps I pieced together to make it work.

1) I had already created a separate partion with a label called iso in a partion separate from / and made a note as to which partition it was on. In my case it was /dev/hda3
2) cd /iso
3) btdownloadcurses.py --url http://torrent.dulug.duke.edu/FC2-test1-binary-i386.torrent
4) mkdir /mnt/x
5) mount -o loop /iso/FC2-test1-binary-i386/FC2-test1-i386-disc1.iso /mnt/x
6) cd /mnt/x/isolinux
7) cp vmlinuz /boot/vmlinuz-1.90
8) cp initrd.img /boot/initrd-1.90.img
9) modify /boot/grub/grub.conf (linked to by /etc/grub.conf)

This assumes that /boot is in the first partition of the first hard drive, usually /dev/hda1

title Fedora test1 (1.90) installer
root(hd0,0)
kernel /vmlinuz-1.90
initrd /initrd-1.90.img

10) Reboot into the installer.

11) Select "hard disk" as the install location
12) Select the correct partion (in my case /dev/hda3)
13) Enter the directory name. In my case it was: FC2-test1-binary-i386 and did
not include "iso" because "iso" was the label given to the partiion and not a
real directory.

 

 

UNetbootin

Here's another method that has become quite well known.

 

Universal Netboot Installer

 

 

UNetbootin loads utilities or installs Linux/BSD to a partition or USB drive without a CD. It can use an existing disk image/kernel/initrd file, or download a supported distro or system utility (such as Ubuntu, Fedora, openSUSE, FreeBSD, PartedMagic, etc.)
 
 

For the Live USB creation mode, UNetbootin downloads and extracts an ISO file to your USB drive, generates an appropriate syslinux config file, and makes your USB drive bootable using syslinux.

 

 

Latest Windows version: http://unetbootin.sourceforge.net/unetbootin-windows-latest.exe

Latest Linux version: http://unetbootin.sourceforge.net/unetbootin-linux-latest

Ubuntu Packages: http://packages.ubuntu.com/search?suite=all&keywords=unetbootin

Debian Packages: http://packages.debian.org/search?suite=all&keywords=unetbootin

openSUSE .rpm Packages: http://software.opensuse.org/search?baseproject=ALL&p=1&q=unetbootin

Gentoo ebuilds: http://packages.gentoo.org/package/sys-boot/unetbootin

UNetbootin Forum: http://www.boot-land.net/forums/index.php?showforum=79

 

 

And here is another method for those who like the CLI. It is based on Debian so may need some slight changes for another distro.

 

 

Dean's CLI Method.

 

Unfortunately Dean changed his post, removing the CLI method and replacing it with a GUI method before  I had captured the short, easy method to place here!

 

Comments (0)

You don't have permission to comment on this page.