Centos8 设置开机自启动脚本

简介: Centos8 设置开机自启动脚本

在CentOS8 之前通过把需要开机执行的命令写入到/etc/rc.local 就解决了开机启动问题,但是从CentOS8开始写入到rc.local 将无法自动启动 需要设置 rc.local这个服务自启解决开机/etc/rc.local 中脚本不执行问题

[root@hostname]# more /etc/rc.local #!/bin/bashTHISFILEISADDEDFORCOMPATIBILITYPURPOSESItishighlyadvisabletocreateownsystemdservicesorudevrulestorunscriptsduringbootinsteadofusingthisfile.


看一下系统默认/etc/rc.local的情况


[root@hostname]# ll /etc/rc.local lrwxrwxrwx1rootroot13Jul12019/etc/rc.local->rc.d/rc.local[root@hostname]# ll /etc/rc.d/rc.local -rw-r--r--.1rootroot474Jul12019/etc/rc.d/rc.local


说明:可以看到当前的/etc/rc.local是 /etc/rc.d/rc.local文件的一个符号链接


配置rc-local服务

我们在这里配置一个例子:开机后自动在/tmp 创建一个txt 文档

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

[root@hostname]# vi /etc/rc.local

增加一行:

touch/tmp/123.txt


2.加入可执行属性

[root@hostname]# chmod +x /etc/rc.d/rc.local   #必不可少,不然后面rc-local 无法启动[root@hostname]# ll /etc/rc.d/rc.local -rwxr-xr-x1rootroot530Mar1114:44/etc/rc.d/rc.local


3. 配置rc.local服务

[root@hostname]# vi /usr/lib/systemd/system/rc-local.service


内容如下:

[Unit]Description=/etc/rc.d/rc.localCompatibilityDocumentation=man:systemd-rc-local-generator(8)ConditionFileIsExecutable=/etc/rc.d/rc.localAfter=network.target[Service]Type=forkingExecStart=/etc/rc.d/rc.localstartTimeoutSec=0RemainAfterExit=yesGuessMainPID=no[Install]WantedBy=multi-user.target


说明:最后的install一段不可少,如果当前的service文件中没有这段,需手动添加(默认有前两部分) 否则服务启动时会报错



4.启动rc-local服务

[root@hostname]# systemctl daemon-reload [root@hostname]# systemctl start rc-local


5.使开机能自动启动:

[root@hostname]# systememctl enable rc-local Createdsymlink/etc/systemd/system/multi-user.target.wants/rc-local.service/usr/lib/systemd/system/rc-local.service.


测试

source /etc/rc.local 看下是否自动创建txt 文件 ,如创建成功说明脚本(这里只是写了一个简单的命令代替)自身不存在问题,删除这个txt 文件 并重启机器;机器启动后查看文件是否存在,如存在说明rc-local服务配置正常


相关文章
|
安全 Unix 开发工具
【git 实用指南】git 如何忽略文件权限
【git 实用指南】git 如何忽略文件权限
562 2
|
应用服务中间件 Linux 网络安全
Linux 安装 Nginx 并配置为系统服务(超详细)
Linux 安装 Nginx 并配置为系统服务(超详细)
|
SQL 存储 监控
OceanBase数据库常见问题之提示no such file ordirectory如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
Linux 虚拟化 数据安全/隐私保护
银河麒麟V10 VMWare安装保姆级教程
银河麒麟V10 VMWare安装保姆级教程
14826 5
银河麒麟V10 VMWare安装保姆级教程
|
消息中间件 负载均衡 监控
skynet框架:批量服务管理方案
【10月更文挑战第7天】Skynet 框架下的批量服务管理方案通过高效、可靠及可扩展的设计,实现了对大量服务实例的集中管理。该方案涵盖服务注册与发现、消息队列、负载均衡及集群管理等关键技术,确保系统稳定运行并提升响应速度。其优势在于提高系统性能、增强可靠性、便于扩展及简化管理操作,适用于大规模分布式系统、微服务架构、实时数据处理及游戏服务器等多种场景。通过定制化优化,可充分发挥 Skynet 框架的优势,构建高效稳定的分布式系统。
482 6
|
7月前
|
关系型数据库 MySQL Linux
MySQL8官方YUM仓库使用指南
MySQL 8 是广受欢迎的开源关系数据库管理系统,引入了诸多新特性和性能提升。本文介绍如何在 Linux 上通过 MySQL 官方 YUM 仓库安装和管理 MySQL 8。首先配置 YUM 仓库并安装 MySQL,启动服务后获取临时密码并登录。接着创建数据库与用户,使用 SQL 命令创建表格、插入及查询数据。此方法简便高效,适合快速上手 MySQL 8 的基本操作。
552 13
|
存储 关系型数据库 MySQL
【MySQL】在 Centos7 环境安装 MySQL -- 详细完整教程
【MySQL】在 Centos7 环境安装 MySQL -- 详细完整教程
|
10月前
|
Linux 数据安全/隐私保护 C语言
新手向导:轻松离线搭建最新版OpenVPN(含一键安装脚本)
OpenVPN 是常用的虚拟私有网络工具,通过 Docker 搭建非常简单。但常用的 kylemanna/openvpn 镜像已三年未更新,停留在 OpenVPN 2.4 版本。为了升级到最新版本(如 2024 年 2 月发布的 v2.6.9),可以通过官方开源社区获取最新安装包并手动编译安装。步骤包括安装依赖、下载并编译 OpenSSL 和 OpenVPN、生成证书和配置文件等。此外,GitHub 上有一键安装脚本 openvpn-install.sh,简化了安装过程,但其版本可能不是最新的。安装完成后,还需配置 iptables 以确保客户端能正常使用代理网络。
13688 1
|
关系型数据库 MySQL Linux
Linux 安装 mysql 【使用 tar.gz | tar.xz安装包-离线安装】
在Linux系统中使用tar.xz压缩包安装MySQL数据库的详细步骤。包括下载MySQL压缩包,解压到指定目录,创建mysql用户和组,设置目录权限,初始化MySQL,配置my.cnf文件,启动服务,以及修改root用户密码。此外,还提供了如何设置Windows远程登录MySQL服务器的方法。
Linux 安装 mysql 【使用 tar.gz | tar.xz安装包-离线安装】
|
Android开发 Python
uiautomator2:python控制手机的神器
uiautomator2:python控制手机的神器
345 0