实验1:rm-rf/boot恢复1.rm-rf/boot/*重启的时候虚拟机启动不起来。2.进入救援模式3.进入shell中,切换根目录:chroot/mnt/sysp_w_picpath4.mkinitrd/boot/initramfs-`uname-r`.img`uname-r`为当前正在使用的内核重新制作ramdisk文件5.mount/dev/sr0/mnt;cp/mnt/isolinux/vmlin..
分类:
其他好文 时间:
2017-09-25 09:43:15
阅读次数:
259
讲过了centos的启动流程,此时是不是想来点破坏呢?那就尽情的玩耍吧,记得在实验之前拍个快照,万一哪个环节错误恢复不回来了呢,毕竟数据无价,话不多说,开始。一、删除伪系统根。(ramdisk文件)(1)模拟误操作删除ramdisk文件。①模拟误删除initramfs-3.10.0-514.el7.x86..
分类:
其他好文 时间:
2017-09-20 16:41:49
阅读次数:
195
凡走过必留下痕迹,学点什么都会有用的。 本系列博文总结了自己在学习嵌入式Linux编程过程中的收获,若有错误,恳请指正,谢谢! ——参考教材韦东山系列教材 bootloader 是一个用于启动linux内核的C程序,为了达到最终启动内核的目的需要完成以下几个步骤: step1:硬件相关初始化,为启动 ...
分类:
其他好文 时间:
2017-09-17 18:55:11
阅读次数:
151
当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。 由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码(当然难度很大) ...
分类:
编程语言 时间:
2017-09-12 17:46:03
阅读次数:
186
内核启动分析之start_kernel初始化函数(init/main.c) stext函数启动内核后,就开始进入start_kernel初始化各个函数, 下面只是浅尝辄止的描述一下函数的功能,很多函数真正理解需要对linux相关体系有很深的了解后才能明白 代码如下: asmlinkage void ...
分类:
其他好文 时间:
2017-08-15 19:56:20
阅读次数:
293
内核启动并初始化后,最终目的是像Windows一样能启动应用程序 在windows中每个应用程序都存在C盘、D盘等 而linux中每个应用程序是存放在根文件系统里面 那么挂载根文件系统在哪里,怎么实现最终目的运行应用程序? 1.进入stext函数启动内核 2.进入strat_kernel(): .. ...
分类:
其他好文 时间:
2017-08-15 19:51:31
阅读次数:
234
目标: (1)创建Source Insight 工程,方便后面分析如何启动内核的 (2)分析uboot传递参数,链接脚本如何进入stext的 (3) 分析stext函数如何启动内核 1 创建内核source sight 工程 1.1 点击 “add all” 添加所有文件,后面再慢慢删去Arch目录 ...
分类:
其他好文 时间:
2017-08-15 18:51:28
阅读次数:
213
上篇文章中我们已经可以通过u-boot启动内核了。可是没有可以启动成功,从内核的log中可以看出。内核启动失败的原因是没有挂载到root文件系统,本文将使用busybox制作根文件系统并打包成ramdisk供u-boot启动内核使用。 (1)制作根文件系统 使用busybox构建根文件系统的步骤能够 ...
分类:
其他好文 时间:
2017-08-14 13:21:59
阅读次数:
232
本节主要学习: 详细分析UBOOT中"bootcmd=nand read.jffs2 0x30007FC0 kernel;bootm 0x30007FC0"中怎么实现bootm命令启动内核. 其中bootm要做的事情:a 读取头部,把内核拷贝到合适的地方(0X30008000)b 在do_boom_ ...
分类:
其他好文 时间:
2017-08-09 10:06:33
阅读次数:
203
系统引导过程概述:通电——bios初始化——grub2磁盘引导阶段——grub2文件引导阶段——指定boot分区所在位置——启动内核,只读/挂载设备——启动init程序进入初始化阶段——启动systemd初始化进程——取/etc/systemd/中的文件——启动程序——启动登陆环境。系统启动流程:一...
分类:
系统相关 时间:
2017-08-09 01:09:25
阅读次数:
339