博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux启动过程笔记
阅读量:6239 次
发布时间:2019-06-22

本文共 1641 字,大约阅读时间需要 5 分钟。

Linux启动过程

1、启动流程(BIOS->MBR:Boot Code->引导GRUB->载入内核->运行init->runlevel)

2、/boot/grub/下有多个文件   当中stage1为MBR镜像(512字节) stage2为引导程序
3、/boot/grub/grub.conf为引导的配置文件
default=0#默认载入下边哪个系统timeout=3#引导等待时间splashimage=(hd0,1)/boot/grub/splash.xpm.gz#引导界面的背景图hiddenmenu#隐藏菜单title CentOS(2.6.32.279.el6.i686)#系统名称    root(hd0,1)#系统位置    kernel /boot/vmlimuz-2.6.32.279.el6.i686 ro root=UUID=**  LANG=en_US.UTF-8 #内核及參数    initrd /boot/initramfs-2.6.32.279.el6.i686.img#镜像文件
4、Linux为保持kernel精简将一些不经常使用的驱动、功能编译为模块,在须要的时候动态载入。而这些
模块被打包保存为一个initramfs文件
早期版本号Linux使用initrd文件,initramfs是initrd的替代优化版本号,比曾经更加节省空间、更加灵活

5、dmesg查看内核的输出信息(查看内核级故障、设备驱动不起来时须要看内核信息)、信息终于保

存在/var/log/dmesg文件里
6、init为linux系统中的第一个进程(top中PID为1的)。为全部进程的父进程
系统启动时调用/etc/rc.d/rc.sysinit负责对系统进行初始化。挂载文件系统。而且依据执行基本启动对应服务
执行级别:
0:关机
1:单用户模式
2:不带网络的多用户模式
3:纯文本多用户模式
4:未使用
5:XLL图形化多用户模式
6:又一次启动
通过/etc/inittab 改动默认级别
每一个级别保存在/etc/rc.d下(rc0.d、rc1.d、rc2.d。。

。)

/etc/init 里边的文件为系统初始化配置文件(如启动ctrl alt del组合按键)
runlevel显示当前及上一个执行级别
N 5 (N表示没有上一个,5表示图形)
init 3表示切换到3级别下

单用户改动ROOTpassword

引导时为内核传递參数"1"(数字1)或"single"可系统进入单用户模式(在引导模式下按e,选择内核后再按e,追加"1"启动)
单用户模式下不启用不论什么服务
单用户模式直接以root用户登录,而且不须要password
能够使用passwd改动rootpassword

GRUB加密

通过在grub.conf中的启动配置中增加例如以下參数就可以对grub进行加密:
password --md5 $1$ao---这里是密码

加密后的password能够通过grub-md5-crypt命令生成,将生成后的password替换上边的password

rc.local文件解说

非常多人不知道rc.local和rc?.d的差别,rc.local是在系统初始化级别脚本运行之后再运行的,因此能够安全地在里面加入你想在系统启动之后运行的脚本。常见的情况是你能够再里面加入nfs挂载/mount脚本。

此外,你也能够在里面加入一些调试用的脚本命令。比如。我就碰到过这样的情况:samba服务总是无法正常运行。而检查发现,samba是在系统启动过程中就该启动运行的。也就是说,samba守护程序配置保证了这样的功能本应该正确运行。

碰到这样的类似情况。一般我也懒得花大量时间去查为什么,我仅仅须要简单的在/etc/rc.local脚本里加上这么一行:

          /etc/init.d/samba start

这样就成功的攻克了samba服务异常的问题。

转载地址:http://gpdia.baihongyu.com/

你可能感兴趣的文章
Caused by: Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar
查看>>
让你拥有超能力:程序员应该掌握的统计学公式
查看>>
互联网组织的未来:剖析 GitHub 员工的任性之源
查看>>
Java 开源博客 Solo 1.4.0 发布 - 简化
查看>>
Oracle巡检
查看>>
【转载】胜者树
查看>>
查看mysql数据库存放的路径|Linux下查看MySQL的安装路径
查看>>
selenium+testNG+Ant
查看>>
1024程序员节,你屯书了吗?(内含福利)
查看>>
移动端JS 触摸事件基础
查看>>
Flex拖动原来如此简单
查看>>
温故而知新:什么是wcf
查看>>
centos语言设置
查看>>
php安装
查看>>
Fragment在getUserVisibleHint时进行加载数据的问题记录
查看>>
使用线程池模拟处理耗时任务,通过websocket提高用户体验
查看>>
Java 内部类种类及使用解析
查看>>
Axure产品原型设计工具
查看>>
spice在桌面虚拟化中的应用系列之三(USB映射实现,SSL加密,密码认证,多客户端支持)...
查看>>
Loading project 91606170 of 1: Project FooBar 问题如何解决?
查看>>