CentOS 程序开机自启动方法总结

1、把启动程序的命令添加到/etc/rc.d/rc.local文件中

CentOS系统下管理开机自启动的配置文件是/etc/rc.d/rc.local,所以只需编辑这个文件,在里面加入相应的启动命令即可。

比如我们设置自启动lampp服务方法如下:

1vi /etc/rc.d/rc.local

按下键盘上i键进入可编辑模式,在文件末尾处加入新的一行

1/opt/lampp/lampp start

2、把启动程序的命令添加到/etc/rc.d/rc.sysinit 文件中

脚本/etc/rc.d/rc.sysinit,完成系统服务程序启动,如系统环境变量设置、设置系统时钟、加载字体、检查加载文件系统、生成系统启动信息日志文件等

比如我们设置自启动apache:

1echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.sysinit

3、使用命令chkconfig设置开机启动

chkconfig 功能说明:检查,设置系统的各种服务。

语法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

--add 添加服务

--del 删除服务

--list 查看各服务启动状态

比如我们设置自启动mysql:

1#将mysql启动脚本放入所有脚本运行目录/etc/rc.d/init.d中
2cp /lamp/mysql-5.0.41/support-files/mysql.server /etc/rc.d/init.d/mysqld
3 
4#改变权限
5chown root.root /etc/rc.d/init.d/mysqld
6 
7#所有用户都可以执行,单只有root可以修改
8chmod 755 /etc/rc.d/init.d/mysqld
9 
10#将mysqld 放入linux启动管理体系中
11chkconfig --add mysqld
12 
13#查看全部服务在各运行级状态
14chkconfig --list mysqld
15 
16#只要运行级别3启动,其他都关闭
17chkconfig --levels 245 mysqld off

以上3种方法推荐使用

4、用软连接放入到相应运行级的目录中

首先查看当前运行级别

1runlevel

加入当前运行级别是3,这放入/etc/rc.d/rc3.d/中,如

1ln -s myscript  /etc/rc.d/rc5.d/S100myscript

文件中脚本命名规则,首字母K表示关闭脚本,首字母S表示启用脚本,数字表示启动的顺序

5、ntsysv 更改当前运行级启动

图像化方式,后面加--level N 来更改其他运行级,空格确定, tab 切换按钮

1
该内容对我有帮助

声明: 本文由Ezencart原创,转载请保留链接:CentOS 程序开机自启动方法总结

### CentOS 中配置程序开机自启动方法CentOS 系统中,可以通过多种方式实现程序开机自启动功能。以下是几种常见的方法及其具体操作: #### 方法一:通过 systemd 创建服务单元文件 `systemd` 是现代 Linux 发行版中的初始化系统和服务管理器,在 CentOS 7 及更高版本中广泛使用。 1. **创建 `.service` 文件** 在 `/etc/systemd/system/` 目录下创建一个新的服务单元文件,例如 `myapp.service`。 使用以下命令创建并编辑该文件: ```bash sudo nano /etc/systemd/system/myapp.service ``` 2. **填写服务配置内容** 编辑文件时需指定程序路径、运行环境及其他参数。以下是一个典型的 Java 应用的服务配置示例[^2]: ```ini [Unit] Description=My Application Service After=network.target [Service] ExecStart=/path/to/java -jar /path/to/app.jar Restart=always User=myuser Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64" [Install] WantedBy=multi-user.target ``` 3. **启用并启动服务** 完成配置后,执行以下命令以使服务生效: ```bash sudo systemctl daemon-reload sudo systemctl enable myapp.service sudo systemctl start myapp.service ``` #### 方法二:将脚本添加到 rc.local 对于简单的任务,可以直接修改 `/etc/rc.d/rc.local` 脚本,并将其设为可执行权限。 1. **编辑 rc.local 文件** 打开 `/etc/rc.d/rc.local` 并追加要启动程序命令: ```bash sudo nano /etc/rc.d/rc.local ``` 添加如下内容(假设需要启动某个 Python 程序): ```bash /usr/bin/python3 /path/to/script.py & ``` 2. **赋予脚本执行权限** 修改文件权限使其具有可执行属性: ```bash sudo chmod +x /etc/rc.d/rc.local ``` #### 方法三:利用 crontab 的 @reboot 功能 Cron 表支持一种特殊的触发条件——`@reboot`,用于定义系统重启后的自动任务。 1. **进入用户的 cron 表** 输入以下命令打开当前用户的定时任务列表: ```bash crontab -e ``` 2. **添加 reboot 启动项** 插入类似下面的一条记录来安排程序随系统一起加载: ```cron @reboot /bin/bash /path/to/startup.sh ``` 以上三种方案各有优劣,可根据实际需求选择合适的方式完成配置工作[^1]。 ```python print("Example of a simple startup script.") ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值