系统自动化安装

本章内容

系统安装过程
配置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.178linux.com/47806

(0)
yywyyw
上一篇 2016-09-19
下一篇 2016-09-19

相关推荐

  • Linux进程管理

    进程管理     进程概念      内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、 安全功能等      Process: 运行中的程序的一个副本,是被载入内存的一个指令集合    &nb…

    Linux干货 2016-09-11
  • N21-天天-第九周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash awk -F: '$NF~"/sbin/nologin" {shell++} $NF!~&qu…

    Linux干货 2016-09-01
  • rpm包管理(二)

    查询查询库文件包查询[select-options][query-options]licdR常用的查询用法:卸载:二进制文件的恢复包效验使用rpm命令导入公钥(KEY文件)验证rpm包来源(光盘)的来源及完整性检查包安装后生成的文件,是否发生过变动RPM包管理器的数据库如果某个rpm相关内容被删除如果rpm命令的包被删除了信息库被删除了删除/usr/bin下…

    Linux干货 2016-09-19
  • Linux文本处理三剑客之一grep

            终于又到了一周一篇博客的日子 在这学习已经三周了,慢慢养成了写博客的好习惯,也慢慢的懂得了怎么写博客。这周给我印象最深刻的就是正则表达式,原本打算要写前几天所学的内容,但是昨天学到正则表达式让我有点懵,所以我今天会用一天的时间去给大家详细讲解正则表达式,争取让那些和我一样困解的人能够豁然开朗,也正是因为…

    2017-07-29
  • 通过FTP服务怒刷基础功法熟练度(匿名篇)

        Linux门派多种多样,那么本次就讲讲本人刷基本命令熟练度的方法。FTP原理什么的都不说了,网上有很多。直接上酸菜~学徒水平,大师勿笑。     本篇搭载的是FTP匿名用户访问,同时可以在服务器上进行创建删除等操作。危险系数有点点大,仅推荐用来刷命令熟练度使用。我用的Li…

    2017-07-25
  • PXE批量部署linux操作系统

       前言    在实际生产环境中,有时候我们会碰到为几十上百甚至上千台服务器安装Linux操作系统的需求,如果我们还是常规的去使用移动介质逐台安装,显然是一件低效又令人抓狂的事情,那要安装到何年何月啊?这对于我们追求高逼格形象的技术人员来讲当然是不可以接受的,为此,pxe模式批量部署系统应运而生。   &n…

    Linux干货 2015-05-23