Ubuntu开机自启动脚本+设置(手把手教程,包教包会)

这篇具有很好参考价值的文章主要介绍了Ubuntu开机自启动脚本+设置(手把手教程,包教包会)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、写一个脚本

Documents文件夹(随意放在你习惯的位置)中建立一个init.sh脚本,写上开机后需要执行的动作

touch init.sh #建立文件,双击打开

init.sh内容为(这是我开机后需要执行的动作,比如进到我的gopath文件夹中执行main文件,学习go语言的懂得都懂。如果是python文件,可以写成python test.py ,反正当作终端去写)

#!/bin/bash
​
echo '[RG200U helper] Ready' #echo相当于注释 这行不重要
sleep 120
echo '[RG200U helper] Sending info to server..'
cd /home/catlab/GOPATH/src/init-ip/client/ && ./main #这行重要
​
sleep 20
echo '[RG200U helper] mpquic test...'
cd /home/catlab/GOPATH/src/mp-quic-conext17/example/client/ && ./main -m -file dummy128.txt https://10.92.8.154:6121/demo/upload
​
​
sleep 20
echo '[RG200U helper] mptcp test...'
cd /home/catlab/GOPATH/src/mp-quic-conext17/example/mptcp/client/ && ./main /home/catlab/GOPATH/src/mp-quic-conext17/example/mptcp/client/dummy128.txt
​
exit 0

注意:绝对路径的写法,不能写~。如果需要执行的文件在home文件夹里,路径可以写成 /home/name/需要执行文件(夹),不知道这个name的,可以右击home文件夹选择属性(如图所示我电脑的name为catlab)

ubuntu开机自启动脚本,ubuntu,linux

我要运行的是go文件,这里是go的一个小tip:如果写go run xx.go报错,就在xx.go文件所在目录下go build xx.go 生成xx文件,直接./xx运行。记得每次修改完xx.go文件后要再次go build xx.go (这个小tip不重要)

二、设置自启动

你所有要执行的动作写在init.sh文件中了,可以先自行bash init.sh,运行一下你的init.sh文件检查一下错误,相当于模拟开机后的自启动。

然后就是设置,如何在开机后自动执行这个init.sh文件了。

1、首先我的ubuntu版本是18.04 。

在/etc文件夹中建立rc.local的脚本文件,作为自启动脚本文件。(我想开机后直接执行我刚刚写的init.sh 文件)(当然你也可以将init.sh文件中的内容复制进来,写init.sh是为了方便自行运行检查,省的一遍遍重启)

sudo gedit /etc/rc.local #建立文件并打开

rc.local内容为

#!/bin/sh -e
 
cd /home/catlab/Documents/
bash init.sh
 
exit 0

给rc.local可执行权限

sudo chmod 777 rc.local

2、建立软连接(不懂,跟着做就行)

sudo gedit /etc/systemd/system/rc-local.service #建立文件并打开
[Unit]
Description=/etc/rc.local Compatibility
Documentation=man:systemd-rc-local-generator(8)
ConditionFileIsExecutable=/etc/rc.local
After=network.target
 
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
RemainAfterExit=yes
GuessMainPID=no
 
[Install]
WantedBy=multi-user.target
elias=rc-local.service
sudo chmod 777 /etc/systemd/system/rc-local.service #加权限

给另一个文件添加相同install字段(内容一样的)

sudo gedit /lib/systemd/system/rc-local.service
[Install]
WantedBy=multi-user.target
elias=rc-local.service
sudo chmod 777 /lib/systemd/system/rc-local.service #加权限

将 /lib/systemd/system/rc-local.service 链接到 /etc/systemd/system/ 目录下面来

sudo ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service

启动systemctl服务

systemctl start rc-local
systemctl enable rc-local

这就好了。

最后重启等着自启动就好了。

最后:

如果要修改自启动内容一共有两个地方:

第一个是你自己写的init.sh文件;

第二个是rc.local文件。(刚刚说了这两个文件是一个性质,可以不写init.sh,直接写在rc.local文件中就好,只是方便检查)(gedit /etc/rc.local)(这里放一个打开rc.local命令,防止忘记)

所以如果自启动有问题就检查这两个文件有没有写错(我是绝对路径出错)

检查rc.local文件可以用下面这个命令查看上一次自启动出现的问题(相当于一个log)(直接终端执行就好)

sudo systemctl status rc-local

