1. 程式人生 > >kickstart自動應答指令碼生成及虛擬機器自動安裝

kickstart自動應答指令碼生成及虛擬機器自動安裝

KickStart是什麼,有什麼作用

KickStart是一種無人職守安裝方式。KickStart的工作原理是通過記錄典型的安裝過程中所需人工干預填寫的各種引數,並生成一個名為ks.cfg的檔案;在其後的安裝過程中(不只侷限於生成KickStart安裝檔案的機器)當出現要求填寫引數的情況時,安裝程式會首先去查詢KickStart生成的檔案,當找到合適的引數時,就採用找到的引數,當沒有找到合適的引數時,才需要安裝者手工干預。這樣,如果KickStart檔案涵蓋了安裝過程中出現的所有需要填寫的引數時,安裝者完全可以只告訴安裝程式從何處取ks.cfg檔案,然後去忙自己的事情。等安裝完畢,安裝程式會根據ks.cfg中設定的重啟選項來重啟系統,並結束安裝。

kickstart為rhel7.2虛擬機器安裝生成一個自動應答指令碼操作演示

1.首先我們需要安裝一下kickstart,這裡我們使用yum進行安裝

yum install system-config-kickstart -y

這裡寫圖片描述
因為我個人機器中已經安裝過了所以提示Nothing to do
接下來我們開啟kickstart

system-config-kickstart

2. kickstart基本配置,標記部分都為必選或者必填
這裡寫圖片描述

3. kickstart安裝方式,注意是執行一個全新的安裝,應為我個人的源掛載在httpd服務下的,所以選擇了HTTP,如果你的源也是這樣的請保證可以訪問


這裡寫圖片描述

4. Boot Loader Options,標記部分為正確選項,表示安裝一個新的引導
這裡寫圖片描述

5. Prations Information分割槽資訊,選項都選標記部分,後面需要新增三個分割槽,分別為boot、swap、和根/分割槽,前兩個可以指定大小,
這裡寫圖片描述

剩下的容量都分配給根就可以了
這裡寫圖片描述

6. 網路配置選擇DHCP方式,網路裝置的話填寫eth0就OK了,下面的(Authentication)認證不用選,預設就可以
這裡寫圖片描述

7. 防火牆的兩個配置都disable掉就可以了
這裡寫圖片描述

8. 防火牆以後的選項都可以不用配置,但是為了演示某些配置的效果,我在安裝完成之後配置了一個執行指令碼用來配置虛擬機器的yum源和阻止所有人的ssh連線


這裡寫圖片描述

9. 這樣基本的配置就沒問題了,我們需要把配置完的資訊儲存為ks.cfg檔案,並且放到可以被訪問到的服務或者目錄下,我的話就直接儲存在了httpd服務的根目錄下了
這裡寫圖片描述

到了這基本的應答指令碼就算是配置完成了,但是通過這種應答設定還不完善,我們需要為應答指令碼手動指定需要在安裝過程中安裝的軟體包

10. 為自動應答指令碼新增packages選項,下圖中的最後三行為手動在你的ks.cfg檔案中新增的,請注意格式!!!
這裡寫圖片描述

11.到這裡我們的自動應答指令碼就算完成了,我們來看一下最後的配置檔案吧,直接上配置文字

#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
keyboard 'us'
# Root password
rootpw --iscrypted $1$A3vhYrc8$mISo4Or6RZkMkWOusdEkE.
# System timezone
timezone Africa/Abidjan
# Use network installation
url --url="http://172.25.254.36/iso"
# System language
lang en_US
# Firewall configuration
firewall --disabled
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use text mode install
text
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx

# Network information
network  --bootproto=dhcp --device=eth0
# Reboot after installation
reboot
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --fstype="xfs" --size=200
part swap --fstype="swap" --size=500
part / --fstype="xfs" --grow --size=1

%post
cat >> /etc/yum.repos.d/yum.repo <<end
[halo]
name=haloooo
baseurl=http://172.25.254.36/iso
gpgcheck=0
end
echo sshd:ALL >>/etc/hosts.deny
%end
%packages
@base
%end

結合自動應答指令碼寫一個虛擬機器自動安裝程式

自動應答指令碼配置完了,我們就可以結合虛擬機器安裝指令碼來進行安裝了,以下就是我們的虛擬機器安裝指令碼結合自動應答指令碼實現虛擬機器的自動安裝
我們可以將其儲存在/bin/中,名字為virt-install.sh

