centos系統自動化安裝

本章內容

系統安裝過程
配置anaconda
自動化安裝系統

安裝程序

CentOS系統安裝

系統啟動流程:
bootloader-->kernel(initramfs)-->rootfs-->/sbin/init

anaconda: 系統安裝程序

tui: 基于圖形庫curses的文本窗口
gui:圖形窗口

安裝程序啟動過程

MBR:boot.cat
stage2: isolinux/isolinux.bin
    配置文件:isolinux/isolinux.cfg
    每個對應的菜單選項:
        加載內核:isolinuz/vmlinuz
        向內核傳遞參數:append initrd=initrd.img...
裝載根文件系統,并啟動anaconda
    默認啟動GUI接口
    若是顯式指定使用TUI接口:向內核傳遞text參數即可
        (1)按tab鍵,在后面增加text
        (2)按ESC鍵:boot: linuxtext

table 鍵 可以設置內核參數

anaconda工作過程

Anaconda安裝系統分成三個階段:

安裝前配置階段

    安裝過程使用的語言
    鍵盤類型
    安裝目標存儲設備
        Basic Storage:本地磁盤
        特殊設備:iSCSI
    設定主機名
    配置網絡接口
    時區
    管理員密碼
    設定分區方式及MBR的安裝位置
    創建一個普通用戶
    選定要安裝的程序包

安裝階段

在目標磁盤創建分區,執行格式化操作等
將選定的程序包安裝至目標位置
安裝bootloader和initramfs

首次啟動
iptables
selinux
core dump

firstboot 首次啟動運行的程序。

啟動安裝過程一般應位于引導設備;后續的anaconda及其安裝用到的程序包等可來自下面幾種方式:
本地光盤
本地硬盤
ftp server: yum repository
http server: yum repostory
nfsserver

如果想手動指定安裝源:
boot: linux askmethod

系統安裝

anaconda的配置方式:
    (1) 交互式配置方式
    (2) 通過讀取事先給定的配置文件自動完成配置;
        按特定語法給出的配置選項;
            kickstart文件

安裝boot引導選項:boot:
text: 文本安裝方式
askmethod: 手動指定使用的安裝方法
與網絡相關的引導選項:
    ip=IPADDR
    netmask=MASK
    gateway=GW
    dns=DNS_SERVER_IP
    ifname=NAME:MAC_ADDR
與遠程訪問功能相關的引導選項:
    vnc
    vncpassword='PASSWORD'

指明kickstart文件的位置:ks=
DVD drive: ks=cdrom:/PATH/TO/KICKSTART_FILE
Hard drive: ks=hd:device:/directory/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
NFS server:ks=nfs:host:/path/to/KICKSTART_FILE

啟動緊急救援模式:
rescue

官方文檔:《Installation Guide》

kickstart文件的格式

命令段:指明各種安裝前配置,如鍵盤類型等;
程序包段:指明要安裝的程序包組或程序包,不安裝的程序包等;
%packages
@group_name
package
-package
%end
腳本段:
%pre: 安裝前腳本
運行環境:運行于安裝介質上的微型Linux環境
%post: 安裝后腳本
運行環境:安裝完成的系統;

命令段中的命令:
必備命令
authconfig: 認證方式配置
authconfig–useshadow–passalgo=sha512
bootloader:bootloader的安裝位置及相關配置
bootloader –location=mbr–driveorder=sda–
append="crashkernel=auto rhgbquiet"
keyboard: 設定鍵盤類型
lang: 語言類型
part: 創建分區
rootpw: 指明root的密碼
timezone: 時區

可選命令

install OR upgrade
text: 文本安裝界面
network
firewall
selinux
halt
poweroff
reboot
repo
user:安裝完成后為系統創建新用戶
url: 指明安裝源
key –skip 跳過安裝號碼,適用于rhel版本

kickstart文件創建