保姆级教程了,希望大家科研路上少走弯路(🙇‍♀️文章来源地址https://www.toymoban.com/news/detail-762595.html

到了这里,关于Ubuntu开机自启动脚本+设置(手把手教程,包教包会)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ubuntu 20.04设置开机自启动脚本

    一、使用 rc-local.service rc-local.service 是系统自带的一个开机自启服务, 但是在 Ubuntu20 的 systemd 启动方式下,该服务默认没有开启。,启用它需要做些简单的配置。 在 路径下 /lib/systemd/system/rc-local.service 的 rc-local.service 的脚本,内容规定了 rc.local 的启动顺序和行为 1 建立开机

    2024年02月16日
    浏览(33)
  • 【手把手带你配置】环境:win10+VirtualBox7.0.10+Ubuntu—虚拟机安装增强功能及设置共享文件夹【亲测成功】

    由于最近在学习《二进制分析实战》,所以配置了一下书中提到的实验环境。踩了很多坑,特记录在此,希望可以帮助看到这篇博客的小伙伴减少配置环境的时间,多花时间在学习专业知识上。好了,不扯闲话,正文开始。 1、《二进制分析实战》提供了一个配置好的虚拟机

    2024年02月08日
    浏览(38)
  • 手把手搭建一个压测脚本

    1. 背景         在业务开发完成,并且功能测试也正常,接下来就需要接口性能进行测试,也叫压力测试,即对接口进行极限施压,找到接口瓶颈。对于一般接口,需保证请求的耗时在 300ms 左右最后,但一些接口涉及的业务逻辑复杂,导致耗时严重,并且用户请求量也大

    2024年02月13日
    浏览(47)
  • 手把手教你用Python编写邮箱脚本引擎

    版权声明:原创不易,本文禁止抄袭、转载需附上链接,侵权必究! 邮箱是传输信息方式之一,个人,企业等都在使用,朋友之间发消息,注册/登录信息验证,订阅邮箱,企业招聘,向客户发送消息等都是邮箱的使用场景;邮箱有两个较重要的协议:SMTP和POP3,均位于OSI7层

    2024年02月06日
    浏览(33)
  • 手把手教你用Python编写配置脚本引擎(福利篇)

    版权声明:原创不易,本文禁止抄袭、转载需附上链接,侵权必究! 配置信息初始化 定义配置引擎类和初始化方法,其中有两个属性,配置实例对象及配置文件路径: 将配置信息写入到配置文件中,该方法有三个形参,category(配置信息类别),name(配置字段名称),value(配置字

    2024年02月06日
    浏览(55)
  • 手把手带你搞懂AMS启动原理

    彻底搞懂AMS即ActivityManagerService,看这一篇就够了 最近那么多教学视频(特别是搞车载的)都在讲AMS,可能这也跟要快速启动一个app(甚至是提高安卓系统启动速度有关),毕竟作为安卓系统的核心系统服务之一,AMS以及PMS都是很重要的,而我之前在 应用的开端–PackageManag

    2024年02月12日
    浏览(38)
  • AD936x Evaluation Software生成的脚本转换成Verilog语言/AD9361配置寄存器/AD9361纯硬件设计/AD9361手把手教程/纯Verilog配置AD9361(二)

    因最近公司需要,借此机会和大家一起学习AD9361 制作不易,记得三连哦,给我动力,持续更新! 纯Verilog配置AD9361工程文件下载:纯Verilog配置AD9361工程         提取码:g9jy    ---------------------------------------------------------------------------------------- 因为ADI官方,只提供了利用软件

    2024年02月04日
    浏览(36)
  • 手把手pip安装教程

    在Python中,pip是最常用的包管理工具之一。它可以用于安装、卸载和管理Python包。在本文中,我们将手把手教你如何安装pip,以便能够更方便地安装和管理Python包。 在安装pip之前,我们需要确认已经正确安装了Python,并确定其版本。在命令行中输入以下命令,确认Python版本:

    2024年02月11日
    浏览(46)
  • 精彩!手把手教你玩转低代码/无代码平台的低码脚本——入门篇

    1.概述 旨在针对低代码脚本做详细介绍,涵盖操作方式,使用路径等,同时汇总低代码常用场景及其写法,为使用低代码的用户提供对应的案例,便于低代码的上手,减少开发的时间。 2.功能介绍 低代码脚本为低代码重要组成部分,可搭配不同场景,弥补复杂需求无法通过配

    2024年02月06日
    浏览(33)
  • 手把手教你快速在生产环境搭建Doris集群附集群启停管理脚本

    组件分布规划 节点 node4 node5 node6 node7 node8 Node9 Node10 Node11 服务 FE(follower) BE FE(follower) BE FE(follower) BE FE(observer) BE BE Broker BE Broker BE BE Ip 192.168.22.34 192.168.22.35 192.168.22.36 192.168.22.37 192.168.22.20 192.168.22.16 192.168.22.17 192.168.22.18 根据自己集群的软硬件配置,选择合适的版本

    2024年02月02日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包