UbuntuHelp:UbuntuLTSP/LTSPBootingClientsWithoutPxe
来自Ubuntu中文
点击翻译: |
English |
请不要直接编辑翻译本页,本页将定期与来源同步。 |
This page is specific to Ubuntu versions (?) |
If you find this information applicable to additional versions/releases, please edit this page and modify this header to reflect that. Please also include any necessary modifications for this information to apply to the additional versions.
Step 1
First identify what network interface card you have in your system. This can easily be done by booting an Ubuntu live cd on the client and running in a terminal. (low memory machines will need to either open the case and read the chip details on the nic, or try to pause the boot display (use the pause key) and read what the pci device ids are for your network card)
lspci -nn | grep Ethernet
I get the following output from various system I have:
(amd64)bob@bob-desktop:~$ lspci -nn | grep Ethernet 02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 01)
ubuntu@ubuntu:~$ lspci -nn | grep Ethernet 00:09.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10) 00:0b.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Your output will look similar.
Alternatively, we can boot a linux floppy disk and check what nic is in the client machine. You will need to have access to a linux machine, and a floppy disk. If you choose to do this then:
Download tomsrtbt at http://www.toms.net/rb/download.html (choose the .tar.gz
file)
.tar.gz
archive with: tar xvzf thefile.tar.gzcd to the tomsrtbt-<version> directory, have a good blank floppy and do:
sudo ./install.s
Boot the client with the fresh tomsrtbt floppy. login as: root and password: xxxx
then type dmesg | grep eth0
and note down the the network interface card details like: "RTL-8139" "3com 3C905b".
I get the following output from one of my systems
jamie@pinky:~$ dmesg | grep eth0 [ 92.150912] eth0: RealTek RTL8139 at 0xda00, 00:05:1c:0a:33:3e, IRQ 5 [ 92.150935] eth0: Identified 8139 chip type 'RTL-8139C' [ 194.558188] eth0: link up, 100Mbps, full-duplex, lpa 0x45E1 [ 205.533001] eth0: no IPv6 routers present
Your output will look similar.
Step 2
-
.zdsk
and.ziso
methods
Now we need to go to [1] to generate a boot image for the network interface.
You will need to select the correct network driver. A * means any value there will work.
Some common cards and their drivers are:
Realtek 8139 = rtl8139:*
Intel EtherExpress100 = eepro100:*
Now select a ROM format. There are several choices we can make here:
For a boot floppy disk image select .zdsk
, (To make a boot floppy)
For a boot cdrom image select .ziso
, (To make a boot cd)
For a boot hard disk partition image select .zhd
, (To boot direct from the hard disk - this will totally erase the disk)
For a boot LILO/GRUB/SYSLINUX image select .zlilo
, (To add to the grub bootlaoder menu)
Next select configure
.
Make sure PXELOADER_KEEP_ALL
is ticked, and it is a good idea to also tick POWERSAVE, ALLMULTI, MULTICAST_LEVEL1, MULTICAST_LEVEL2
, and DOWNLOAD_PROTO_TFTM
When done, click get rom
.
The .ziso
file is a standard iso image that you can burn to disk.
The .zdsk
file is a raw floppy image - on Linux you can copy it to a floppy like this:
dd if=etherboot.zdsk of=/dev/fd0
while on windows you can use rawwrite, or winimage
to write it to a floppy disk.
If you chose .zdsk
or .ziso
congratulations, you are finished. Insert your boot floppy or cd, and boot your clients.
Final Steps
-
.zhd
method
If you havn't already done so, download tomsrtbt at http://www.toms.net/rb/download.html (choose the .tar.gz
file)
.tar.gz
archive with: tar xvzf thefile.tar.gzcd to the tomsrtbt-<version> directory, have a good blank floppy and do:
sudo ./install.s
Boot the client with the fresh tomsrtbt floppy. login as: root and password: xxxx
type: dmesg | grep hd
and note the hd letter (usually hda on older pcs)
A test system that gave the following output
martin@mubuntu:~$ dmesg | grep hd [4294670.861000] ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb: DMA [4294670.861000] ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:DMA, hdd: DMA [4294671.125000] hda: ST380021A, ATA DISK drive [4294672.409000] hdc: HL-DT-ST DVDRAM GSA-4163B, ATAPI CD/DVD-ROM drive [4294674.766000] hda: max request size: 128KiB [4294674.767000] hda: 156301488 sectors (80026 MB) w/2048KiB Cache, CHS=65535/16 /63, UDMA(100) [4294674.767000] hda: cache flushes not supported [4294674.845000] hdc: ATAPI 40X DVD-ROM DVD-R-RAM CD-R/RW drive, 2048kB Cache
Your output will look similar. In the above example hda: ST380021A, ATA DISK drive is the hard disk. Now run
fdisk /dev/hda
You will see output similar to this:
Platte /dev/hda: 80.0 GByte, 80026361856 Byte 255 Köpfe, 63 Sektoren/Spuren, 9729 Zylinder Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes Gerät boot. Anfang Ende Blöcke Id System /dev/hda1 2 2407 19326195 f W95 Erw. (LBA) /dev/hda2 * 2408 4445 16370231+ 7 HPFS/NTFS /dev/hda3 4446 9541 40933620 83 Linux /dev/hda4 9542 9729 1510110 82 Linux Swap / Solaris /dev/hda5 2 915 7341673+ 7 HPFS/NTFS /dev/hda6 916 1246 2658726 b W95 FAT32 /dev/hda7 1247 2407 9325701 b W95 FAT32
Delete all existing partitions with the d key, then make a new one with the n key. (A small partition is fine). Activate the partition you created with the a key, then press w to write it to disk and exit.
Back on your linux machine, copy the downloaded .zhd
file (eg eb-5.4.1-3c90x.zhd
for an 3com 3C905) on a new dos format floppy. Now insert that floppy into the client machine, and mount it with the following command:
mount -t vfat /dev/fd0 /mnt
Now copy the network interface card boot file to the client with the following:
dd if=/mnt/eb-5.4.1-3c90x.zhd of=/dev/hda1
Now to finish up, type reboot
and remove the floppy. Your client will now boot from the hard disk. Congratulations, you are finished.