Installing Fedora without a CDROM: my HOWTO

Kim Lux lux at diesel-research.com
Sun Nov 21 16:46:55 UTC 2004


Here is my HOWTO on installing Linux from a USB drive, ie without ISO
CDROMS.  It will work for your installation if you use a floppy boot
disk or USB key rather than a CDROM boot disk. 


Installing Linux from a USB drive.

Why: 

1) It is much faster.  A USB hard drive is very fast at transferring
data compared to a CDROM or a network. 

2) You can put a kickstart file on the hard drive and get all your
machines the same, quickly.

3) CDROMs are inherently a little bit troublesome, ie one scratch can
upset the whole install package.  You never get a CDROM read error with
a USB hard drive. 

4) No network connection to mess with. (verus installing from a NFS or
ftp server) 

5) Put auxillary files (special drivers, post setup install config,
etc.) on the USB drive.

6) You don't have to swap CDs !  This is especially nice when doing
package add-remove after the install.

7) You can keep your install notes, etc. all organized on the usb drive.
Everything you've ever needed to know about installs can be on your usb
install drive.

8) You don't have to burn CDs. (Which will eventually end up in the
landfill.) 

9) It works with any PC with a USB port. (USB1 works too, just slower.)

10) You don't have to have a cdrom on the target pc.  A floppy will work
with a floppy boot drive.

11) you don't have to test any CDROMS for media errors.  This is hugely
time consuming and should be done periodically on cds in heavy use/that
have not been used in a while.  All it takes is one scratch to wreck a
Linux install.  


For the record, I use a USB hard drive enclosure with a removable hard
drive rack in it.  This way I can mount any number of hard drives in the
USB enclosure and access them from Linux.  The Linux install drive is
one of several drives I use in it.  BTW: most USB-IDE enclosures will
NOT allow a removable hard drive drawer to be installed.  The space in
them is not long enough as most ide hard drive drawers are longer than a
standard IDE 5.25" device.

I have found one brand (Constar) that does, although it is a tight fit.
The full name is Constar model ST2512 in B2, F and C variants. (USB,
Firewire 400 and both, respectively.)  

I've only done one install from a USB hard drive, but it is my favorite
thus far and I've installed from ftp, nfs and cdrom. 


How:

1) download and copy the isos to a directory on the usb hard drive. I
think it can be any file system, ie FAT, FAT32, NTFS, etc, will work,
but I have only tested with ext3.  The isos need to be in a directory on
the device, not on the root directory of the device. (This is due to a
bug...)  I put mine in /iso, but any location will do.

The easiest way for me to download the isos onto the install drive is to
connect it to a machine connected to the internet and then ftp them
directly onto the install drive.  This way you don't have to have a
spare 3 GB sitting on the download computer.   

2) burn a boot disk for the install. Floppy or cdrom should work, I have
only tested with the cdrom. 

3) check the BIOS on the computer you are installing on.  Some computers
will allow booting from a USB storage device, in which case you could
put the boot image right on the USB hard drive.  I find that this is a
finicky option with some BIOSes, so I disable it and chose to boot from
the CDROM or floppy drive.  If the BIOS reliably found and booted the
USB device, it would be great as you wouldn't need a floppy or cdrom
drive in the machine.

Some machines will hang on boot with a USB storage device connected and
no valid IDE boot device.  Don't ask me why !  The solution here is to
boot without the USB storage device connected and then connect it later
(below).  

3) boot the cdrom as you would for a normal install.  I wouldn't bother
with media checking as this cdrom is only going to be used to start the
process. 

4) At the boot command prompt, connect your USB hard drive and wait a
few seconds for Linux to recognize the hot plug event and install the
driver.  After that, type "linux askmethod" at the prompt.  At this
point Linux will install a bunch of drivers.  You should see a graphical
"USB Storage Device" message appear briefly.  BTW: I don't think USB
hotplug was supported in pre 2.6 kernels. 

5) A screen will appear asking which media you'd like to use to install.
The options will be nfs, ftp, hard drive, local cdrom, etc.  Your USB
hard drive should be listed under the hard drives.  Remember that if you
installed the images onto an existing Linux drive, you probably put them
on the / partition which is typically the 3rd partition on the device.
Also remember that USB devices are typically scsi devices in Linux, thus
your isos are probably on /dev/sda3...   

Below that is a textbox requesting the directory with the isos.  I was
not able to leave this box blank or use / in it to represent the root
directory.  I had to put the isos in a directory and then put the
directory in the box, thus I entered /iso.  (My isos were thus
in /dev/sda3/iso)

6) Proceed as per a "normal" installation.

Other notes:

a) Linux will recognize a USB keyboard and mouse during installation.
Our servers are keyboardless.  I plug a wireless USB keyboard/mouse
combo into them when they need work.  It saves having keyboards and mice
cluttering the server area. (I do all normal administration via SSH.)  I
use a Logitech Duo wireless USB keyboard/mouse combo, but any should
work nicely.  BTW: be careful security wise with wireless USB keyboards.
An "open" USB receiver (ie one without a keyboard) within range of a
wireless keyboard may pick up the typing from the keyboard and use it on
the computer if a session is open.
   

b) The "server" installation selection will NOT install X Windows.  This
means that no graphical configuration can be done on the machine.  The
"personal workstation" installation will NOT install any development
tools meaning you can't build kernels or special packages.  I install
our servers with the base server package plus the development tools, X
Windows and a bit of KDE.  Why use graphical tools on a server ?  Well,
hard drive space is cheap compared to administration time and I find I
am more productive with a few graphical tools around.  If I am worried
about system resources I boot with init 3 rather than init 5. df -h  My
typical server install in FC3 with X windows, Postgress, Apache and KDE,
without spending any time being careful about what I install, is 2.2 GB.
(No Evolution, no Open Office, but a browser.  A lot of things are
configurable with a browser these days and it is handy to have internet
access when working on a problem.) You can set the default desktop
manager in /etc/sysconfig/desktop.  Change DESKTOP="GNOME"server to
DESKTOP="KDE". 

d) nano makes a great comand line text editor for those of use that
don't use emacs and vi enough to remember their commands. 

e) If your computer hangs when booting with a USB device attached, try
disabling "make USB available to DOS" in the BIOS.  It worked on one of
our machines.

f) My ideal computer cases have 2 USB ports on the front so that the
mouse/keyboard and USB hard drive (for maintenance) have a place to plug
in without going to the back of the machine or using a hub.

g) The next time you do an Add-Remove Applications (system-config-
packages from the command line) it will prompt you for CDs even though
you installed from a USB hard drive.  To make changes using the USB hard
drive instead of the CDs, start system-config-packages with --
isodir=/path/to/your/isos. 

h) Speed with USB1 versus USB2 versus CDROM.  With a USB1 connection
(hardware limited, not by Linux !) I get a download speed of about 1
MB/sec.  With a 16x CDROM drive, I get a download speed of about
1MB/sec.  However the seeks, ie getting one file from here, another from
there are much, much slower, thus the USB1 intstall is much faster than
the CDROM.  USB2 is much, much faster than either of these.  The
transfer speed will probably be limited by the speed of the hard drive,
but I have seen USB2 read speeds up to 20MB/Sec.

i) The best way to download ISOs is to start the process before you go
to bed at night.  Now that you aren't using CDROMs, you can download the
dvd image, which is just one file.  Some mirrors won't let you have more
than a certain number of processes open.  Ie if you start 4 downloads,
one for each iso, it might kill 2 of them. 




-- 
Kim Lux (Mr.)  Diesel Research Inc




More information about the users mailing list