相关文章推荐
谈吐大方的盒饭  ·  SQLSERVER ...·  6 月前    · 
另类的木瓜  ·  使用 Oracle RAC 和 PHP ...·  1 年前    · 
Linux系统日志管理
16 Linux启动管理
16.1 Linux系统启动流程
16.2 BIOS开机自检
16.3 主引导目录(MBR)结构及作用
16.4 Linux内核(内核模块)的加载
16.5 Linux /sbin/init
16.6 Linux /etc/inittab
16.7 Linux /etc/rc.d/rc.local配置文件
16.8 Linux启动引导程序加载内核
16.9 Linux /boot/grub/目录
16.10 Linux GRUB磁盘分区表示法
16.11 Linux GRUB配置文件
16.12 Linux多系统并存的GRUB配置文件
16.13 Linux GRUB手动安装
16.14 Linux GRUB加密
16.15 Linux字符界面调整分辨率
16.16 Linux内核模块管理
16.17 Linux NTFS文件系统安装
LAMP环境搭建和LNMP环境搭建 SELinux管理
在 /etc/rc[06].d/ 目录中的程序启动之后,系统的启动就已经完成。不过,我们总有一些程序是需要在系统启动之后随着系统一起启动的。这时我们并不需要自己把需要启动的服务链接到 /etc/rc3.d/ 目录中,因为系统给我们准备了 /etc/rc.d/rc.local 配置文件。
这个配置文件会在用户登陆之前读取,这个文件中写入了什么命令,在每次系统启动时都会执行一次。也就是说,如果有任何需要在系统启动时运行的工作,则只需写入 /etc/rc.d/rc.local 配置文件即可。这个文件的内容如下: [root@localhost ~]# ll /etc/rc.local
Irwxrwxrwx. 1 root root 13 4月10 21:46 /etc/rc.local -> rc.d/rc.local
#有一个链接文件,两个文件修改哪一个都可以
[root@localhost ~]#vi /etc/rc.d/rc.local
#!/bin/sh
#This script will be executed *after* all the other init scripts.
#You can put your own initialization stuff in here if you don't
#want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
#默认会touch这个文件,每次系统启动时都会touch这个文件,这个文件的修改时间就是系统的启动时间
/etc/rc.d/init.d/httpd start
#如果写入RPM包安装的apache服务的启动命令,apache服务就会在开机时自动启动

Linux 的启动过程基本上就是这样的,我们把启动流程图补充完整,如图 1 所示。 图 1 Linux启动流程
系统的启动过程就是这样的,最终我们就能登录字符界面的 Linux 了。不过,如果需要启动图形界面的 Linux,则还需要调用 X Window 接口。
在启动过程中还有一个配置文件会生效,就是 /etc/init/start-ttys.conf,这个文件主要定义了 Linux 支持的 1~6 个本地终端(tty[1-6])。如果在本机,则可以使用快捷键 Alt+F1~F6 来切换这 6 个本地终端;如果安装并启动了图形界面,则可以使用快捷键 Ctrl+Alt+F7 来切换图形终端。
至此,字符界面的启动过程就介绍完了。是不是非常复杂?如果你是初学者,则只需了解,不需要彻底掌握。但是掌握了 Linux 系统的启动过程,会更加了解 Linux 的结构。当然,如果你非常自信,则可以尝试安装 gentoo Linux 这个版本,因为这个 Linux 版本到目前为止还是纯源码安装的,如果能够安装成功,就会对 Linux 系统的结构及启动过程有更深入的理解。
< 上一页 Linux /etc/inittab Linux启动引导程序加载内核 下一页 >

编程帮 ,一个分享编程知识的公众号。跟着 站长 一起学习,每天都有进步。

通俗易懂,深入浅出,一篇文章只讲一个知识点。

文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」,你已然超越了90%的程序员!

微信扫描二维码关注
  • C语言入门
  • C语言编译器
  • C语言项目案例
  • C++11
  • socket
  • Makefile
  • OpenCV
  • Unity 3D
  • Python
  • Python并发编程
  • TensorFlow
  • Django
  • NumPy
  • Linux
  • Shell
  • Java教程
  • Java Swing
  • Servlet
  • JSP教程
  • Struts2
  • Maven
  • Spring
  • Spring MVC
  • Spring Boot
  • Spring Cloud
  • Hibernate
  • Mybatis
  • MySQL教程
  • MySQL函数
  • NoSQL
  • Redis
  • MongoDB
  • HBase
  • MATLAB
  • JavaScript
  • Bootstrap
  • CSS教程
  • TCP/IP
  • Android教程
  • Docker
  • VIP视频
  • 一对一答疑
  • fgets函数及其用法,C语言fgets函数详解
  • C++逆向入门视频教程(编程魔方)
  • C语言指针变量作为函数参数
  • 汇编语言ReadConsole函数:读取文本输入并将其送入缓冲区
  • Go语言变量的作用域
  • Struts2是什么?它和Struts1有什么区别?
  • JSP Exception.toString()方法:返回异常的简短描述
  • 如何挖掘SEO关键词?
  • Makefile中常见的错误信息
  • PHP数组函数汇总
  •