网上有一些通过网络安装
linux
的文章,我觉得多数不够详尽,我是综合看了好几篇文章才搞定的,现在把整个过程详细地记录一下(提示一下:还没用
cd
装过
linux
的同学还是先从光盘安装学起吧
^_^
)。这个实验中我用的是
RHEL4
,其他版本也是可以的。
先来大概说一下网络安装
linux
的基本原理。我们是通过
PXE
(Pre-boot Execution Environment)
这个东东(其实是
intel
设计的一个协议)来进行安装的,它可以使计算机通过网络启动。
PXE
协议分为
server
和
client
端,
client
就是我们即将要装
linux
的裸机。
PXE
协议的成功运行需要解决
2
个问题:
1
.
既然通过网络传输,那计算机启动的时候它的
ip
是怎么来的?
2.
通过什么协议下载操作系统所需要的文件?
我们下面的配置安装的过程就是围绕上面
2
个问题展开的:
第一,
解决
ip
的问题。这个问题应该想得到,还没有系统怎么配
ip
啊,当然是要用到
dhcp
啦
~
;
第二,
解决传输的问题。这个你应该也想到了吧,对啦就是
ftp
,但是补充一下,还需要
tftp
这个东东。
好啦,废话不多讲啦,动手吧。注意我们的
dhcp
和
ftp
、
tftp
都是要安装在
server
端的,先来配置
server
端(基本上只要配置
server
就
ok
了):
上面这个就是
server
的
ip
:
192.168.0.110/255.255.255.0
,对了忘了告诉大家这个实验是在
vmware
上做的,我的虚拟网卡是设为
vmnet2
的(担心和局域网的
dhcp
搞混所以不用桥接!)
# vi /etc/dhcpd.conf
主要是把关于
PXE
的配置加到
dhcp
中就是了,
filename “pxelinix.0”
这一句是要在
ftp
中用到的文件之一,不懂没关系,先照着做就是了。启动服务留到后面一起来吧。
Dhcp
搞定后就轮到
tftp
啦,还是先来安装一下吧
~
# vi /etc/xinetd.d/tftp
这个
tftp
只要这样配就好了
(注意把原来的
disable=yes
该成
no
)
,简单吧
^_^
那个
ftp
就更简单了,等下直接启动
vsftp
(关于
vsftp
如有疑问可以看我的另一篇
vsftp
博客)就
ok
了。
你可能会问,就这样就好了吗,这样连上去就能得到我要的
linux
了吗?当然不是,我们的
linux
安装文件还没放上去呢!我们要做的就是把
RHEL4
四张光盘里的文件放到
tftp
目录上,动手吧
~
# mkdir /tftpboot/pxelinux.cfg
(创建
tftp
目录)
然后把
cd1
放入
cdrom
(注意,目前位置我们一直是在弄
server
)并
mount.
# mount /media/cdrom
# cp /media/cdrom/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg
# cp /media/cdrom/isolinux/*.msg /tftpboot/pxelinux.cfg
# mv /tftpboot/pxelinux.cfg/isolinux.cfg /tftpboot/pxelinux.cfg/default
(需要重命名)
# cp /usr/lib/syslinux/pxelinux.0 /tftpboot #
这个
pxelinux.0
就是
dhcp
中的那个
# cp /media/cdrom/p_w_picpaths/pxeboot/vmlinuz /tftpboot
# cp /media/cdrom/p_w_picpaths/pxeboot/initrd.img /tftpboot
以上做完后
/tftpboot
中的内容如下:
pxelinux.0 pxelinux.cfg vmlinuz initrd.img
pxelinux.0 pxelinux.cfg vmlinuz initrd.img
目录
pxelinux.cfg
中有文件
default
。
还需要把所有光盘的文件放到
ftp
目录上去
(要换
n
次
cd
,汗!
# mkdir /linuxsetup
# cp –R /media/cdrom/* /linuxsetup
(
此命令要跑四次,第
2
,
3
,
4
次提示是否覆盖请输入
y)
OK
,配置工作已经完成了,启动需要的服务吧
# /etc/init.d/dhcpd restart
# /etc/init.d/vsftpd restart
# /etc/init.d/xinetd restart
好了,
server
端的所有操作就完成了,到
client
端安装吧
^_^
注意
client
端的虚拟网卡要和
server
同类型,这里是
vmnet2
啦。
开机后进入
bios
(虚拟机用
F2
)选择启动顺序为
Network boot……
然后:
注意最后一行
linux askmethod
是需要我们输入的。然后按照它的提示一步一步下去喽
~
上面最好不要再选
dhcp
了,否则获取
hostname
会很慢(能不能获得到我还没验证
还记得前面创建的
ftp
目录吧,就是这里的
/linuxsetup
啦,注意不要用匿名
注意这个
ftpuser
要具有对
/linuxsetup
的读取权限哦
~
再后面的安装就和
cd
安装的过程类似了,只是没有图形桌面而已
^_^
把
grub
放到
mbr
(主引导扇区)内。
Ok
,这次是真的
ok
了,按提示设置
root
密码,
reboot
就可以玩弄你的
linux
了!
特别注意,有几个容易出错的地方:
1、
请先确认你的
server
和
client
是可以通讯的
2、
请确认你的防火墙设置好了(允许
dhcp
、
tftp
、
ftp
等等),或者是关闭了
3、
请注意你的
ftpuser
的权限,关于
vsftp
有疑问可以找另一篇
vsftp
的文章