This document describes how to install Ubuntu through your network without having to access to an existing linux TFTP / DHCP server. This method is especially useful for installing Ubuntu onto a machine that does not have removable drives.
You will need
- A computer running Microsoft Windows with a PXE capable network card.
- A computer on which you plan to install Ubuntu.
A router connected to the Internet or an Ethernet crossover cable (some modern network card support Crossover Detection & Auto-Correction (RTL8110SC) so you can use normal cable).
- The Ubuntu netboot image, download links are below.
Ubuntu 10.10 (Maverick Meerkat)
Ubuntu 10.04 (Lucid Lynx)
Ubuntu 9.10 (Karmic Koala)
Ubuntu 9.04 (Jaunty Jackalope)
Older versions of Ubuntu that are no longer supported are available for download at the Ubuntu website.
Prepare the Ubuntu installer
- On your Windows computer, make a folder called "tftp" on your C:\ drive.
Download tftpd32, extract the files and then copy tftpd32.exe to the "tftp" folder you just created.
- Extract the contents of the Ubuntu netboot image (netboot.tar.gz) and put them in a folder called "netboot"
Note: Winrar may give you some errors that it couldn't create some symbolic links, just ignore it.
- Copy the "netboot" folder to the "tftp" folder.
- Copy the file pxelinux.cfg from the netboot/ubuntu-installer/i386 or netboot/ubuntu-installer/amd64 and paste it in the "tftp" folder.
You may also have to copy pxelinux.0 to the netboot folder (instead of it's original home in '/netboot/ubuntu-installer/i386/'), if you get an error such as 'error 2 in system call CreateFile: The system cannot find the file specified' in TFTPD32's logs.
Prepare your Windows Computer
- Disable Windows Firewall.
- Open the Command Prompt
- Windows XP: Click Start then Run. Type cmd and press OK.
- Windows Vista/7: Click Start and type cmd. When cmd shows at the top of the Start Menu, right-click it and and click "Run as Administrator"
- Type ipconfig /all. Leave it open, you'll use the information later.
- Double-click on tftpd32.exe in the "tftp" folder. If you're using Windows Vista or Windows 7, right-click on it and choose Run as Administrator.
- Click the DHCP tab and fill in the boxes using the following information. The screenshot to the right shows a typical setup.
IP pool starting address: "Default gateway" in ipconfig +1 to the last number (e.g.192.168.2.1 would become 192.168.2.2).
Size of pool: 10 should suffice
Boot file: netboot\pxelinux.0
WINS/DNS Server: "Default gateway" in ipconfig.
Default router: "Default gateway" in ipconfig.
Mask: "Subnet mask" in ipconfig.
Domain name: leave blank.
Additional option: leave unchanged.
- Click "Save" then click "Settings", check the "PXE Compatibility" box and uncheck the "Ping address before assignation" box. Click OK.
Start the Installation
- Turn on the computer on which you want to install Ubuntu. In the BIOS settings, ensure it is set to boot from PXE or network first.
During setup when you choose your download location, if you select the United States, the installer may be unable to connect. You can work around this by selecting United Kingdom and then selecting "archive.ubuntu.com" when prompted.
The AMD64 image may install the "edubuntu-desktop" package rather than the "ubuntu-desktop" package. My fix was to install it with a server install, and then install the ubuntu-desktop package via apt-get afterwards.
Sometimes the install of the base system seems to fail, repeating the base system install without removing the packages resolves this.