Linux:开机启动顺序启动顺序及配置开机启动

简介: Linux:开机启动顺序启动顺序及配置开机启动

开机启动顺序

1、加载内核

2、启动 init(/etc/inittab) pid=1

3、系统初始化 /etc/rc.d/rc.sysinit

4、运行开机启动 /etc/rc.d/rc*.d #软链指向 /etc/init.d/ 通过 chkconfig 命令配置

5、非系统服务启动项 /etc/rc.d/rc.local(就是 /etc/rc.local)

6、等待用户登录 /sbin/mingetty

自启动脚本

1、每个用户

/etc/profile(/etc/profile.d)登录时都执行 # 环境变量
/etc/bashrc 运行bash shell时执行此文件

2、特定用户
~/.bash_profile 登录时 ~/.profile(Debian)
~/.bashrc 登录时以及每次打开新的 shell 时
~/.bash_logout 每次退出系统(退出bash shell)时,执行该文

参考

Linux 开机(脚本)启动顺序


Linux开机自动加载的几种方法

(1)编辑文件 /etc/rc.local

vim /etc/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
/etc/init.d/mysqld start #mysql开机启动
/etc/init.d/nginx start #nginx开机启动
/etc/init.d/php-fpm start #php-fpm开机启动
/etc/init.d/memcached start #memcache开机启动

# 在文件末尾(exit 0之前)加上你开机需要启动的程序或执行的命令即可
# (执行的程序需要写绝对路径,添加到系统环境变量的除外),如:

/usr/local/thttpd/sbin/thttpd -C /usr/local/thttpd/etc/thttpd.conf

(2)自己写一个shell脚本


将写好的脚本(.sh文件)放到目录 /etc/profile.d/ 下,

系统启动后就会自动执行该目录下的所有shell脚本。


(3)通过chkconfig命令设置


将启动文件cp到 /etc/init.d/或者/etc/rc.d/init.d/(前者是后者的软连接)下


vim 启动文

件,文件前面务必添加如下三行代码,否侧会提示chkconfig不支持

#!/bin/sh 告诉系统使用的shell,所以的shell脚本都是这样
#chkconfig: 35 20 80 分别代表运行级别,启动优先权,关闭优先权,此行代码必须
#description: http server(自己随便发挥)//两行都注释掉!!!,此行代码必须
chkconfig --add 脚本文件名 # 操作后就已经添加了

例如

/etc/init.d/rds_start.sh

#!/bin/sh
#chkconfig: 2345 80 90
#description:rds_start.sh
cd /home/softs/rds/bin/
nohup ./rds_start.sh &

说明:

2345表示系统运行级别是2,3,4或者5时都启动此服务,

20,是启动的优先级,

80是关闭的优先级,

如果启动优先级配置的数太小时如0时,则有可能启动不成功,

因为此时可能其依赖的网络服务还没有启动,从而导致自启动失败。

chmod +x /etc/init.d/auto_start.sh

chkconfig --add rds_start.sh # 添加到系统服务

chkconfig rds_start.sh on # 设置开机启动

其他命令

chkconfig --list   # 列出服务

chkconfig rds_start.sh off # 关闭服务
            </div>
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
网络安全 Python Windows
pyspark--完美解决 Could not find a version that satisfies the requirement 安装包名字 (from versions: )
pyspark--完美解决 Could not find a version that satisfies the requirement 安装包名字 (from versions: )
983 9
|
5月前
|
移动开发 前端开发 JavaScript
鸿蒙NEXT时代你所不知道的全平台跨端框架:CMP、Kuikly、Lynx、uni-app x等
本篇基于当前各大活跃的跨端框架的现状,对比当前它们的情况和未来的可能,帮助你在选择框架时更好理解它们的特点和差异。
611 0
|
11月前
|
消息中间件 负载均衡 物联网
乐刻运动:基于 RocketMQ + MQTT 实现健身产业数字化升级
乐刻运动通过采用阿里云的云消息队列 RocketMQ 版和云消息队列 MQTT 版,不仅提升了系统的实时数据处理能力,还增强了系统的可扩展性、可靠性和性能,为业务的持续发展和流畅的用户体验,提供了坚实的技术支持,进一步推动了数字经济与健身产业的深度融合。
437 91
|
存储 JSON 数据库
Elasticsearch 分布式架构解析
【9月更文第2天】Elasticsearch 是一个分布式的搜索和分析引擎,以其高可扩展性和实时性著称。它基于 Lucene 开发,但提供了更高级别的抽象,使得开发者能够轻松地构建复杂的搜索应用。本文将深入探讨 Elasticsearch 的分布式存储和检索机制,解释其背后的原理及其优势。
782 5
|
11月前
|
移动开发 前端开发 搜索推荐
《前端技术基础》第01章 HTML基础【合集】
超文本标记语言(HyperText Markup Language,简称 HTML)是构建网页结构的基础标记语言。它与 CSS、JavaScript 协同,负责搭建网页“骨架”,用标签组织内容,像标题、段落、图片等元素,通过起始与结束标签(部分可单用,如`<img>`)界定层级与布局,将信息有序整合。标签含特定语义,向浏览器传达展示方式,为网页准确呈现及后续美化、交互筑牢根基。
375 25
|
测试技术
外包对职业发展是否有影响?
从事两年外包工作并不会影响未来的发展,关键在于是否在此期间提升了个人能力。许多外包人员由于缺乏系统的培训,能力停滞不前,只能从事低级的手工测试工作。在华为合作的外包人员中,部分人因公司未提供培养机会,导致技能难以提升。因此,在外包期间应主动学习,掌握自动化和编程技能,以提高竞争力。大部分企业并不在意求职者是否有外包经历,只要能力达标即可。建议不要在外包公司停留过久,及时跳槽寻找更好的发展机会,避免因长期外包而失去学习动力。
|
存储 分布式计算 监控
什么是 Hadoop 集群?
【8月更文挑战第12天】
690 4
|
存储 Rust 监控
使用 watchfiles 监控目录变更
使用 watchfiles 监控目录变更
386 2
|
机器学习/深度学习 定位技术 Python
深入理解线性回归模型的评估与优化方法
深入理解线性回归模型的评估与优化方法
|
存储 编解码
【头歌·计组·自己动手画CPU】一、计算机数据表示(理论版) 【计算机硬件系统设计】
【头歌·计组·自己动手画CPU】一、计算机数据表示(理论版) 【计算机硬件系统设计】
623 2