linux系统启动及kickstart

1、简述linux操作系统启动流程
2、简述grub启动引导程序配置及命令行接口详解
3、实现kickstart文件制作与光盘镜像制作

1、简述linux操作系统启动流程

当电脑开机时内存是空的,开机时BIOS会将RAM中的程序映射到内存中来(BIOS中是存储在RAM中的一段程序代码,这段代码可以实现电脑自身状况的检查,BIOS中设置了如何检查健康状况),自检完成没有问题后会根据BIOS中的启动顺序去挨个找启动设备的MBR,如果设备的MBR坏了,系统会报错,无法启动,只有在第一个设备没有MBR时才会找第二个设备,第二个如果是硬盘的话,就会读取硬盘的MBR,因为硬盘的MBR开始是bootloader,所以BIOS这段程序就会把bootloader装载到内存,这段bootloader会再读取硬盘MBR中的分区表,分区表大小64bytes。之后会根据我们的配置加载分区上的操作系统,因此这段bootloader一定要能读取分区表,如果没有分区表就找不到操作系统了。bootloader加载进内存后,BIOS就退出了,退出前会把执行的指令告诉CPU。bootloader根据我们先的操作系统运行,会找到操作系统那个分区上操作系统的内核,找到后就会将内核加载进内存,内核读进内存后会先解压缩,之后bootloader将管理权交给内核,于是内核开始启动自身,之后根据电脑能找到文件系统在什么地方,以及要启动的程序,最终启动完成。

2、简述grub启动引导程序配置及命令行接口详解

