Linux引导与服务

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux引导与服务相关的知识,希望对你有一定的参考价值。

分区表

1)MBR:最多只能支持4个主分区,磁盘占用磁盘头部512字节,其中446字节存储引导信息,剩余64字节为分区信息(每个分区占用16字节)

2)GPT:最多可支持128个主分区,每个分区桥都占用头部信息,能支持2TB以上磁盘

Linux引导过程

1)开机

2)加电自检(Bios,一段程序用于控制管理硬件,并决定启动顺序;所有数据来源于CMOS芯片)

3)MBR引导(寻找启动设备上的MBR信息,搜寻系统所有分区位置)

4)GRUB引导(系统选择菜单) --> /boot/grub/grub.conf

注:/boot/grub只是GRUB引导中其中一款程序,还有如efibootmgr、lilo等

5)加载内核(将启动内核加载到内存中(该区域不可越权访问,受系统保护))

6)init初始化(Linux下第一个启动进程,进程号1) --> /etc/inittab --> /etc/init/rcS.conf --> /etc/rc.d/rcx.d/ --> /etc/init/tty.conf --> /etc/sysconfig/init

Linux启动方式

1)Centos 6:Upstart

2)Centos 7:Systemd

一、运行级别

1.启动过程

windows过程:加电自检(BIOS、boot)、初始化、引导操作系统

Linux过程:加点自检(BIOS、boot)、MBR引导(寻找系统所在位置)、GRUB菜单(选择启动系统)、加载内核(将kernel加载到内存中)、init进程初始化(准备环境):第一个启动进程,PID(进程标记号)1

进程:软件运行是产生一个或多个进程,用于拿取硬件资源

父进程

子进程

查看进程:ps aux

注:所有的软件运行都需要加载到内存中

运行级别:

vim /etc/inittab

id:3:initdefault:

标识名:运行级别:动作:开机需执行命令

0:关机;不要设置为默认

1:单用户模式;一般用于维护或救援操作

2:多用户模式;不支持网络

3:完整的多用户模式;大多数使用

4:未定义

5:图形化

6:重启;不要设置为默认

init runlevel

poweroff init 0

reboot init 6

命令行 --> 图形化 init 5

开机自启:

chkconfig --list //查看所有服务开机自启状态

chkconfig --level 35 iptables off //将iptables在3、5级别下开机关闭

chkconfig --level 35 network on //将network在3、5级别下开机自启

chkconfig postfix on //在当前运行级别(runlevel)下开机自启postfix

ntsysv --level 35

当前立即运行:

service ip6tables status //查看当前服务状态

service ip6tables start //立即运行当前服务

service ip6tables stop //立即停止当前服务

service ip6tables restart //立即重启当前服务

注:service命令控制的服务,都来源于/etc/rc.d/init.d/目录(/etc/rc.d/init.d/ip6tables start --> /etc/init.d/ip6tables start --> service ip6tables start -->三者效果相同)

/etc/init.d/iptables start //立即开启iptables

/etc/init.d/postfix stop //立即停止postfix

/etc/init.d/network restart //立即重启network

二、故障恢复

1.MBR故障

1)备份MBR

新建硬盘,并分区挂载到/hehe/目录下

dd if=/dev/sda of=/hehe/mbr.bak bs=512 count=1

2)模拟故障

dd if=/dev/zero of=/dev/sda bs=512 count=1

3)放入光盘,进入救援模式

4)还原

mkdir /aa

mount /dev/sdb1 /aa

dd if=/aa/mbr.bak of=/dev/sda bs=512 count=1

2.GRUB菜单

Centos 7以上(Grub2)

chroot /mnt/sysimage

grub-mkconfig -o /boot/grub/grub.cfg

Centos 6一下(Grub1)

1)备份Grub文件

cp /boot/grub/grub.conf /hehe/

2)模拟故障

rm -rf /boot/grub/grub.conf

3)放入光盘,进入救援模式

4)还原

chroot /mnt/sysimage //切换到原系统环境

如不使用chroot

{

mkdir /aaa

mount /dev/sdb1 /aaa

cp /aaa/grub.conf /mnt/sysimage/boot/grub/

exit

}

mount /dev/sdb1 /hehe

cp /hehe/grub.conf /boot/grub/

exit

reboot

3.testdisk //Linux下数据恢复命令

4.root用户密码恢复

1)GRUB菜单 --> e --> kernel一行按e --> 空格1 --> 回车 --> b

2)passwd root 或 echo "密码" | passwd --stdin root

以上是关于Linux引导与服务的主要内容,如果未能解决你的问题,请参考以下文章

Linux的引导过程与服务控制

linux引导过程与服务控制!

Linux引导与服务控制

引导过程与服务控制

Linux引导过程与服务控制

Linux——引导过程与服务控制