Linux 系統安裝

CentOS 系統安裝:
CentOS系統的安裝程序:anaconda
  anaconda的兩種安裝界面:
  tui:基於cureses的文本配置窗口式安裝界面
  gui:圖形化安裝界面linux

anaconda介紹
  Anaconda是RedHat、CentOS、Fedora等Linux的安裝管理程序。它能夠提供文本、圖形等安裝管理方式,並支持Kickstart等腳本提供自動安裝的功能。此外還支持許多啓動參數,熟悉這些參數可爲安裝帶來不少方便。該程序的功能是把位於光盤或其它源上的數據包,根據設置安裝到主機上。爲實現該定製安裝,它提供一個定製界面,能夠實現交互式界面供用戶選擇配置(如選擇語言、鍵盤、時區等信息)
  Anaconda的大部分模塊用Python編寫,有少量的載入模塊用C編寫vim

Centos的安裝過程啓動流程:
  bootload—>kernel(initramfs)—>rootfs—>anaconda
  以光盤啓動安裝爲例:光盤目錄下
  MBR:boot.cat 相似grub的stage 1,加載bootloader程序
  stage2:isolinux/isolinux.bin 運行該二進制程序提供配置菜單和命令配置接口,相似於grub的stage 2
  stage2配置文件:isolinux/isolinux.cfg
    配置文件中每一個對應的菜單選項:
    加載內核:isolinux/vmlinuz
    向內核傳遞參數:append initrd=initrd.img
  裝載根文件系統,並啓動anaconda網絡

  默認啓動gui界面:須要至少512MB內存空間才能啓動
  若須要指定啓動tui界面:向啓動內核傳遞一個"text"參數便可
    在菜單頁面按ESC鍵,進入命令行界面(boot:)輸入linux textapp

  上述內容通常位於引導設備中,例如引導光盤、u盤或網絡等;可是anacona程序及其安裝系統用到的程序包等能夠經過本地和網絡獲取如:本地光盤、本地硬盤、ftp server(yum repository)、http server(yum repository)、nfs server;
  若是想手動指定安裝源:
  在菜單頁面按ESC鍵,進入命令行界面(boot:)輸入linux method編輯器

  安裝引導選項:能夠在isolinux.cfg文件配置,也能夠在引導過程當中進入命令行界面指定(在菜單頁面按ESC鍵,進入命令行界面(boot:))
  text: 文本安裝方式
  method: 手動指定使用的安裝方法
  與網絡相關的引導選項:
  ip=IPADDR
  netmask=MASK
  gateway=GW
  dns=DNS_SERVER_IP
  ifname=NAME:MAC_ADDR 指明網卡名和MAC地址來肯定經過那個網卡通訊
  與遠程訪問功能相關的引導選項:
  vnc 經過vnc將本地安裝界面輸出到遠端進行安裝
  vncpassword='PASSWORD' 指定vnc的密碼
 指明kickstart文件的位置
  DVD drive: ks=cdrom:/PATH/TO/KICKSTART_FILE
  Hard drive: ks=hd:/device/drectory/KICKSTART_FILE
  HTTP server: ks=http://host:port/path/to/KICKSTART_FILE
  FTP server: ks=ftp://host:port/path/to/KICKSTART_FILE
  HTTPS server: ks=https://host:port/path/to/KICKSTART_FILE
  啓動緊急救援模式:
  rescue
  能夠查看官方文檔瞭解詳細參數:www.redhat.com/docs《Installation Guide》ide

anaconda的工做過程:Centos 6
  安裝前配置階段:
  安裝過程使用的語言
  鍵盤類型
  安裝目標存儲設備
    Basic storage:本地磁盤
    Specialized storage:iSCSI、SNA(專業存儲設備)
  設定主機名、配置網卡的網絡信息
  設定時區
  設定管理員密碼
  設定分區方式及MBR的安裝位置
    使用全部空間
   替換現有的Linux系統
   若是當前磁盤空間不夠用,收縮當前磁盤
   使用空閒空間
   自定義磁盤分區
  選定安裝類型以及要安裝的程序包
  安裝階段:
  在目標磁盤建立分區並執行格式化
  將選定的程序包安裝至目標位置
  安裝bootloader
  重啓系統進行安裝後的操做
  首次啓動:
  建立一個普通用戶
  設置日期和時間
  core dump
  iptables
  selinux工具