grub工作阶段
1st: mbr, bootloader加载到mbr
1.5st: 驱动,mbr之后的扇区,提供stage2在的分区的文件系统驱动;
2st: boot目录所在分区
grub功用:
(1) 提供菜单、并提供交互式接口
e: 编辑模式,用于编辑菜单;
c: 命令模式,交互式接口;
(2) 加载用户选择的内核或操作系统
允许传递参数给内核
可隐藏此菜单
(3) 为菜单提供了保护机制
为编辑菜单进行认证
为启用内核或操作系统进行认证
配置文件:/boot/grub/grub.conf
配置项:
default=#: 设定默认启动的菜单项;落单项(title)编号从0开始;
timeout=#:指定菜单项等待选项选择的时长;
splashimage=(hd#,#)/PATH/TO/XPM_PIC_FILE:指明菜单背景图片文件路径;
hiddenmenu:隐藏菜单;
password [–md5] STRING: 菜单编辑认证;
title TITLE:定义菜单项“标题”, 可出现多次;
root (hd#,#):grub查找stage2及kernel文件所在设备分区;为grub的“根”;
kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:启动的内核
initrd /PATH/TO/INITRAMFS_FILE: 内核匹配的ramfs文件;
password [–md5] STRING: 启动选定的内核或操作系统时进行认证;
进入单用户模式:
(1) 编辑grub菜单(选定要编辑的title,而后使用e命令);
(2) 在选定的kernel后附加
1, s, S或single都可以;
(3) 在kernel所在行,键入“b”命令;
grub的命令行接口
help: 获取帮助列表
help KEYWORD: 详细帮助信息
find (hd#,#)/PATH/TO/SOMEFILE:
root (hd#,#)
kernel /PATH/TO/KERNEL_FILE: 设定本次启动时用到的内核文件;额外还可以添加许多内核支持使用的cmdline参数;
例如:init=/path/to/init, selinux=0
initrd /PATH/TO/INITRAMFS_FILE: 设定为选定的内核提供额外文件的ramdisk;
boot: 引导启动选定的内核;
手动在grub命令行接口启动系统:
grub> root (hd#,#)
grub> kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE
grub> initrd /initramfs-VERSION-RELEASE.img
grub> boot
安装grub:
(1) grub-install
grub-install –root-directory=ROOT /dev/DISK
(2) grub
grub> root (hd#,#)
grub> setup (hd#)

3、实现kickstart文件制作与光盘镜像制作

通过anaconda自动生成的ks配置文件可以实现自动安装操作系统,在配置文件中可以定义安装时的其本信息,如语言,管理员密码,时区,网络,磁盘分区,防火墙,需要安装的软件,系统的安装源,安装前脚本,安装后脚本等。定义好之后要生成ks.cfg配置文件,之后可将配置文件放于网络上,通过系统镜像引导启动,并指定ip地址,掩码,ks文件所在网络路径,让主机可以通过网络加载配置文件实现自动安装。或者可以通过将ks配置文件与isolinux目录打包成一个启动镜像(isolinux目录是系统镜像中的一个目录,是一个小的系统,可以实现引导启动),通过此启动镜像来启动加载ks配置文件,并按照ks配置文件中的系统安装源(这个安装源是自定义的,可以是本地网络中的源,也可以是互联网上的源)实现自动安装

测试安装使用CentOS6.6系统,测试6.5时总在进入安装界面后提示不支持CPU。但6.6版本也会提示不支持磁盘。取消使用之前所用的安装后自动生成的ks.cfg文件后,自建ks.cfg文件可以安装。
1.准备centos6.6,将镜像挂载到/var/www/html/media目录下,为的是可以在安装httpd后访问此目录
2.安装system-config-kickstart,X窗口系统,桌面,桌面开发这四个软件,因为安装后三个软件才能打开kickstart的图形界面。
3.在打开kickstart图形界面后要注意第二项安装方法要写明光盘挂载的目录,这里用了HTTP方法,软件地址192.168.1.6,目录/media/,(不知道不能安装与media后的斜线是否有关系,需再测试);还要注意划分分区,(需再测试不划分是否可以安装),另外要选择不要初始化磁盘标签,不要清除引导记录
选择好之后要保存ks.cfg文件,保存在/root目录下。另外在/root目录下创建myboot目录。将/var/www/html/media/目录下的isolinux目录和ks.cfg复制到myboot目录下。下面有两种安装方法
1.将ks.cfg文件复制到/var/www/html目录下,安装时用系统盘引导,之后按ESC,输入boot: linux text ip=192.168.1.64 netmask=255.255.255.0 ks=http://192.168.1.6/ks.cfg。之后就可以自动安装了。
2.这种方法不将ks文件放在网络上,而是同isolinux一起做成启动光盘。创建光盘前可以修改isolinux目录中的isolinux.cfg文件,在第一段label linux中加入append initrd=initrd.img ip=192.168.1.10 netmask=255.255.255.0 ks=cdrom:/ks.cfg。之后用命令mkisofs -R -J -T -v –no-emul-boot –boot-load-size 4 –boot-info-table -V “CentOS 6 x86_64 boot” -c isolinux/boot.cat -b isolinux/isolinux.bin -o /root/boot.iso myboot/制作光盘。之后将光盘复制到主机桌面,用虚拟机加载此光盘启动自动安装。或可以修改ks.cfg文件,在其中加入network –onboot yes –device eth0 –bootproto dhcp –noipv6,但这要求有dhcp服务器,如果没有就不能自动获得地址了。

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/91186

(1)
ruopu1989ruopu1989
上一篇 2018-01-17
下一篇 2018-01-17

相关推荐

  • 方便实用的文件查找与压缩

    在平时的运维工作当中通常会编辑某些文件,但时间久了,突然一下子记不起文件的名字,遇到的事情又很紧急,需要立马去处理,而自己只知道那个文件部分的特征信息,我们需要在系统中去搜索自己想要的文件,那么有没有办法去实现呢,当然有,在我们的系统中,文件查找的工具有两个,locate和find。那么下面来介绍这两个工具的用法以及两个工具之间的差别。 在我们linux系统…

    Linux干货 2016-08-13
  • 探索这个“男人”

    一、前言 正所谓了解一个命令就得了解他的用法,正好是要了解一个人就得了解他的兴趣爱好,处事态度以及为人是怎么样的。 二、man是什么 man – an interface to the on-line reference manuals Man是manual(手册)的缩写,使用权限是所有用户,man命令提供为linux系统在线提供了很好的帮助手册…

    Linux干货 2016-05-03
  • Tomcat 全系列发现严重安全漏洞

    据 Tomcat 安全组确认,Tomcat 全系列产品均被发现严重安全漏洞:CVE-2014-0227 请求夹带漏洞。 级别:严重 受影响版本: Apache Tomcat 8.0.0-RC1 to 8.0.8 Apache Tomcat 7.0.0 to 7.0.54 Apache Tomcat 6.0.0 to 6.0.41 描述:可以通过构造一个截断请…

    Linux干货 2015-02-11
  • 内核编译

    单内核体系设计、但充分借鉴了微内核设计体系的优点,为内核引入模块化机制。 内核组成部分核心,一般为bzImage,通常在/boot目录下,名称为vmlinuz-VERSION-RELEASE;: kernel: 内核 kernel object: 内核对象,一般放置于/lib/modules/VERSION-RELEASE/ [ ]: N [M]: M [*…

    Linux干货 2015-11-06
  • selinux介绍

    本章内容 SELinux概念启用SELinux管理文件安全标签管理端口标签管理SELinux布尔值开关管理日志查看SELinux帮助 SELinux介绍 SELinux: Secure Enhanced Linux,是美国国家安全局「NSA=The National Security Agency」和SCC(Secure Computing Corporat…

    Linux干货 2016-09-19
  • 使用Storm实现实时大数据分析

    摘要:随着数据体积的越来越大,实时处理成为了许多机构需要面对的首要挑战。Shruthi Kumar和Siddharth Patankar在Dr.Dobb’s上结合了汽车超速监视,为我们演示了使用Storm进行实时大数据分析。CSDN在此编译、整理。 简单和明了,Storm让大数据分析变得轻松加愉快。 当今世界,公司的日常运营经常会生成TB级别的数据。数据来源…

    Linux干货 2015-04-04