Install Ubuntu/Kubuntu/Edubuntu/Xubuntu without CDROM Drive

Sponsored Link
If You have a old machine without CD-ROM and you want to use that as your ubuntu desktop You can use any one of the following solutions to install ubuntu.


Before Starting We need to remember the following Important Points


1)Download the Alternative Ubuntu/Kubuntu/Edubuntu/Xubuntu .iso file from here and run an md5 check on it.

2)If you are running Windows you can download the md5 sum program from here once you have this drag your .iso file onto the program (md5sums.exe) and it will spit out a long string of characters and numbers. Make sure the string it spits out matches the published md5 sum.
md5 sums look like the following

549ef19097b10ac9237c08f6dc6084c6 ubuntu-6.10-alternate-i386.iso

3)Before installing Ubuntu you will need to partition your drive. In essence you will need to boot from another media either a floppy, 2nd drive or USB key and run some type of partition software. Create one new partition for the Ubuntu installation, one to hold the .iso file & additional boot files (say 700megs). You might need to resize your existing OS to make space for the above 2 partitions.

4)Now you need to Install grub onto either a floppy or hard drive and create a similar entry in your menu.lst file

title Install Ubuntu
root (hd0,2)
kernel /boot/vmlinuz vga=normal ramdisk_size=14972 root=/dev/rd/0 rw ---
initrd /boot/initrd.gz

**(hd0,2) refers to the 1st hard drive ‘hd0' and the 3rd partition ‘2'.

The counting of partitions and hard drives starts at zero.

Change (hd0,2) to match the drive and partition of your .iso file.

e.g (hd1,3) Refers to drive 2 and partition 4.

5)Download the vmlinuz & initrd.gz files from here

6)First you need to copy the .iso, vmlinuz & initrd.gz files onto the newly created partition from step (2) in a /boot directory.Make sure all other Ubuntu/Kbuntu/Xubuntu .iso files have been renamed to .iso.somethingelse, this will prevent the installer from picking up the wrong .iso file.

7)Now you need to Boot your machine machine from the hard disk or floppy that has grub installed, you should see a menu that contains ‘Install Ubuntu’. Select ‘Install Ubuntu’ and press enter.

8)Next run through the installation until it fails to find the .iso file. Then change to terminal 2 with (Ctrl-Alt-F2). Hit enter to activate this console.

9)Type the below commands in terminal 2

mkdir -p /dev/loop
ln /dev/loop0 /dev/loop/0

10) Change back to terminal 1 (Ctrl-Alt-F1), scan again and the ISO will be detected.

The install should be working now on your PC

You can refer this from here


This method will work all Ubuntu Versions

First thing you need to create a boot floppy with etherboot. You need to click here and located your network card in the dropdown. You need to make sure the exact PCI ID numbers of your network card which will help you in finding the correct driver. If you don't know, try to locate the card by name in the list. Opt for a bootable floppy image, download it and then write it to a floppy per the instructions on the site.

You then need to configure a tftp server on another machine on the same network. The server should be configured to serve the contents of /install/netboot directory of the Ubuntu CD as root directory. This way, when the computer you are about to install asks for the file pxelinux.0, the pxelinux.0 in /install/netboot on the Ubuntu CD will be served.

You can install the atftpd package, mount your ubuntu CD on /media/cdrom and added /media/cdrom/install/netboot as commandline argument to in.tftpd in /etc/inetd.conf. Don't forget to restart inetd after doing this.

Now you need to configure DHCP server as follows

