linux命令:chroot ldd init系统启动流程,修改启动背景图-阿里云开发者社区

开发者社区> 技术小甜> 正文

linux命令:chroot ldd init系统启动流程,修改启动背景图

简介:
+关注继续查看

Linux系统启动流程

POST(该过程主要检测服务器硬件所有硬件设备)-->BIOS(Boot顺序,系统引导顺序,从哪个设备引导)-->MBR引导文件存储空间(内含有bootlocader文件总大小大概446MB,查找系统引导文件)-->Kernel系统内核-->/initrd -->(ROOTFS)/sbin/init


linux系统运行级别:0-6

     0:halt 关机

     1:single user mode 单用户模式,直接以管理员身份登录(维护模式)

     2:multi user mode, no NFS 多用户模式,但是不启用网络文件系统

     3:multi user mode,text 多用户纯文本模式

     4:reseved 尚未定义的模式,暂时保留模式

     5:multi user mode,graphic mode 多用户图形界面

     6:reboot 重启

详解系统启动过程

   bootloader(MBR)

       LILO:Linux Loader

       GRUB:Grand Unified Bootloader

         stage1:MBR 第一阶段,主要为了引导第二阶段

         stage1_5: 第1.5阶段,主要用于识别常用的文件系统,位于/boot/grub/目录中

         stage2: 第二阶段位于/boot/grub/目录中

cat /etc/grub.conf 该配置文件时/boot/grub的链接文件:

# grub.conf generated by anaconda

#

# Note that you do not have to rerun grub after making changes to this file

# NOTICE:  You have a /boot partition.  This means that

#          all kernel and initrd paths are relative to /boot/, eg.

#          root (hd0,0)

#          kernel /vmlinuz-version ro root=/dev/sda2

#          initrd /initrd-[generic-]version.img

#boot=/dev/sda

default=0 # 设定默认启动的title编号,从0开始,从上往下排序。

timeout=5  # 等待用户选择的超时时长,单位是秒

splashimage=(hd0,0)/grub/linux.xpm.gz # grub的背景图片

hiddenmenu  # 隐藏菜单

password --md5 $1$7yZf4/$Bo.1Rg8dZNcimFoMud6Ed0 # 使得进入单用户模式需要使用密码

title CentOS (2.6.32-431.el6.i686) # 内核标题或者操作系统名称,字符串,可自由修改

root (hd0,0) # 内核文件所在的设备,对grub而言,所有类型硬盘一律为hd;

          格式为(hd#,N);hd#,#表示第几个磁盘,最后的0表示对应磁盘的分区

kernel /vmlinuz-2.6.32-431.el6.i686 ro root=UUID=47b74772-4295-493a-8aa6-8fc85ae0807d rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet # 内核文件路径/boot目录,及传递给内核的参数

initrd /initramfs-2.6.32-431.el6.i686.img # ramdisk文件路径/boot目录中


chroot:chroot /PATH/TO/TEMPROOT [COMMAND...]切换根目录 把根目录切换到/TEMPROOT临时目录

     chroot /test/virrrot /bin/bash 切换根目录,同时以/bin/bash执行


ldd /PATH/TO/BINARY_FILE:显示二进制文件所依赖的共享库


[root@xuelinux boot]# ldd /bin/ls

linux-gate.so.1 =>  (0x00ca3000)

libselinux.so.1 => /lib/libselinux.so.1 (0x0077d000)

librt.so.1 => /lib/librt.so.1 (0x00832000)

libcap.so.2 => /lib/libcap.so.2 (0x0054e000)

libacl.so.1 => /lib/libacl.so.1 (0x0051d000)

libc.so.6 => /lib/libc.so.6 (0x001a5000)

libdl.so.2 => /lib/libdl.so.2 (0x00759000)

/lib/ld-linux.so.2 (0x0017f000)

libpthread.so.0 => /lib/libpthread.so.0 (0x00760000)

libattr.so.1 => /lib/libattr.so.1 (0x00515000)








本文转自wang650108151CTO博客,原文链接:http://blog.51cto.com/woyaoxuelinux/1880231 ,如需转载请自行联系原作者






版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Android M应用启动流程分析
Android M的Activity启动的完整流程
3234 0
4G LTE/LTE-A系统的主要性能特点 | 带你读《5G UDN(超密集网络)技术详解》之四
宏基站 eNB 和微基站 eNB 配置提供的服务小区之间的主要区别是:系统 容量和无线覆盖的区域大小不同,只有当它们以不同方式、不同类型搭配,混 合地部署组网在一起时,才能形成上述所谓的“同构宏蜂窝”与“异构微蜂 窝”网络之间的诸多差别。
1228 0
SpringBoot ~ 启动系统任务
启动系统任务 ​ SpringBoot对于系统启动时执行的任务,例如配置文件加载,数据库初始化等操作提供了两种解决方案:CommandLineRunner和ApplicationRunner,两者差别主要在于参数。
565 0
先知白帽大会报名启动,组委会向你投来一本参会指南
今年3月, 先知想召集所有有爱,有技术,有正义感 的白帽子,和安全圈大咖们 一起聚聚。 第一届先知白帽大会,我们已经准备好,就等你来。
4145 0
重要通知 | Windows系统高危漏洞修复方案
4月14日,境外黑客组织公开了一份包含多个Windows远程漏洞利用工具的机密文档。为确保云上用户的业务安全,阿里云在4月15日早上九点半发布了漏洞公告及修补措施,以确保用户不受漏洞影响。
7106 0
Android系统启动过程学习
版权声明:您好,转载请留下本人博客的地址,谢谢 https://blog.csdn.net/hongbochen1223/article/details/53780960 使用 an...
789 0
+关注
10146
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载