#!/bin/bash
virt-install \
--name $* \
--vcpus 1 \
--ram 1024 \
--file /var/lib/libvirt/images/$*.qcow2 \
--file-size 8 \
--location http://172.25.254.36/iso \
--extra-args "ks=http://172.25.254.36/ks.cfg" &

執行虛擬機器安裝程式
[[email protected] ~] virt-install.sh

正常執行之後過程中截圖,已經開始安裝包了
這裡寫圖片描述

正常安裝過程,執行我們在自動應答指令碼中設定的安裝後腳本,左邊的劃線部分對應右邊設定的指令碼
這裡寫圖片描述
如果你很幸運順利完成了安裝,那麼恭喜你沒有學到多少,下面我將列出一些常見安裝過程中的錯誤狀態以及錯誤原因:

1.磁碟分割槽錯誤
這裡寫圖片描述

2. 引導問題
這裡寫圖片描述

3.unknow error,一般也是因為引導的問題,所以我們在選擇引導時一定要勾選所有選項的第一個,然後正確分割槽。

這裡寫圖片描述

出現引導或者磁碟問題,一般要檢查下面的選項是否正確
這裡寫圖片描述
4. 網路配置問題,要確認網路裝置和網路方式是否正確
這裡寫圖片描述

相關推薦

kickstart自動應答指令碼生成虛擬機器自動安裝

