通过与 Jira 对比,让您更全面了解 PingCode

  • 首页
  • 需求与产品管理
  • 项目管理
  • 测试与缺陷管理
  • 知识管理
  • 效能度量
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案

25人以下免费

目录

Linux配置开机自启动执行脚本方法有哪些

Linux配置开机自启动执行脚本方法有:一、修改 /etc/rc.d/rc.local 文件;二、使用 crontab 方式;三、使用 systemd 服务。修改 /etc/rc.d/rc.local 文件是指,/etc/rc.d/rc.local 用于用户自定义开机启动程序,可以往里写开机要执行的命令或脚本。

一、修改 /etc/rc.d/rc.local 文件

/etc/rc.d/rc.local 用于用户自定义开机启动程序,因此可以往里写开机要执行的命令或脚本。

1、设置 rc.local 的可执行权限

# chmod +x /etc/rc.d/rc.local

2、创建待执行的脚本

# cat /home/test.sh
 #!/bin/bash
 echo "hello world" >> /home/out.txt
 date >> /home/out.txt

3、设置脚本的可执行权限

# chmod +x /home/test.sh

4、把脚本放到 /etc/rc.d/rc.local 尾部

# cat /etc/rc.d/rc.local
  ... 
 /home/test.sh

5、重启系统使之生效

# reboot

6、查看日志文件判断脚本是否执行

# cat /home/out.txt
hello world
Thu Dec 30 20:45:00 CST 2021

二、使用 crontab 方式

crond 是 linux 下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与 windows 下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动 crond 进程,crond 进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。因此我们可以使用 crondtab 命令创建一个任务,让该任务在重启时进行执行。

# crontab -e
//进入编辑,输入如下行
@reboot /home/test.sh

//重启设备
# reboot 

//查看日志
# cat /home/out.txt
hello world
Thu Dec 30 21:09:03 CST 2021

三、使用 systemd 服务

Systemd 服务是一种以 .service 结尾的单元(unit)配置文件,用于控制由 Systemd 控制或监视的进程。简单说,用于后台以守护进程(daemon)的形式运行程序。systmd service 文件一般放在/etc/systemd/system/文件夹中。

//在/etc/systemd/system/下创建一个服务,如下
# vim ser.service

//[Unit] 区块:启动顺序与依赖关系。
[Unit]
//Description字段给出当前服务的简单描述
Description=Run a Custom Script at Startup
After=default.target

//Service区块定义如何启动当前服务
[Service]
//ExecStart字段:定义启动进程时执行的命令
ExecStart=/home/test.sh

//Install区块,定义如何安装这个配置文件,即怎样做到开机启动
[Install]
//WantedBy字段:表示该服务所在的 Target,Target的含义是服务组,表示一组服务
WantedBy=default.target


//更新服务配置文件,并使能服务
# systemctl daemon-reload
# systemctl enable ser.service

//重启系统
# reboot

延伸阅读1:Linux特点

  • 开源免费
  • 完全兼容 POSIX1.0 标准
  • 多用户多任务
  • 良好的界面
  • 支持多种平台
相关文章