創建kickstart文件的方式:
    (1) 直接手動編輯;
        依據某模板修改

    (2) 可使用創建工具:system-config-kickstart
        依據某模板修改并生成新配置;
        http://172.16.0.1/centos6.x86_64.cfg
檢查ks文件的語法錯誤:ksvalidator
    # ksvalidator/PATH/TO/KICKSTART_FILE
        圖形工具

制作引導光盤和U盤

創建引導光盤:

#cp/media/cdrom/isolinux/ /tmp/myiso/
#vi /tmp/myiso/isolinux/isolinux.cfg
    initrd=initrd.imgtext ks=cdrom:/myks.cfg
#cp/root/myks.cfg/tmp/myiso/
#cd /tmp
# 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.isomyiso/

創建U盤啟動盤

#ddif=/dev/sr0 of=/dev/sdb

創建U盤啟動盤

1 fdisk/dev/sdb–?t -?b 指定vfat
mkfs.vfat/dev/sdb1
2 mount /dev/sdb1 /mnt/usb
mkidr-p /mnt/usb/boot/grub
cp/misc/cd/images/pxeboot/vmlinuz/misc/cd/images/pxeboot/initrd/mnt/usb/boot
3 vi /mnt/usb/boot/grub/grub.conf
title wanglinux
root (hd0,0)
kernel /boot/vmlinuz
initrd/boot/initrd.imgks=http://172.16.0.1/centos6.x86_64.cfg
4 #grub

root (hd1,0)
kernel /
setup ( hd1)

原創文章,作者:yyw,如若轉載,請注明出處:http://www.www58058.com/47808

(1)
yywyyw
上一篇 2016-09-19 16:26
下一篇 2016-09-19 16:29

相關推薦

  • 正則表達式入門

    正則表達式入門 談到正則表達式,我們就得先了解一下POSIX。POSIX的全稱是Portable Operating System Interface foruniX,它由一系列規范構成,定義了UNIX,linux操作系統應當支持的功能,它定義了BRE(Basic Regular Expression,基本型正則表達式)和ERE(Extended Regul…

    2017-07-29
  • 馬哥教育網絡班21期+第15周課程練習

    1、總結sed和awk的詳細用法; sed 流編輯器,處理一行數據到模式空間(p),不匹配條件話就輸出源行,匹配條件且有處理話,就輸出處理過后的行和源行, 匹配條件且沒有處理動作的話,只輸出p空間的行;保持空間(h)用來存放模式空間的臨時處理結果 [root@centos ~]# sed ''&nb…

    Linux干貨 2016-08-30
  • n28 第二周作業

    n28 第二周作業

    Linux干貨 2017-12-09
  • 8.1_Linux管道的使用和用戶管理

    什么是管道? 管道就是把命令1的標準輸出發送給命令2的標準輸入,把命令2發的標準輸出發送給命令3的標準輸入。。。 最后一個命令會在當前shell進程的子shell進程中執行用來 管道實現了使用目的單一的小程序,組合小程序完成復雜的任務 管道需要配合其他命令的使用 tr命令的使用,常常用于配合管道     -c或–co…

    Linux干貨 2016-08-10
  • 馬哥教育網絡班第21期+第四周課程作業

    1. 復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 cp -r /etc/skel /home/tuser1 chmod –R 700 /home/tuser1 2. 編輯/etc/group文件,添加組hadoop。 echo &q…

    Linux干貨 2016-08-01
  • 發送mail的幾種方法

    mail,顧名思義就是郵件。在這兩天上課中,接觸了發送mail的一些用法,課下自己在網上又查詢補充了一下,總結出來,增加印像。 為了顯示清晰,首先我們分別使用兩個用戶在不同的終端下登錄,一個超級管理員root,一個是剛剛創建的用戶zhangsan,看下圖: 首先先來看一下發送mail用到什么選項:  -s<郵件主題>:指定郵件的主題; …

    2017-07-20
欧美性久久久久