KickStart是什麼,有什麼作用 KickStart是一種無人職守安裝方式。KickStart的工作原理是通過記錄典型的安裝過程中所需人工干預填寫的各種引數,並生成一個名為ks.cfg的檔案;在其後的安裝過程中(不只侷限於生成KickStart安裝檔案的機

Linux虛擬機器圖形安裝kickstart指令碼安裝

虛擬機器安裝方法 下面我用redhat7.3的映象來做演示 真機linux系統 Operating System: Red Hat Enterprise Linux Server 7.2 (Mai

linux下怎麼編寫指令碼虛擬機器自動安裝系統和安裝軟體

1.我們需要手動配置好ckf檔案 cfk檔案是儲存了安裝虛擬機器的設定 用同樣的cfk檔案會安裝出一模一樣的虛擬機器 設定好yum源 mkdir /var/www/html/1建立一個共享的資料夾 mount /dev/loop0p1 /var/www/html/iso修

三、Java虛擬機器自動記憶體管理機制、物件建立記憶體分配

  1、物件是如何建立: 步驟:    (1)、虛擬機器遇到new <類名>的指令---->根據new的引數是否在常量池中定位一個類的符號引用    (2)、檢測該符號引用代表的類是否已經被載入、解析、和初始化。(如果沒有則

Linux運維入門~14.虛擬機器安裝使用

這篇算是舊篇新章,主要介紹虛擬機器映象的安裝方式及快照的生成 安裝虛擬機器 開啟虛擬機器管理器 選擇建立新的虛擬機器,如圖選擇本地安裝介質 瀏覽找到映象所在位置 預設選項即可 注意:要開圖形介面,至少記憶體768M,5G 完成,最基本的

Centos7網絡卡ens33不顯示靜態ip虛擬機器主機互ping不通

問題: 原本是ok的,然而我變更了一下虛擬機器的記憶體大小,ens33中的靜態ip就沒了。 過程: 真的是嘗試過n種方法,修改ens33配置,不勾選DHCP服務等等等。 遇到過service network restart一直fail,用了systemftl那三條命令還一直不

Linux基礎知識(虛擬機器安裝控制)

一、安裝虛擬機器: 方法一: 在真機輸入 virt-manager命令 彈出一個介面首先將desktop與server關閉 選右下角 Forward 在Broese…中選擇已經下載好的 rhel-server-7.2-x86_64-dvd.iso 安裝源,選好後按 Forward

Linux 虛擬機器自動安裝和配置

一、配置服務端 1.安裝kickstart [[email protected]~]# yum install -y system-config-kickstart.noarch2.圖形設定虛擬機器資訊 [[email protected] ~]# system-co

linux系統下指令碼虛擬機器安裝管理

本篇部落格主要涉及Linux 系統主機使用指令碼進行安裝,快照和重置虛擬機器,克服了映象法安裝虛擬機器繁瑣的步驟。 一.安裝虛擬機器 (一)普通指令碼安裝虛擬機器 指令碼如下: 指令碼解釋: virsh-install #安裝虛擬機器 --cdrom /home/

伺服器ubuntu18.04安裝虛擬機器安裝centos6.8系統---2(Linux遠端VNCserver的安裝桌面安裝

上面說到在Ubuntu18.04上安裝了VMware,怎麼啟動呢? 直接命令列敲:vmware 報錯:DISPLAY is not set, unable to open the VMware Workstation user interface. 這是因為我們

Linux---虛擬機器安裝CentOS的安裝

                          推薦書籍:鳥哥的Linux私房菜 基礎版本   一:VMware安裝過

二、Java虛擬機器自動記憶體管理機制、執行時資料區域深入瞭解

執行時資料區域:     (1)、程式計數器         a、定義:是一塊較小的記憶體空間,可以看作是當前執行緒所執行的位元組碼的行號指示器。         b、執行緒私有:因為多執行緒是通過執行緒輪流切換並且分配處理器執行時間的方式來實現的,任何時刻,        

《轉》QEMU-KVM建立虛擬機器自動指定IP的配置

在使用qemu建立虛擬機器的過程中是無法指定IP地址的,可是在實際應用中,我們是需要虛擬機器擁有IP地址的,並且不是人為去虛擬機器作業系統上配置。在qemu虛擬機器技術文件(http://qemu.weilnetz.de/qemu-doc.html#pcsys_005fm

虛擬機器安裝配置等

下載vmware   移除無用的       安裝前要檢查橋接模式是否使用的是正確的驅動、   安裝啟動要開啟網路連線   安裝成功後配置靜態固定IP 橋接模式網路配置 1、配置ip地址等資訊在/etc/sy

虛擬機器安裝ubuntu 16.04 遇到的問題解決辦法

虛擬機器中ubuntu系統無法全屏,只有中間一部分。輸入:xrandr再輸入:xrandr -s 1920x1080  (將螢幕解析度調製1920x1080尺寸)如果尺寸中沒有1920x1080這個尺寸,通過以下程式碼新增螢幕尺寸:cvt 1920 1080xrandr --

關於虛擬機器安裝CentOS7C++開發環境的搭建

       由於平時工作的環境就是在伺服器端的CentOS上進行C++的開發,所以週末閒來無事就在自己的電腦上安裝了虛擬機器,然後再虛擬機器上安裝的CentOS的作業系統。虛擬機器軟體用的是VMware workstation12版本的,安裝按照引導直接進行安裝即可,沒有

雲端計算之路-虛擬化環境搭建虛擬機器建立

1. 前言 在計算機技術中,虛擬化(Virtualization)是一種資源管理技術,它將計算機相關的各種資源(CPU、記憶體、磁碟、網路介面卡等)進行抽象、轉換後重新分配使用,大大增加了使用的靈活性。虛擬化有很多類別,包括硬體虛擬化、作業系統級虛擬化、應用虛擬化、服務

(轉)Java服務化系統線上應急和技術攻關,你必須擁有的那些應用層指令碼和Java虛擬機器命令

原文部落格:https://www.jianshu.com/p/46a120f9e5a3無論是技術開發人員還是架構設計人員都是在實踐中成長起來的,他們通過實踐進行總結,總結後把經驗昇華並再次應用到實踐中去,進一步提供生產效率。 本文介紹筆者在網際網路公司裡線上應急和技術攻關過程中積累的應用層指令碼和Java虛

如何使用指令碼批量建立虛擬機器(下)

  上篇文章我們介紹瞭如何使用VMware來克隆虛擬機器,克隆雖然能夠使我們避免了繁瑣的建立過程、大大簡化我們的操作,但在需要建立數量巨大的虛擬機器的情況下其步驟依然較多,顯然並不能滿足我們這種高效化

linux之在VMware虛擬機器安裝CentOS7作業系統,圖形化手動ip設定-------超級詳細的圖文教程

一:基礎 基本定義:虛擬機器相當於咱們用的計算機,CentOS7相當於這臺計算機的作業系統,且這臺計算機可安裝多個作業系統 1、虛擬機器版本: 2、Linux系統版本:CentOS-7-x86_64-DVD-1611.iso 3、物理機版本:Win 10,處理