linux基础之CnetOS安装
CentOS启动流程
POST-->boot sequence(bios)--> bootloader(mbr)-->kernel(ramdisk)-->rootfs(ro)-->switch root--> sbin/init
对于centos,fedora而言:安装系统时用到的安装程序: anaconda
anaconda安装程序有两种风格:
基于curses的文本窗口: tui
图形窗口: gui
安装程序在哪里:光盘
1. 加载安装光盘
2. 只读挂载光盘: mount -r /dev/cdrom /media/cdrom
3. 进入安装程序专用目录isolinux: cd /media/cdrom,cd isolinux
isolinux内容:
boot.cat grub.conf isolinux.bin memtest TRANS.TBL vmlinuz
boot.msg initrd.img isolinux.cfg splash.jpg vesamenu.c32
CentOS的安装程序启动过程
安装程序会先加载类似bootloader的东西:boot.cat //这里的boot.cat是MBR前446bytes中的内容,安装时是不会去加载光盘中的boot.cat文件的
然后再去加载光盘中的isolinux.bin: isolinux/isolinux.bin //存在于光盘中
相当于先去MBR中加载第一段boot.cat ,然后到安装光盘中加载第二段 isolinux.bin,第二段再读取配置文件isolinux.cfg,并结合vesamenu.c32运行一个安装配置界面
boot.cat(mbr中) --> isolinux.bin(光盘中) --> isolinux.cfg(光盘中)
显示的菜单信息来自于isolinux.cfg配置文件中
每个对应的菜单选项:
加载内核:kernel isolinuz/vmlinuz
向内核传递参数:append initrd=initrd.img...然后
装载根文件系统,并启动anaconda
默认启动GUI接口,若是显式指定使用TUI接口,向内核传递”text“参数即可:esc --> boot: linux text 或者对应条目上按tab 键入linux text
注意: 上述内容一般应位于引导设备,而后续的anaconda及其安装用到的程序包等有几种方式可用:
本地光盘
本地硬盘
ftp server: yum repository
http server: yum repository
nfs server: 如果想手动指定安装源:
boot: linux method
anaconda应用的工作过程
安装前配置阶段
安装过程使用的语言
键盘类型
安装目标存储设备:
Basic Storage:本地磁盘
特殊设备: iSCSI
设定分区方式及MBR的安装位置
设定主机名
配置网络接口
时区
管理员密码
创建一个普通用户
选定要安装的程序包
安装阶段
在目标磁盘创建分区,执行格式化操作等
将选定的程序包安装至目标位置
安装bootloader
首次启动
iptables
selinux
core dump
anaconda的配置方式
1.交互式配置方式
2.通过读取事先给定的配置文件自动完成配置
按特定语法给出的配置选项:kickstart文件
安装引导选项:
boot:
text: 文本安装方式
method:手动指定使用的安装方式
与网络相关的引导选项:
ip=IPADDR
netmask=MASK
gateway=GW
dns=DNS_SERVER_IP
ifname=NAME:MAC_ADDR
与远程访问功能相关的引导选项:
vnc
vncpassword='PASSWORD'
指明kickstart文件的位置:
ks=
DVD driver: ks=cdrom:/PATH/TO/kickstart_FILE
Hard driver: 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
启动紧急救援模式
rescue
可参考官方文档: 《Installation Gude》
kickstart
如果我们系统已经安装好,在root用户家目录下会有kickstart的配置文件: anaconda-ks.cfg文件
kickstart文件的格式:
命令段:指明各种安装前配置,如键盘类型等
程序包段: 指明要安装的程序包组或程序包,不安装的程序包等
%packages
@group_name
package
-package
%end 脚本段:
%pre:安装前脚本
运行环境:运行于安装介质上的微型linux环境anaconda %post:安装后脚本
运行环境:安装完成的系统 命令段中的命令
必备命令:
authconfig:认证方式
authconfig --useshadow --passalgo=sha512
bootloader: bootloader的安装位置及相关配置
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" keyboard: 设定键盘类型 en_US.utf8
lang:语言类型
part:创建分区
rootpw:指明管理员的密码
timezone:时区 可选命令:
install OR upgrade
text:文本安装界面
network
firework
selinux
halt
poweroff
reboot
repo
user:安装完成后为系统创建新用户
url:指明安装源
创建kickstart文件的方式:
1.直接手动编辑
依据某模板修改
2.可使用创建工具:system-config-kickstart (CentOS 6)
# yum install system-config-kickstart //安装工具system-config-kickstart
# system-config-kickstart & //启动工具,会生成一个图形化设置界面,
3. 检查ks文件的语法错误:ksvalidator
# ksvalidator /PATH/TO/KICKSTART_FILE
boot: linux ip=192.168.1.102 netmask=255.255.0.0 ks=http://192.168.1.104/centos6.x86_64.cfg
创建引导光盘
# mkdir /tmp/myiso
# cp /media/cdrom/isolinux/* /tmp/myiso
# cd /tmp/myiso
# chmod u+w isolinux.cfg
# vim isolinux.cfg
# cd /tmp
# cp /root/anaconda.ks.cfg myiso
# 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/
kickstart安装系统
开机时指定: esc --> linux ks=cdrom://anaconda-ks.cfg
或者
在isolinux.cfg中指名ks路径
# cd /tmp/myiso
# vim isolinux/isolinux.cfg
添加一个label
label ks
append initrd=initrd.img ks=cdrom:/anaconda-ks.cfg //其他menu再修改下
# 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/
linux基础之CnetOS安装的更多相关文章
- CentOS6安装各种大数据软件 第三章:Linux基础软件的安装
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- Linux基础环境_安装配置教程(CentOS7.2 64、JDK1.8、Tomcat8)
Linux基础环境_安装配置教程 (CentOS7.2 64.JDK1.8.Tomcat8) 安装包版本 1) VMawre-workstation版本包 地址: https://my.vmw ...
- Linux基础三(软件安装管理)
目录: 一.Linux 中软件包的分类 1.源码包 2.二进制包 3.源码包 4.软件安装的选择 二.软件安装之 RPM 1.背景知识 2.准备知识 3.安装升级与卸载 4.查询校验与提取 三.软件安 ...
- Linux基础:简介安装、常用命令和JDK、Mysql、Tomcat的安装
一.Linux的简介 1.Linux的概述 Linux是基于Unix的开源免费的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境.Linux是由Linus Torvalds(林纳斯 ...
- Linux基础:软件安装(rpm,yum,源代码)
Software Installation on Linux Linux安装分为rpm包(可通过yum或者是rpm命令安装)和源码包(源代码或者是编译过的二进制码)两种. Linux是开源系统,很多应 ...
- linux 基础 软件的安装 *****
一软件的安装 原代码与tarball 源代码---->编译------>可执行文件 查看文件类型 file命令 是否是二进制文件 注意如果文件的可执行权限 .c结尾的源文件- ...
- linux基础开发软件安装 - java相关
1.linux在线安装mysql:转自 https://www.cnblogs.com/bigbrotherer/p/7241845.html ,写的很好,简单易用. 开启远程访问:转 https:/ ...
- 四、linux基础-系统目录_安装_相关命令_调度
4 系统目录-安装-版本4.1系统目录Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录. 在装完Linux系统以后会自动生成一下等目录, ...
- 1、Linux基础--相关软件安装与网络配置
1.虚拟机(VM安装) 2.网络配置 3.Linux操作系统安装 4.xshell安装
随机推荐
- [jQuery]入口函数(一) jquery.min.js 一定要单线程下载,复制粘贴容易入坑
jQuery入口函数 等着DOM结构渲染完毕即可执行内部代码,不必等到所有外部资源加载完毕 $(function () { // 此处是页面DOM加载完成的入口 }); $(document).rea ...
- JVM源码分析之临门一脚的OutOfMemoryError完全解读
概述 OutOfMemoryError,说的是java.lang.OutOfMemoryError,是JDK里自带的异常,顾名思义,说的就是内存溢出,当我们的系统内存严重不足的时候就会抛出这个异常(P ...
- C# 制作关键字醒目显示控件
实现方式:WinForm自定义控件,继承系统Label控件实现. 第1步:创建“组件”,取名为:MarkLabel 第2步:修改添加如下代码: /* 添加命名空间引用: * using Sys ...
- VSTO开发指南(VB2013版) 第二章 Office解决方案介绍
实例2.1 通过控制台实现对Excel的自动化处理 书本第32页 注:添加两个引用: 第一个:程序集—框架—“System.Windows.Forms 4.0.0.0”第二个:程序集—扩展—“Micr ...
- jmeter-json提取器提取的内容含”引号
这时如果直接赋值会报错 解决方法: 1.用vars.get("Object")提取变量的值 2.用代码提取,最后把提取到的Object或Array转为String
- AGC018F - Two Trees
题意 有两棵节点数均为 n 的有根树,你需要构造一个序列 \(X_1,X_2,...,X_n\).使得对于每一棵树的每一个节点, 若令它所有的后代(包括它本身)为 \(a_1,a_2,...,a_k\ ...
- 关于javascript中的内置函数
(1) parseInt()函数 语法:parseInt(string,[n]) 该函数主要将首位为数字的字符串转化为数字,若该字符串不是以数字开头,则返回NaN; n是用于指出字符串中的数据是几 ...
- 【MVC+EasyUI实例】对数据网格的增删改查(上)
前言 此案例是针对之前做的一个小例子的后台框架的修改,从以前的三层框架改为现在的MVC框架,也是做了一次MVC和EasyUI的结合,分为2篇文章来阐述. 界面如下: 点击"添加"按 ...
- EasyUI笔记(六)数据表格
前言用asp.net结合easyui做个一个数据网格的页面,包括对数据的增删改查,界面如下: 一.UI界面 先写UI界面,代码如下,记得引入相关js和css文件 <body> <t ...
- antd-design
1. 有mock 时候进度条展示不正常