Linux NFS系統(tǒng)的介紹和應用
Linux系統(tǒng)的使用在很多企業(yè)和公司都有所體現(xiàn)。那么對于Linux NFS的有關內容我們來做一下具體的介紹。Linux NFS系統(tǒng)對于電腦使用的玩家的常用軟件,然后我就學習及深入的研究Linux NFS系統(tǒng),在這里和大家一起探討Linux NFS系統(tǒng)的使用方法,希望對大家有用。
項目需求
在生產環(huán)境中我們有時候需要部署大量系統(tǒng)相同的服務器,當數(shù)量達到一定程度的時候,給每臺服務器專門單獨安裝是非常耗時且枯燥的重復勞動,所以網絡引導自動安裝是我們解決問題的重要方法。
項目分析
想要實現(xiàn)網絡無人職守的安裝,首先需要這些計算機之間網絡沒有故障并且都能從網絡引導,接下來我們需要一臺放置安裝源文件的服務器,由它提供DHCP、PXE、TFTP、Linux NFS、Kickstart、HTTP(可選)、DNS(可選)這些服務。 下面列出每個服務在這個項目中發(fā)揮的作用:
PXE:工作于C/S的網絡模式,支持工作站通過網絡從遠端服務器下載映像,并由此支持來自網絡的操作系統(tǒng)的啟動過程。(這里默認由我們客戶機的網卡提供了該服務)DHCP:由于客戶使用了PXE是基于TCP/IP協(xié)議的,所以必須分配IP地址給客戶機,而且這里還告訴了客戶機TFTP Server的位置。
TFTP:PXE引導的過程需要使用TFTP協(xié)議下載我們的kernel和initrd文件以及相關的啟動選擇配置文件菜單等,我們的服務器TFTP 服務提供了這兩個文件。有了這兩個文件,我們就能引導起系統(tǒng)來,通過網絡安裝(FTP,NFS等方式)。
Kickstart:Linux NFS系統(tǒng)安裝配置文件,當我們手動安裝的時候,每一步的配置最終會保存為一個ks文件,里面記錄了整個系統(tǒng)安裝需要的一些設置,其中包括安裝的包以及分區(qū)等等大量信息,當客戶機安裝系統(tǒng)的時候有了這個配置文件我們就能不必每次手動配置來完成安裝了。
Linux NFS:當系統(tǒng)引導起來開始安裝后,我們是使用了Linux NFS作為安裝來源(配置方便并且容易使用),只需要選擇在服務器上用Linux NFS共享出安裝文件目錄即可。DNS:如果我們想要每臺客戶機裝好以后都自動設置好了它的hostname,我們可以利用DNS的反向解析讓客戶機獲取自己的hostname。HTTP:這里為了多練習我們這里是使用了HTTP方式來提供了客戶機ks文件的獲取,如果你覺得麻煩,可以就使用NFS的方式。
實現(xiàn)過程
配置DHCP首先保證你的DHCP服務已經安裝,我們vim打開/etc/dhcpd.conf,在里面加入以下內容:allow bootp;allow booting; #其實這里不加也沒有關系,默認就有
- option domain-name "lenovo.cn";
- option domain-name-servers ns.lenovo.cn;
- default-lease-time 600; #默認租約時間
- max-lease-time 7200; #***租約時間
- next-server 192.168.0.32 ; #TFTP服務器地址,這里還是指定為本機
- filename "pxelinux.0"; #網卡ROM加載的一個配置文件
- subnet 192.168.0.0 netmask 255.255.255.0 {
- range 192.168.0.100 192.168.0.110; #分配IP的范圍
- option domain-name-servers 192.168.0.32; #DNS服務器地址
- option routers 192.168.0.1; #網關地址}
配置TFTP首先必須安裝TFTP服務: tftp.i386 0:0.49-1.fc10 tftp-server-0.49-1.fc10.i386由于會默認去到/tftpboot下找文件,所以我們發(fā)現(xiàn)沒有該目錄則創(chuàng)建之。首先我們復制一個文件:/usr/lib/syslinux/pxelinux.0 到 /tftpboot下面。
接下來,我們將光盤目錄下isolinux內的文件全部都復制到/ftpboot目錄下,并且修改兩個文件名(為了以后拓展功能,改名把各個系統(tǒng)內核區(qū)分開)。mv initrd.img initrd.fc10.img mv vmlinuz vmlinuz.fc10
然后,創(chuàng)建/tftpboot/pexlinux.cfg目錄,在下面創(chuàng)建default文件并編輯之:default bootlocal #默認從本地啟動
- prompt 1
- timeout 60 #超時時間
- label bootlocal
- localboot 0
- label fedora
kernel vmlinuz.fc10 #內核以及初始化鏡像append initrd=initrd.fc10.img ramdisk_size=65536 ks=http://192.168.0.32/fc10Install.ks #指定ks文件獲取路徑這里我做了個簡單的配置。
具體寫法可以去參照網上的wiki***,我們需要讓TFTP服務啟動,去修改/etc/xinetd.d/tftp這個文件,修改其中兩 項: disable = no #打開TFTP服務的啟用
server_args = -s /tftpboot #服務器的根目錄設為/tftpboot
配置NFS NFS在這里負責共享安裝需要的文件,需要共享下安裝文件的目錄(拷貝光盤下所有文件到那個目錄),配置如下:/FC10Install 192.168.0.0/24(ro,sync) 配置DNS(可選)在DNS里面對DHCP分配出去那個網段進行反向解析,具體內容參見DNS服務搭建部分。
制作ks文件在我們的系統(tǒng)安裝好以后在root的家目錄下有個anaconda-ks.cfg,我們安裝個配置工具system-config-kickstart。使用這個工具打開我們現(xiàn)有的anaconda-ks.cfg這個文件,進去后注意選中文字安裝界面和安裝好后自動重啟。
另外,如果安裝好后需要運行一些腳本可以修改Post-Installation部分。修改完后我們另存為一個文件,這里如果使用HTTP提供給客戶可保存到/var/www/html/ 目錄下,注意權限修改為644。這里是我的一個ks文件示例:
6.配置apache(可選)如果以前做過虛擬主機或者改過默認網站主目錄,改回去成默認狀態(tài)即可。
7.啟動各類服務:
- service dhcpd restart
- service xinetd restart
- service nfs restart
- service named restart
- service httpd restart
測試將客戶機重啟并設置BIOS從網絡啟動,觀察啟動過程??偨Y本文描述了如何搭建一個基于網絡的Linux系統(tǒng)自動安裝過程,在實際生產環(huán)境下比較使用而且能節(jié)省大量的人力資源,并且還能拓展開來搭建網絡的系統(tǒng)救援模式,甚至搭建從網絡啟動的Linux系統(tǒng)無盤工作站。