192.168.1.1-路由器设置 | 192.168.0.1-无线路由器设置

自己动手完成CentOS7网络安装流程

发布时间:2015-04-13 10:30

一直就很想通过网络安装一下我钟爱的linux系统,老是搞不定,昨天花了一整天的时间来琢磨研究,功夫不负有心人,搞定啦!highing(妹的,怕用错单词 去查了下,妹的字典也骗人)我就要highing ^-^

怕以后忘了,特记作在此,废话少说,开始吧!

先说下原理:首先开机从网络启动,它需要从网络里面找dhcp服务器,dhcp服务器会给它分配ip地址、网关、dns、还有tftp服务,然后在tftp服务器里面找启动文件和启动配置文件,启动文件也就是所谓的bootloader,根据bootloader的配置文件,加载tftp服务器上的linux内核(vmlinuz)和虚拟文件系统(initrd.img),内核的配置参数 在bootloader配置文件里面已经指定,这里我不明白内核的配置参数为什么会由bootloader的配置文件提供,原来内核是由bootloader加载的,所以参数是它给内核提供,这样一看也不难理解了。内核参数里面,会包涵一个系统安装源,我选择nfs安装源,内核加载后,会加载安装源的文件并运行,(其实安装源上的文件就是一个linux安装光盘上的文件)这样其实相当于我们给系统运行了一张系统安装光盘,下面你就可以安装你的系统在你的机器上啦。

好了 说说具体怎么做的吧

一、安装配置dhcp服务器 它能提供ip地址、路由器、网关、dns、tftp服务器的地址和tftp服务器上bootloader的名字。

1、安装dhcp服务器sudo apt-get install isc-dhcp-server -y 
 

2、配置dhcp服务:配置文件为/etc/dhcp/dhcpd.conf,内容如下

option space pxelinux;
option pxelinux.magic code 208 = string;
option pxelinux.configfile code 209 = text;
option pxelinux.pathprefix code 210 = text;
option pxelinux.reboottime code 211 = unsigned integer 32;
option architecture-type code 93 = unsigned integer 16;
option domain-name-servers 202.100.64.68;   \\dns
subnet 192.168.1.0 netmask 255.255.255.0 {
  option routers 192.168.1.1;    \\网关
  range 192.168.1.100   192.168.1.110; \\分配地址池

  class "pxeclients" {


      match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
      next-server 192.168.1.53;  \\nfs服务器地址

        filename "pxelinux/pxelinux.0";    \\nfs服务器上bootloader文件路径
      
  }
}


 注意:\\(注释)是我后面加上去的,真正的配置文件里面没有\\后面的内容,也包括\\(怕有些朋友不理解\\是注释的意思,啰嗦一下),下面的配置文件都是这样注释的。


 

二、安装配置tftp服务器  它能提供bootloader文件和配置文件 linux内核,linux虚拟文件系统文件。
 

1、安装tftp服务器sudo apt-get install tftpd tftp -y 
    其实这一步我把tftp客户端也装上了

2、配置tftp服务器

配置文件为/etc/xinetd.d/tftp

内容如下:

service tftp
{
protocol        = udp
port            = 69
socket_type     = dgram
wait            = yes


user            = nobody
server          = /usr/sbin/in.tftpd
server_args     = /tftpboot\\tftp根目录
disable         = no \\xinet服务里是否关闭tftp服务 no即为开
}

3、放置相应的文件在/tftpboot目录下

    3.1/tftpboot/pxelinux目录下文件及目录

initrd.img  pxelinux.0  pxelinux.cfg(此处为目录)  vesamenu.c32  vmlinuz
 

分别说明各文件

    initrd.img(linux虚拟文件系统文件,linux安装光盘isolinux目录里面的)

    pxelinux.0(bootloader文件,网上下载的,各处找不到,云盘里面搜的)

    vesamenu.c32(bootloader调用的一个文件,我是安装了syslinux,然后(dpkg -L syslinux| grep vesamenu.c32)搜索这个文件的安装位置,copy过来的。)

    vmlinuz(linux内核文件,linux安装光盘isolinux目录里面的)

    3.2添加pxelinux.0的配置文件

        mkdir pxelinux.cfg

        cd pxelinux.cfg

        sudo vim default

        default文件内容如下:

default vesamenu.c32
prompt 1
timeout 600

label linux
  menu label Install system
  menu default


  kernel vmlinuz
  append initrd=initrd.img ip=dhcp inst.repo=nfs:192.168.1.53:/nfs \\指定了nfs服务器的ip地址

保存退出 http://www.luyouqiwang.com/anzhuang
 

三、配置nfs服务器 提供nfs服务,共享一张安装光盘
 

    1、安装nfs服务程序及客户端程序sudo apt-get install nfs-kernel-server nfs-common -y 
 

    2、配置nfs服务 配置文件为/etc/exports

    内容如下:

    /nfs    *(rw,sync,no_root_squash)

    3、创建/nfs目录,并挂在CentOS.iso文件

           sudo  cd /;mkdir nfs 
 

           sudo  mount CentOS.iso /nfs

四、启动三个服务

    sudo service isc-dhcp-server restart;sudo service nfs-kernel-server restart;sudo service xinetd restart 
 

^-^大功搞成,去测试吧!

关于我们 - RSS地图 - 最近更新 - 友情链接 - 网站地图 - 版权声明