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 ,如需转载请自行联系原作者






相关文章
|
7天前
|
资源调度 JavaScript 搜索推荐
Linux系统之部署envlinks极简个人导航页
【4月更文挑战第11天】Linux系统之部署envlinks极简个人导航页
41 2
|
10天前
|
缓存 Linux 测试技术
安装【银河麒麟V10】linux系统--并挂载镜像
安装【银河麒麟V10】linux系统--并挂载镜像
61 0
|
8天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
24 6
|
8天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
30 9
|
1天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
9 0
|
2天前
|
域名解析 网络协议 Linux
Linux 中的 Nslookup 命令怎么使用?
【4月更文挑战第12天】
22 6
Linux 中的 Nslookup 命令怎么使用?
|
3天前
|
运维 网络协议 Unix
18.系统知识-Linux常用命令
18.系统知识-Linux常用命令
|
4天前
|
网络协议 Ubuntu Linux
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
|
4天前
|
Linux Go
Linux命令Top 100驱动人生! 面试必备
探索Linux命令不再迷茫!本文分10部分详解20个基础命令,带你由浅入深掌握文件、目录管理和文本处理。 [1]: <https://cloud.tencent.com/developer/article/2396114> [2]: <https://pan.quark.cn/s/865a0bbd5720> [3]: <https://yv4kfv1n3j.feishu.cn/docx/MRyxdaqz8ow5RjxyL1ucrvOYnnH>
48 0
|
7天前
|
缓存 运维 监控
Linux系统监控利器:探索常用命令及数据保存技巧
Linux系统监控利器:探索常用命令及数据保存技巧
24 4
Linux系统监控利器:探索常用命令及数据保存技巧