anaconda的配置方式:
  一、交互式配置方式
  二、經過讀取指定配置文件自動完成配置;按特定語法給出配置選項的kickstart文件
  kickstart文件的格式:命令段、程序包段、腳本段
  命令段:指明各類安裝前配置,如鍵盤類型等
    必選命令:
    authconfig 認證方式配置
    authconfig --useshadow --passalgo=sha512
    bootloader bootloader的安裝位置及相關配置
    bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
    keyboard 設置鍵盤類型
    lang    設置語言類型
    part    建立分區
    rootpw  指定root用戶的密碼
    timezone 指定時區post

    可選命令:
    install或upgrade 指定是安裝仍是升級
    text    經過文本安裝界面安裝
    network  網絡配置
    firewall iptables防火牆配置
    selinux  selinux配置
    halt    安裝完關機
    poweroff 安裝完斷電
    reboot  安裝完重啓
    repo    指定yum源信息
    url    指明安裝源地址路徑
    user   安裝完成後爲系統建立新用戶
            
  程序包段:指明要安裝的程序包組、程序包、不安裝的程序包等;
    %packages    程序包段開始標記
    @group_name  指定須要安裝的包組名字
    package_name  指定要安裝的包(包名稱中沒有版本號信息)
    -package_name 指定不須要安裝的包
    %end 程序包段結束標記
  腳本段:
    %pre  安裝前腳本;腳本的運行環境:運行於安裝介質上的微型Linux環境,由於系統還沒安裝完成
    %post 安裝後腳本;運行環境:安裝完成的系統;ui

建立kickstart文件的方式:
  一、直接手動編輯:依據某模板文件修改
  二、使用工具建立:system-config-kickstart (CentOS 6),工具也能夠依據某模板文件修改並生成新配置
  檢查ks文件的語法錯誤命令:ksvalidator
  ksvalidator /PATH/TO/KICKSTART_FILEurl

演示經過工具建立kickstart文件:
一、運行# system-config-kickstart &命令,會出現以下編輯界

二、咱們能夠在編輯器上進行編輯,選擇分區,網絡,等配置,也能夠導入模板文件(anaconda)在此基礎上修改配置,並建立文件名,保存至root下退出;須要注意這裏在分區時必定選擇清除主引導分區,刪除全部分區和初始化磁盤卷標,要否則在自動化安裝時會提醒你是否清除數據

三、查看root下生成的文件,並檢查語法錯誤,以下:
[root@CentOS6 ~]# ls
anaconda-ks.cfg bin Desktop Documents Downloads f1 ks.cfg Music Pictures Public Templates Videos
# 檢查語法錯誤,有錯誤會報錯
[root@CentOS6 ~]# ksvalidator ks.cfg

建立引導光盤:
  # mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 6.6 x86_64 boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/boot.iso myiso/
製做引導光盤演示:
一、複製文件和修改配置
[root@CentOS6 ~]# mkdir /tmp/myiso/
  # 複製光盤下的isolinux到/tmp下
[root@CentOS6 ~]# cp -a /misc/cd/isolinux/ /tmp/myiso/
[root@CentOS6 ~]# cd /tmp/myiso/isolinux/
[root@CentOS6 isolinux]# ll # 能夠看到,由於是光盤文件因此都是隻讀的
total 44436
-r--r--r-- 1 root root 2048 Sep 13 12:11 boot.cat
-r--r--r-- 1 root root 84 Sep 13 12:11 boot.msg
-r--r--r-- 1 root root 321 Sep 13 12:11 grub.conf
-r--r--r-- 1 root root 40688737 Sep 13 12:11 initrd.img # 文件驅動
-r--r--r-- 1 root root 24576 Sep 13 12:11 isolinux.bin
-r--r--r-- 1 root root 923 Sep 13 12:11 isolinux.cfg # 配置文件
-r--r--r-- 1 root root 183012 Sep 13 12:11 memtest
-r--r--r-- 1 root root 151230 Sep 13 12:11 splash.jpg # 爲背景圖
-r--r--r-- 1 root root 2215 Sep 13 12:11 TRANS.TBL
-r--r--r-- 1 root root 163728 Sep 13 12:11 vesamenu.c32
-r-xr-xr-x 1 root root 4264528 Sep 13 12:11 vmlinuz # 內核文件
# 添加寫權限,進行修改
[root@CentOS6 isolinux]# chmod u+w isolinux.cfg
[root@CentOS6 isolinux]# vim isolinux.cfg

# 注意必定退出myiso目錄,建立光盤鏡像,指明路徑等信息,並在/root下生成一個boot.iso鏡像
[root@CentOS6 tmp]# mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 6.8 x86_64 boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/boot.iso myiso/
# 查看生成的鏡像文件
[root@CentOS6 ~]# ls
anaconda-ks.cfg bin boot.iso Desktop Documents Downloads f1 Music myks.cfg Pictures Public Templates Videos
二、新建一個虛擬機,用建立好的光盤鏡像在虛擬機上從新引導安裝,以下:

三、成功安裝:

相關文章
相關標籤/搜索