一、环境
server: HP Athlon 64bit 3500+ | (running ietd,ISC dhcp,pxelinux,tftp-hpa)
client: DELL Latitude | D610 | (running iSCSI initiator Core)
kernel ver 2.6.14.5 , both server & client machines
二、Server Tasks:
Setup ISC DHCP
Setup Syslinux (for PXELinux) & TFTP-HPA
Setup TFTP-HPA
Setup iSCSI Target (ietd enterprise target)
- ) Update! you can skip the dhcp,syslinux,tftp steps by running this auto-configurator!
wget http://linux-iscsi.org/iscsiboot/server-scripts/pxeserver-setup.sh
三、Client Tasks:
Setup iSCSI initiator (iSCSI initiator Core)
Boot time
四、Setup ISC DHCP http://ftp.isc.org/isc/dhcp/dhcp-3.0.3.tar.gz
edit /etc/dhcp/dhcpd.conf
allow booting;
allow bootp;
option routers 192.168.1.6;
option subnet-mask 255.255.255.0;
ddns-update-style ad-hoc;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.111 192.168.1.115;
}
group {
next-server 192.168.1.6;
filename "pxelinux.0";
host laptop-eth0 {
hardware ethernet 00:00:00:00:00:00; (replace with your mac-address)
}
五、Setup PXELinux http://kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.11.tar.gz
1) untar syslinux, make && make install
2) untar tftp-hpa, make && make install
mkdir -p /tftproot/pxelinux.cfg
cp pxelinux.0 /tftproot
- ) build a kernel for your client and cp to /tftproot/
- ) make an initrd and cp to /tftproot
edit /tftproot/pxelinux.cfg/default
TIMEOUT 50
PROMPT 1
LABEL iscsiboot
KERNEL vmlinuzLaptop
APPEND root=/dev/ram initrd=bblinux25M
IPAPPEND 1
LABEL disk
LOCALBOOT 0
六、Setup TFTP-HPA http://www.kernel.org/pub/software/network/tftp/tftp-hpa-0.41.tar.gz
tar zxvf tftp-hpa-0.41.tar.gz
cd tftp-hpa-0.41
./configure
make
make install
- ) Start tftpd: /sbin/in.tftpd -l -v -s /tftproot
Setup iSCSI Target
1) download ietd
svn export svn://svn.berlios.de/iscsitarget/trunk
cd trunk && make KERNELSRC=/usr/src/linux && make KERNELSRC=/usr/src/linux install
2) make some test disk.
ie: dd if=/dev/zero of=/iscsi-diska bs=4096k count=1024
3) configure your new LUN in /etc/ietd.conf
Target laptop:diska
Lun 0 Path=/iscsi-diska,Type=fileio
Alias dell
DataPDUInOrder Yes
DataSequenceInOrder Yes
4) start ietd
/etc/init.d/iscsi-target start
(client side installation notes)
七、Setup iSCSI initiator Core
1) download core-iscsi-tools
http://kernel.org/pub/linux/utils/storage/iscsi/core-iscsi-tools-v3.3.tar.bz2
2) download core-iscsi
http://kernel.org/pub/linux/kernel/people/nab/iscsi-initiator-core/core-iscsi-v1.6.2.5.tar.bz2
3) compile core-iscsi
make initiator KERNEL_DIR=/usr/src/linux && make install
4) compile core-iscsi-tools
make install
iSCSI core stack is then loadable via iscsi_initiator_mod.ko,
core tools rely upon /etc/sysconfig/initiator
CHANNEL="0 2 eth0 192.168.55.6 3260 0"
and /etc/sysconfig/iscsi_device_maps
DEVICE="0 0 1 diska"
八、Boot time
1) Change bios on client to pxeboot before HD
2) at the pxelinux prompt, type iscsiboot (referring to label in pxelinux.cfg/default)
after successfully booting, do something like this:
/bin/mount / -o rw,remount
/bin/mount -t proc none /proc
/bin/mount -o sysfs /sys
/sbin/ifconfig eth0 192.168.1.92 255.255.255.0
cd /dev && /bin/mknod sdb1 b 8 17
NAME=$(/sbin/initiator-iname)
echo "InitiatorName=$NAME" > /etc/initiatorname.iscsi
/etc/rc.d/init.d/initiator start
- ) If this is a new installation, partition and create a file system, then copy minimal files to your new disk
/bin/fdisk /dev/sdb # (create partition)
/bin/mke2fs /dev/sdb1
/bin/mount /dev/sdb1 /laptop:diska
cp -dpRav /bin /sbin /dev /etc /var /lib /usr /tmp /laptop:diska
/bin/chroot /laptop:diska /bin/bash