全自動安裝linux作業系統(CentOS)

來源:互聯網
上載者:User

全自動安裝linux作業系統(CentOS) 2011-07-16 11:15:39

標籤:linux

pxe
CentOS
自動
休閑原創作品,允許轉載,轉載時請務必以超連結形式標明文章
原始出處 、作者資訊和本聲明。否則將追究法律責任。http://shubao.blog.51cto.com/401810/612987

 用戶端網卡在主機啟動初始化時通過網卡內建的PXE晶片啟動DHCP進程向server擷取ip地址,網卡擷取到ip地址後,server會提供給 client一個下載bootloader的指令,就是dhcp伺服器中dhcpd.conf設定檔中filename這個選項。   一:過程思路:(建議先跳過文字按照安裝步驟邊安裝邊看思路)  1:用戶端網卡在主機啟動初始化時通過網卡內建的PXE晶片啟動DHCP進程向server擷取ip地址,網卡擷取到ip地址後,server會提供給client一個下載bootloader的指令,就是dhcp伺服器中dhcpd.conf設定檔中filename這個選項。  2:網卡PXE晶片中已經包含了tftp client程式,擷取到ip地址後,網卡會啟動tftp服務去向tftp server請求傳輸這個bootloader檔案PXElinux.0。當Bootloader載入後我們可以看到主機螢幕上有資訊顯示,而這個畫面就 是我們在用光碟機裝linux的時候看到的第一個畫面。畫面提示選擇圖形介面安裝還是linux text字元介面安裝等資訊。如果在server端的tftpboot目錄下只有這個檔案,那麼客戶機會一直停留在boot這個地方,因為沒有default這個bootloader設定檔告訴機器下一步載入哪個系統核心,default設定檔的作用是告訴主機從哪裡去載入作業系統核心,這個時候如果我們按照正常光碟裝機時會看到提示:輸入斷行符號或者linux