host tobeinstalled {
hardware ethernet 00:80:C8:F8:51:25;
next-server myinstallhost;
filename "pxelinux.0";
allow bootp;
allow booting;

This will make dhcpd tell the client that it should ask myinstallhost for pxelinux.0 at boot.

Inserted the floppy in the computer to be installed and rebooted it. It downloaded a bunch of files via TFTP, and then gave me the regular Ubuntu install prompt.

You can check this from here

Solution 3

This is very simple guide to install ubuntu without CDROM from your windows using wubi.Check this simple installation guide.

Sponsored Link

You may also like...

32 Responses

  1. Sureinlux says:

    Hi there,
    a nice howto, but is it also possible to include a howto for Network installation, since most laptops do not have a floppy drive…

  2. bwells says:

    You might want to include instructions for a PXE install which is what I use for most of the servers here. The instructions below are what I put on our internal Wiki for the other techs to use.

    Preboot Execution Environment, an environment to bootstrap computers using a network interface card instead of traditional installation media like floppy or CD.

    You can install Ubuntu Linux, or boot to Ubuntu Live, via PXE. To enable PXE boot the DHCP server has to be configured to point DHCP clients to a boot file upon request.

    Ubuntu 6.06 LTS Server PXE Setup

    1. Setup TFTP Server on another Ubuntu system
    1. apt-get install tftpd-hpa tftp-hpa
    2. nano -w /etc/default/tftpd-hpa
    1. RUN_DAEMON=”yes”
    2. OPTIONS=”-l -s /home/pxeuser/install/netboot”
    3. adduser pxeuser
    4. mkdir /media/pxecd
    5. mount -o loop /foo/bar/ubuntu-6.06-server-i386.iso /home/pxeuser

    2. Add PXE boot parameters to DHCP
    1. Login to your DHCP server as root
    2. nano -w /etc/dhcp/dhcpd.conf
    3. Scroll to the very bottom
    4. Enter the following:

    #PXE Install
    host pxeinstall {
    # Change the MAC address on the next line
    hardware ethernet 00:19:D1:39:8A:D0;
    # Change the IP address for the new system on the next line
    # Change the IP address to your TFTP Servers IP on the next line
    filename “pxelinux.0”;
    5. Press CTRL-X and save the changes
    6. /etc/init.d/dhcp restart
    3. In the BIOS of the new system configure PXE boot
    4. Reboot the new system

  3. Steve says:

    Great looking article but for a newbie to Linux…….

    How can I “Install grub onto a floppy” and where do I find Grub?

  4. J P Wielenga says:

    Does this still work with 6.10 xubuntu? (Edgy)
    Tried it (hard drive install that is) and two problems.

    1. The setup keeps asking for the CD (huh have not got any :-))
    2. mkdir -p /dev/loop – I am not allowed to ‘ln /dev/loop0 /dev/loop/0’ my iso is on a FAT32 partition and are you allowed to ln on a fat partition?

    And yes I use the alternative install CD image (Xubuntu Edgy)

  5. Daniel says:

    I would like to point out something for your guide about installing Ubuntu without a cdrom. You state that you will need 2 partitions but aren’t very specific. I created a 1gb fat32 partition using the Gparted livecd and created another 4gb ext3 partition for my install. This was totally unneccessary because the install has partitioning in it. So I needed to delete my ext3 partition so that I could create a swap and a / directory anyway.

    My suggestion would be to just tell people to make 1 fat32 partition large enough to hold the iso and the 2 boot files and then make sure there is unallocated space open for a swap if needed and the / partition. Tell them depending on where they want to move that 1gb of space after the install is done will determine the best place to create it. If wanting to grow windows, then put it immediately after windows (hda2). If wanted to grow Linux after the install, then it’d be better to create the fat32 partition at the end of the drive.

    Also, I have gotten into a huge disaster and no fault of your guide but I would like to inform you so maybe you can inform others to prevent others from having to go thru what I am going thru.

    After the install of Edgy Xubuntu. I went into Win2000 to check on it and it was fine. It showed me that 1gb fat32 partition was E and I realized I didn’t want it anymore. It looked like this:

    hda2=1gb fat32 for iso etc etc

    Gparted was able to do it without losing my data but it took forever since it had to grow it forward which I believe is liking taking all the data and moving it and then resizing it. Well needless to say that after I deleted that fat32 partition and swap, I made a new swap and added the remaining size to my ext3 partition. I made sure my menu.lst and fstab called for the correct partitions.

    Then when I went back into Win2000 it took forever to load. I clicked on the mycomputer icon and it just sat there frozen. I think it was choking on either my swap partition or my ext3 partition OR somehow maybe that old fat32 that used to be defined as E? I don’t know what the issue is and it’s alright because it’s a fresh install so I can just redo it. I thought I’d let you know my experience so you could maybe inform others.

    Thank you so much for the guide because without I was about to give up on Ubuntu and go with Puppy since that boots and runs the livecd fine. The only reason I couldn’t use a cd with this computer is because no matter what I couldn’t get it to finish reading the cd. It would fail without a doubt and I tried a million times. Here’s a link to my Ubunut forum post (, thread #39 it’s in the wubi forum because I was about to try that but I didn’t want Fiesty.

    Thanks again though, I would like to know how that loop thing works and what that’s really doing?

  6. Olivier Berger says:

    Note that you may need to kill the in.tftpd process before issueing a kill -HUP on inetd to be sure that the modifications to your inetd.conf atftpd command line are taken into account.

  7. DAM says:

    Thank you fro this guide. First time I read I understood nothing. Then I managed to boot a linux distro on my old computer (puppy linux) and I learned enough to read your guide.
    I would like to know,

    I’m downloading Xubuntu 7.04, so I will have to download vmlinuz & initrd.gz from ubuntu 7.04, from the hd-media, No ? or I have to download from other version…

  8. sam says:

    Try UNetbootin
    looks very easy and promising

    does net install for many distros or offline install, via either Windows, Linux or USB.


    Reply to DAM – you would need vmlinuz & initrd.gz from hd-media, also you must use the xxxx.alternative.iso

  9. Matt says:

    Great guide. I apprechate you’re writing it. I’m wondering through, what’s the difference between the Alternative ISO files and a more traditional CD install? Thanks again!

  10. mniyas says:


    Very happy to know that even without a CDROM i can install linux, on my laptop..
    I downloaded the ISO-md5 verified-, initrd.gz and vmlinuz files to my second drive,of 8GB, and stored in a folder named boot…

    But how to install grub onto that partition? I m struck up there…pls any body can help me..

    Thanks in advance..

  11. Timothy says:

    Hi have an old fujitsu stylistic 3400 with no Floppy, no CD-rom, and no usb boot support, I want to install ubuntu 6.10 on it. I had copy the windows 98 boot files in my hard drive, so my questions is,


  12. Renan says:

    I was trying to do “ln /dev/loop0 /dev/loop/0” but its returns that /dev/loop0 doesnt exists. What can I do for works?

  13. Wimpy says:

    the link for vmlinuz and initrd.gz has expired
    just thought i’ld let you know

  14. admin says:


    I have update the link with latest one

  15. tom says:

    nice guide- i actually already installed ubuntu thru wubi, but have an empty partition on my laptop that i want 2 put it on2, so i was actually looking 4 how 2 do that… i read somewhere that it’s pretty simple- that an installer is included in what i now have on my pc- can u tell me?

  16. Roger says:

    I don’t understand Option 3 above. When I click on “this” to read about Wubi, most of the guide is about burning a CD, but I thought this guide was intended to install Ubuntu WITHOUT a CD ????

  17. Anders Sjölander says:


    Just wanted to let you know that there is actually a major problem with this guide and Intrepid. If you have any partitions mounted during the installation process, the partitioning won’t work and no hard disk information will display on the partitioning section of the installation program. This is a known bug ( and the workaround is to go to console 2 and unmount all drives before running the partitioning. Not being able to have any partitions mounted makes it hard to install from a hard drive. 🙂

  18. Matey says:

    Can some one please tell me how I could re-install Ubuntu from the CDROM which has been copied to a folder without having to Boot from it?

    I am trying to Re-Install Feisty 7.04 bcs of all the errors and problems I currently have.

    But I dont see any setup or install files in the CDROM .(I’m new to this)
    I copied the whole CD into /media/cdrom trying to fool the system into seeing it as CDROM drive (apt-get wont work and if I use -f it keeps asking for the original CD)?
    So… is there any way I could re-install Ubuntu without booting off the CR ROM?

    If you’re wondering why?..
    It is because the problem OS is a virtual machine.(used XEN) the host server is running fine and is running 3 other xen guests,
    I shut this xen machine off via xm shutdown command, then mounted it then I chroot the mounted OS (the 1 with problem) and am trying to reinstall so after I umount it and bring up its image, the thing would run OK.
    Right now too many weird problems ?!
    I also edited the files sources.list under etc/apt and /var/lib/apt/ to no avail, made things worse.

    Thanks for any advice.

  19. Matey says:

    19- Anders Sjölander Says:
    January 14th, 2009 at 12:38 am
    Oh I see, I guess it makes sense to unmount,because you can’t be on the OS using it and then rebuild/change it too!

    BTW for those who still run Feisty 7.04, you have to insert these lines into your file, /etc/apt/SOURCES.LIST (of course not in caps). The existing lines refer to some URL which do not exist any more!

    deb feisty main restricted universe multiverse
    deb feisty-updates main restricted universe multiverse
    deb feisty-security main restricted universe multiverse

  20. C2easy says:

    just google wubi much more easy 🙂

  21. Ken says:

    I haven’t usec grub before but all the bootable floppies with grub on it fail when I have to cntrl-alt-f2 then do mkdir… That
    command is not recognized from the “grub” command line. I’m thinking the grubs i’m using are not the same as the grubs you’re talking about. You really should put a link to a grub floppy in this article.

  22. Ken says:

    Actually, mkdir is not in the Grub specification. When “solution 1” says “Now you need to Install grub onto either a floppy…” do they mean that somehow there’s supposed to be a minimalist linux os on there as well? What am I missing?

  23. ken says:

    Just for the sake of the record, I discovered that the kernel line wasn’t working because I needed to change either or both
    1)prefix /boot/vmlinuz…path with (hd0,0) ie “kernel (hd*,*)/boot/vmlinuz vga=”… and in the same line 2)change root=/dev/rd/0 to “root/dev/ram0” and keep the rw -.

    I also changed the initrd line to the same style: “initrd (hd*,*)/boot/initrd.gz”.

    –I DID have the inital root (hd*,*) line in menu.lst, btw–

    Of these three changes, I am not sure which were required changes, but clearly at least one of them was.

    Then all kinds of neat stuff happened but when it failed to find a file, it was a “kernel module” — the install heading was ‘search drives for iso files’ or something similar. But getting into terminal 2 and doing the mkdir and ln commands as specified in the original post in this thread didn’t do the trick–I got back into terminal 1, selected scan for (kernel or iso–i can’t remember) and it STILL didn’t find it.

    Possible problems: there was an error in modprobe -? y-something which was supposed to scan the system hardware, but it eventually loaded

    -my iso is 8.10-alternate, and that, as of this writing, is the very newest release–my other two files might not match.

    -Finally, along those same lines, the program mounted /dev/loop0 to /CDROM, and mounted all the iso files (or so it would appear) into this directory. There was a vmlinuz file in this hierarchy, but it was 2.1M, rather than the 1.8M that I put in the boot directory with the 8.10 iso on my hard drive. The installer error message seemed to indicate that a kernel version mismatch might have been the problem. Possibly it was.

    Detail in these kinds of instructions, as long as it is exhaustively clear, is usually necessary. I think they might have explained that the terminals would be part of a mini-linux that grub boots to ramdisk, and not grub consoles. That way I woud have known that my problem was that the basic menu.lst script wasn’t executing properly. Of course, now that I know what those files were basically and what those lines did, basically, it seems obvious.

  24. ken says:

    Ok so I had corrupted versions of the iso’s. Both for 8.1 and 7.1 (see my post on the list linked to in the instructions above).

    I discovered this not by md5sums.exe, which I thought I had done on these versions of the iso’s I tried, but with the installation menu’s check cd option. Kernel parts of the install package was corrupt.

    I just succeeded with 8.04.1. I took care not to do *anything* while the file was downloading. So for the one person who conceivably might have the same problem in the future, I hope this helped.


    ps and much thanks to the sysop poster–this was about the only rout I could go.

  25. Marc says:

    Why is this so complicated? Can’t there be a tool like Wubi, or perhaps part of Wubi, that takes care of this for you and actually does a FULL installation from the hard drive or other media? I gave up on trying to find a way to convert my previous Wubi experiment to a full Kubuntu installation that didn’t rely on a hijacked Windows NTFS volume. It sounds simple enough… But I feel that there ought to be a GUI tool for this, as it’s essentially just Wubi but with the benefits of a full installation. And whenever I try UNetbootin, the OS boot splash gets appears malformed (with two progress bars, usually) and freezes…

  26. Marc says:

    And yes, I know about lubi…

  27. mike says:

    ok, so i have a 1gb install fat32 partition, a 28gb winxp ntfs partition, and grub working from the ntfs partition. when i try to install from hd(o,1) it says it cant mount it. I thought maybe i had the wrong partition so i made new entries to menu.lst installubuntu1, installubuntu2, etc. etc. each with different partition addresses (hd(0,1)) (hd(0,2)……etc. i think i had it right. hd(0,0) is ntfs, and hd(0,1) wont mount. all others dont exist. so, anyway. what do i do?

  28. Matey says:

    I usually hit escape on the menu at the boot up and then hit e to edit the lines and then try different things, like you said hd0,0 usually works and it is the only partition that works for me,
    I have seen menu.lst file change for weird reasons and changes the hd0,0 to hd0,1 or 2 etc and then it wont boot at all.
    I used to have another hard drive with xp on it. it was hd1,4 !?

  29. Henrique says:

    I’m not sure if this has been solved, but I have the same problem.

    When installing 8.04.1 server LTS from a USB stick on a brand new machine that
    does not have a CDROM, the installation fails at CDROM detection.


    Get a shell (ALT+F2) and enter:

    $ mount -t vfat /cdrom

    and the installation will continue. In my case, it stopped again saying that the
    cdrom could not be read properly. Looking at the output on the ALT+F4 screen,
    there was a message like:


    was not found… Serious bug… There ain’t no ‘stable’ directory, but only one
    called ‘hardy’… Tried to link hardy->stable, but it did not work (vfat file system).
    So I just copied the entire tree:

    $ cp -pR /cdrom/dists/hardy /cdrom/dists/stable

    And the installation continues smoothly ’till the end.

Leave a Reply

Your email address will not be published. Required fields are marked *