开启辅助访问 切换到窄版

登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 30|回复: 0

Linux开机运行程序的几种方式

[复制链接]

14

主题

19

回帖

129

积分

管理员

枫之小铭

积分
129
发表于 2025-9-2 13:42:48 | 显示全部楼层 |阅读模式
一.系统启动时执行
系统启动的过程:
内核启动 → systemd 初始化 → 基础服务启动 → 网络就绪 → /etc/rc.local 执行 → 登录提示出现
因此有:
1. /etc/rc.local
当这个文件有执行权限的时候(因此需要chmod +x /etc/rc.local以启用它
在系统启动的最后阶段,这个脚本会以root的身份被执行


2. /etc/rc.d/init.d
此方式正在逐渐被淘汰,故不细究

3.systemd服务(推荐,但更麻烦)
systemd 是现代 Linux 系统中最主流的初始化系统(init system)和系统管理器。
作为系统启动后的第一个进程(PID 1),它负责全面掌控整个系统的初始化和资源管理。它不仅能高效地并行启动各种服务,加快开机速度,还能自动处理服务之间的依赖关系,确保系统稳定运行。通过统一的配置文件(如 .service.timer 等),systemd 可以管理服务的启动、停止、重启和故障恢复,支持开机自启和崩溃后自动重启。它还集成了强大的日志系统(journalctl),方便查看和分析所有服务的运行记录。除此之外,systemd 还能管理定时任务、文件系统挂载、网络设备、交换分区以及系统运行目标(如图形界面或命令行模式),几乎涵盖了系统运行所需的所有资源调度工作。(来自AI)
使用方法见附件

二.用户登录时执行
当用户登录shell/ssh时,有以下脚本会以用户的身份被按顺序执行
1. /etc/profile
2. ~/.bash_profile 或 ~/.profile (有前者就不执行后者)
3. ~/.bashrc (仅当使用bash shell时)
位于家目录的文件仅对当前用户生效,而/etc/profile合并影响所有用户


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|电信科协官网

GMT+8, 2025-9-14 07:15 , Processed in 0.140555 second(s), 19 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表