text等資訊。Bootloader會去調用default設定檔中的作業系統核心檔案。  3:default 檔案配置好之後,接著就是指定核心檔案,這個在default檔案最後。就是vmlinuz,initrd.img *.msg 這幾個檔案。  4:到這一步載入成功後,系統就按照我們平常光碟裝系統看到的過程一模一樣了,選擇語言,滑鼠,鍵盤等,但因為有了KS這個自動安裝腳步,這些都不要我們手工去指定,全部會自動完成。  5:到這裡為止,也許有人會問,那我們從哪裡去載入安裝的鏡像。且慢,不是有個ks安裝指令碼嗎,就是這個指令碼裡面我們可以指定安裝鏡像在哪裡。  6:現在就考慮系統鏡像的傳輸,這裡我們選用linux特有的NFS網路檔案系統進行鏡像的傳輸。當然也可以用HTTP,ftp等方式。但為什麼我們直接使用tftp呢,因為這個協議在傳輸大檔案的時候效率非常低。
二:具體安裝過程:  說明:server IP:192.168.9.20 linux版本:centos 5.2   1:安裝tftp 伺服器 和dhcp伺服器:  root@centos CentOS]# rpm -qa |grep tftp  tftp-server-0.42-3.1.el5.centos  [root@centos CentOS]# rpm -qa |grep dhcp  dhcpv6-client-1.0.10-4.el5  dhcp-3.0.5-13.el5  目的是確保用戶端能夠正常擷取到ip地址和pxelinux.0檔案。   2:修改tftp參數:  [root@centos CentOS]# vi /etc/xinetd.d/tftp  ……………………………………………………………………………………  service tftp  {  socket_type = dgram  protocol = udp  wait = yes  user = root  server = /usr/sbin/in.tftpd  server_args = -s /tftpboot  disable = yes / 改成no /  per_source = 11  cps = 100 2  flags = IPv4  }  …………………………………………………………………………………………  /tftpboot 這個參數主要是指定tftp client 用戶端從伺服器的哪個目錄去載入bootloader的pxelinux.0檔案。 3:啟動tftp:  [root@centos CentOS]# service xinetd restart  Stopping xinetd: [FAILED]  Starting xinetd: [ OK ]   4:安裝dhcpd服務並配置啟動:  [root@centos ~]# vi /etc/dhcpd.conf  ddns-update-style
interim;  ignore client-updates;  boot bootp;  subnet 192.168.9.0 netmask 255.255.255.0  { /分配給client端的ip地址/  option routers 192.168.9.1;  option subnet-mask 255.255.255.0;  option domain-name "domain.org";  option domain-name-servers 202.96.128.66;  option time-offset
-18000;  range dynamic-bootp 192.168.99.2 192.168.9.100;  filename "/pxelinux.0"; /用來指定tftp根目錄的開機檔案實際是在/tftpboot目錄下。/  default-lease-time 21600;  max-lease-time 43200;  next-server 192.168.9.20;
/這一句是告訴client從哪裡載入bootloade/r  }   5: 建立檔案夾並拷貝pxelinux.0至/tftpboot目錄:  mkdir /tftpboot  cp /usr/lib/syslinux/pxelinux.0 /tftpboot /pxelinux.0server已經有/  midir /tftpboot/pxelinux.cfg  touch /tftpboot/pxelinux.cfg/default  default內容可以修改成如下:  …………………………………………………………………………  default autoinstall /預設引導autoinstall 這個label/  prompt 1  timeout 30 /預設自動載入的時間30s/  ………………………………  label autoinstall  kernel vmlinuz
/核心檔案名稱字/  append ks=nfs:192.168.9.20:/tftpboot/ks  initrd=initrd.img devfs=nomount ramdisk_size=16384 nofb  ……………………………………………………………………………………  append 這個選項是指定從哪個地方去讀取這個設定檔,用什麼方式載入。這裡使用nfs方式擷取KS這個檔案,當然也可以用FTP、HTTP等方式。ks 檔案,也就是linux自動載入安裝中各項參數,平常我們用光碟片安裝的時候需要選擇相應的語言,字型,鍵盤,滑鼠,分區,安裝的軟體包等待資訊,KS檔案 就是讓這些選擇自動化進行。 6:ks 檔案內容如下:可以根據自己實際環境變更。  …………………………………………………………………………  lang en_US  langsupport zh_CN en_US --default=en_US  keyboard us  mouse  timezone Asia/Shanghai  rootpw password /新裝系統的root密碼/  reboot  #upgrade  install  #harddrive --partition=sdb1
--dir=rhas  nfs --server=192.168.9.20
--dir=/media/cdrom /指定鏡像的位置/  text  bootloader --location=mbr  zerombr yes  clearpart --drives hda –initlabe /硬碟名字,根據實際環境更改/  part / --fstype ext3 --size 3072 --asprimary --ondisk had  part swap --size 256 --asprimary --ondisk hda  part /tmp --fstype ext2 --size 256 --ondisk hda  part /home --fstype ext3 --size 1 --grow --ondisk hda  auth --useshadow --enablemd5  #network --bootproto=dhcp
--device=eth0  network --device=eth0 --bootproto=static --  ip=192.168.9.210 --netmask=255.255.255.0
--  gateway=192.168.9.244
--nameserver=202.96.128.68 --  hostname=test.com /指定新裝系統的主機名稱和ip/  firewall --disabled  skipx  %packages –resolvedeps /指定新裝系統所需的包/  @ development-tools  @ admin-tools  @ system-tools  ………………………………………………………………………………  Kickstart 具體內容的研究可以參考redhat官方網站,根據實際環境修改KS的內容以適合自己的要求。  7: NFS伺服器的建立:  a:先確認NFS檔案系統在伺服器端已經安裝好。  [root@centos ~]# rpm -qa |grep nfs  nfs-utils-lib-1.0.8-7.2.z2  nfs-utils-1.0.9-33.el5  b:修改nfs參數檔案  [root@centos ~]# vi /etc/exports  ………………………………………………………………  /media/cdrom *(ro,sync)  …………………………………………………………………  這個的配置很簡單:/media/cdrom 將伺服器上這個目錄共用出去,這個目錄中就是安裝光碟片中的內容。  *(ro,sync) *指定所有的使用者(ro,sync)具有唯讀許可權,並且資料同步寫入硬碟。  c:啟動nfs服務:  root@centos ~]# service portmap start  [root@centos ~]# service nfs start  Starting NFS services: [ OK ]  Starting NFS quotas: [ OK ]  Starting NFS daemon:
[ OK ]  Starting NFS mountd: [ OK ]  [root@centos ~]# exportfs /確認nfs共用正常/  /media/cdrom  ……………………………………………………   8:client機器手動加電後,這是唯一需要手動的地方,呵呵,串連上網線與server在同一個網段,享受自動安裝幾十幾百台linux主機的過程吧。

本文出自 “叔寶 - 孫亮” 部落格,請務必保留此出處http://shubao.blog.51cto.com/401810/612987

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.