CentOS7 网络安装流程
一直就很想通過網(wǎng)絡(luò)安裝一下我鐘愛的linux系統(tǒng),老是搞不定,昨天花了一整天的時間來琢磨研究,功夫不負有心人,搞定啦!highing(妹的,怕用錯單詞 去查了下,妹的字典也騙人)我就要highing ^-^
怕以后忘了,特記作在此,廢話少說,開始吧!
先說下原理:首先開機從網(wǎng)絡(luò)啟動,它需要從網(wǎng)絡(luò)里面找dhcp服務(wù)器,dhcp服務(wù)器會給它分配ip地址、網(wǎng)關(guān)、dns、還有tftp服務(wù),然后在tftp服務(wù)器里面找啟動文件和啟動配置文件,啟動文件也就是所謂的bootloader,根據(jù)bootloader的配置文件,加載tftp服務(wù)器上的linux內(nèi)核(vmlinuz)和虛擬文件系統(tǒng)(initrd.img),內(nèi)核的配置參數(shù) 在bootloader配置文件里面已經(jīng)指定,這里我不明白內(nèi)核的配置參數(shù)為什么會由bootloader的配置文件提供,原來內(nèi)核是由bootloader加載的,所以參數(shù)是它給內(nèi)核提供,這樣一看也不難理解了。內(nèi)核參數(shù)里面,會包涵一個系統(tǒng)安裝源,我選擇nfs安裝源,內(nèi)核加載后,會加載安裝源的文件并運行,(其實安裝源上的文件就是一個linux安裝光盤上的文件)這樣其實相當于我們給系統(tǒng)運行了一張系統(tǒng)安裝光盤,下面你就可以安裝你的系統(tǒng)在你的機器上啦。
好了 說說具體怎么做的吧
一、安裝配置dhcp服務(wù)器 它能提供ip、網(wǎng)關(guān)、dns、tftp服務(wù)器的地址和tftp服務(wù)器上bootloader的名字。
1、安裝dhcp服務(wù)器sudo apt-get install isc-dhcp-server -y
2、配置dhcp服務(wù):配置文件為/etc/dhcp/dhcpd.conf,內(nèi)容如下
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;??? \\網(wǎng)關(guān)
? 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服務(wù)器地址
??????? filename "pxelinux/pxelinux.0";??? \\nfs服務(wù)器上bootloader文件路徑
???? ?
? }
}
?注意:\\(注釋)是我后面加上去的,真正的配置文件里面沒有\(zhòng)\后面的內(nèi)容,也包括\\(怕有些朋友不理解\\是注釋的意思,啰嗦一下),下面的配置文件都是這樣注釋的。
二、安裝配置tftp服務(wù)器? 它能提供bootloader文件和配置文件 linux內(nèi)核,linux虛擬文件系統(tǒng)文件。
1、安裝tftp服務(wù)器sudo apt-get install tftpd tftp -y
????其實這一步我把tftp客戶端也裝上了
2、配置tftp服務(wù)器
配置文件為/etc/xinetd.d/tftp
內(nèi)容如下:
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服務(wù)里是否關(guān)閉tftp服務(wù) no即為開
}
3、放置相應(yīng)的文件在/tftpboot目錄下
????3.1/tftpboot/pxelinux目錄下文件及目錄
initrd.img? pxelinux.0? pxelinux.cfg(此處為目錄)? vesamenu.c32? vmlinuz
分別說明各文件
????initrd.img(linux虛擬文件系統(tǒng)文件,linux安裝光盤isolinux目錄里面的)
????pxelinux.0(bootloader文件,網(wǎng)上下載的,各處找不到,云盤里面搜的)
????vesamenu.c32(bootloader調(diào)用的一個文件,我是安裝了syslinux,然后(dpkg -L syslinux| grep vesamenu.c32)搜索這個文件的安裝位置,copy過來的。)
????vmlinuz(linux內(nèi)核文件,linux安裝光盤isolinux目錄里面的)
????3.2添加pxelinux.0的配置文件
????????mkdir pxelinux.cfg
????????cd pxelinux.cfg
????????sudo vim default
????????default文件內(nèi)容如下:
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服務(wù)器的ip地址
保存退出
三、配置nfs服務(wù)器 提供nfs服務(wù),共享一張安裝光盤
????1、安裝nfs服務(wù)程序及客戶端程序sudo apt-get install nfs-kernel-server nfs-common -y
????2、配置nfs服務(wù) 配置文件為/etc/exports
????內(nèi)容如下:
????/nfs??? *(rw,sync,no_root_squash)
????3、創(chuàng)建/nfs目錄,并掛在CentOS.iso文件
?? ????????sudo? cd /;mkdir nfs
?????????? sudo? mount CentOS.iso /nfs
四、啟動三個服務(wù)
????sudo service isc-dhcp-server restart;sudo service nfs-kernel-server restart;sudo service xinetd restart
^-^大功搞成,去測試吧!
轉(zhuǎn)載于:https://blog.51cto.com/jerrywilson/1631638
總結(jié)
以上是生活随笔為你收集整理的CentOS7 网络安装流程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: **[权限控制] 利用CI钩子实现权限认
- 下一篇: 1. 初探MongoDB —— 介绍、安