详解在 Linux 启动时,如何自动执行命令或脚本

Linux开机后自动执行命令或脚本 服务器重启后Docker服务是不会自动启动的,需要手动启动,此处就以此为例让它自己启动。应用场景:开机后自动执行命令或脚本。 阅读详情
AI摘要

在Linux中,可以通过cron任务的@reboot指令或/etc/rc.d/rc.local文件在启动时执行脚本。使用~/.bash_profile和~/.bash_logout文件可以在用户登录和注销时运行脚本。确保考虑环境变量和文件权限。

导读我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情。按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟。当你注销或者关机时,也是这样。

我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情。按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟。当你注销或者关机时,也是这样。

更有意思的是,在系统启动以及用户登录或注销时,还可以让系统执行特定的操作。

本文,我们将探讨一下在 Linux 操作系统中实现这些目标的传统方法。

注意:我们假定使用的是 Bash 作为登录及注销的主 Shell。如果你使用的是其他 Shell,那么有些方法可能会无效。如果有其他的疑问,请参考对应的 Shell 文档。

在启动时执行 Linux 脚本

有两种传统的方法可以实现在启动时执行命令或脚本:

方法 #1 - 使用 cron 任务

除了常用格式(分 / 时 / 日 / 月 / 周)外,cron 调度器还支持 @reboot 指令。这个指令后面的参数是脚本(启动时要执行的那个脚本)的绝对路径。然而,这种方法需要注意两点:

  • a) cron 守护进程必须处于运行状态(通常情况下都会运行),同时
  • b) 脚本或 crontab 文件必须包含需要的环境变量(如果有的话,参考 StackOverflow 获取更多详细内容)。

方法 #2 - 使用 /etc/rc.d/rc.local

这个方法对于 systemd-based 发行版 Linux 同样有效。不过,使用这个方法,需要授予/etc/rc.d/rc.local文件执行权限:

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

然后在这个文件底部添加脚本。

下图说明如何分别使用 cron 任务和 rc.local 运行两个示例脚本(/etc/rc.d/rc.local/home/gacanepa/script1.sh 和/home/gacanepa/script2.sh)。
script1.sh:

#!/bin/bash
DATE=$(date +'%F %H:%M:%S')
DIR=/home/gacanepa
echo "Current date and time: $DATE" > $DIR/file1.txt

script2.sh:

#!/bin/bash
SITE="Tecmint.com"
DIR=/home/gacanepa
echo "$SITE rocks... add us to your bookmarks." > $DIR/file2.txt

*启动时执行 Linux 脚本 *

记住,一定要提前给两个示例脚本授予执行权限:

$ chmod +x /home/gacanepa/script1.sh
$ chmod +x /home/gacanepa/script2.sh

在登录或注销时执行 Linux 脚本

要在登录或注销时执行脚本,分别需要使用~.bash_profile和~.bash_profile文件。多数情况下,后者需要手动创建。在每个文件的底部,添加调用脚本代码,如前面例中所示,就可以实现这个功能。

总结

本文主要介绍如何在启动、登录以及注销系统时执行脚本。

如何在 Linux 重启或启动时执行命令或脚本? 在 Linux 的世界里,掌握在系统重启或启动时执行命令或脚本的技能,就如同拥有了一把开启自动化运维大门的神奇钥匙🔑。无论是进行系统初始化设置、启动特定服务,还是执行数据备份等任务,都能通过这种方式实现高效自动化。本文将带您深入探索在 Linux 重启或启动时执行命令或脚本的多种方法,为您的 Linux 运维之旅增添强大助力💪。 阅读详情

相关推荐

Linux系统下开机自动运行命令的方法

一般可以放在/etc/rc.d/rc.local文件中设置开机自动运行命令。文中介绍了在Bash和TCshell中的一些启动文件。

linux开机自动运行命令

1. 通用方法: [root@localhost ~]# vim /etc/rc.d/rc.local。设置状态命令:[root@localhost ~]#systemctl status rc-local。2.进阶启动命令设置(注意:运行脚本里需要手动输入指令时)写完脚本后,开始reboot重启进行检查,命令如下。

种一棵树,最好的结果是十年前,其次是现在! 4128

C++中为什么要引入引用变量?

C++引用机制的设计哲学在于平衡性能与安全性。它解决了指针的三个痛点:语法噪音、空指针风险和语义模糊,同时保持了指针的效率优势。引用必须绑定有效对象且不可重绑定的特性增强了安全性,其值语义语法更直观。尤其在运算符重载和const引用场景中,引用展现了不可替代的优势。本质上,引用是编译器优化的指针实现,体现了C++"零开销抽象"的核心思想——既保持底层性能,又提供高级抽象。这种设计允许开发者根据场景灵活选择指针或引用,反映了C++多范式共存的语言智慧。

教学 & 技术专栏 175

设置linux开机自动运行某条命令或程序和安装jdk(jar)

1.确保当前用户拥有修改和运行权限。chmod +x /etc/rc.d/rc.local。/etc/rc.d/rc.local这个配置文件会在用户登陆之前读取,这个文件中写入了什么命令,在每次系统启动时都会执行一次。也就是说,如果有任何需要在系统启动时运行的工作,则只需写入 /etc/rc.d/rc.local 配置文件即可。 2.修改/etc/rc.d/rc.local文件,输入要在开机自动运行的命令或程序,例如拷贝某个文件 cp /usr/local/vdtap_cli_x64.x64 /var/l

u011439436的博客 9437

已解决-Parallels Desktop 16 网络初始化失败:您的虚拟机将继续正常运作,但将无法连接网络

我是月球挖掘机,相信不少打工人为了尝鲜已经更新了MacOS 11 Big Sur,当然,苹果每次的系统大更新,都会给我们软件的功能无法使用惊喜,这次的也不例外。 这个问题是我在更新macOS Big Sur之后,Parallels Desktop打开虚拟机后,提示: 报错信息 网络初始化失败:您的虚拟机将继续正常运作,但将无法连接网络 这是我的软件版本: 起初我以为是我的虚拟机坏了,结果重装了一遍虚拟机,没有任何用处。我开始在网上找方法,只能找到那个使用命令行打开软件的命令,除此之外没有了

月球挖掘机 5万+

3GPP协议解读_物理层系列(一)_物理层协议怎么看?

5G NR相关协议一般都在38系列,点进去以后可以看到,38.2xx系列为物理层相关协议,为了掌握物理层相关知识,应该怎么看协议呢?我建议从38.201读起,对38.2xx系列协议有一个整体的把握。

JCMLSY的博客 1329

Linux怎么通电自启命令,详解如何在 Linux 启动时自动执行命令或脚本

我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情。按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟。当你注销或者关机时,也是这样。更有意思的是,在系统启动以及用户登录或注销时,还可以让系统执行特定的操作。本文,我们将探讨一下在 Linux 操作系统中实现这些目标的传统方法。注意:我们假定使用的是 Bash 作为登录及...

weixin_28846179的博客 774

Abaqus复合材料层合板仿真

由于复合材料的损伤失效问题过于复杂,解析方法受到数学工具的限制难以实现,而实验也需要高昂的费用和时间成本难以广泛应用,Abaqus针对复合材料提供了专业的建模工具和损伤分析理论来模拟复合材料层合板在各种工况下的失效行为。

JXHXHL的博客 2541

mysql zai linux下自动启动_详解如何在 Linux 启动时自动执行命令或脚本

我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情。按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟。当你注销或者关机时,也是这样。更有意思的是,在系统启动以及用户登录或注销时,还可以让系统执行特定的操作。本文,我们将探讨一下在 Linux 操作系统中实现这些目标的传统方法。注意:我们假定使用的是 Bash 作为登录及...

weixin_29045001的博客 180

frp内网穿透(socks隧道)

在实验过程中还是遇到了挺多的问题,但好在大多都解决了。不过还是遗留了一些不懂的问题,等以后再慢慢研究了。最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习。

2301_76227305的博客 1万+

基于情感分析+聚类分析+LDA主题分析对服装产品类的消费者评论分析

本研究旨在通过对服装产品类的消费者评论进行综合分析,为企业提供更全面、更深入的市场洞察和决策支持。同时,本研究的方法和结果也可以为其他领域的消费者评论分析提供借鉴和参考。

m0_64336780的博客 2万+

详解如何在 Linux 启动时自动执行命令或脚本

我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情。按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟。当你注销或者关机时,也是这样。 更有意思的是,在系统启动以及用户登录或注销时,还可以让系统执行特定的操作。 本文,我们将探讨一下在 Linux 操作系统中实现这些目标的传统方法。 注意:我们假定使用的是 Bash...

weixin_30314631的博客 128

KMD 核心功能模块——命令提交与调度:Ring Buffer 与硬件引擎交互

《KMD 中的中断与同步机制——从 Fence 到 Timeline Semaphore 的深度解析》GPU 需要持续接收命令,但硬件执行是流式处理。Ring Buffer 作为。导致 CVE-2022-1234(GPU 挂起),修复后强制检查。:命令提交延迟从 50μs 降至 5μs(20 倍提升)。,CPU 通过写入该地址更新指针(避免直接操作寄存器)。,实现 CPU 与 GPU 的高效协同。),GPU 读指针更新是硬件自动完成的。(通过硬件状态机),实现真正的零等待。AMDGPU 驱动曾因。

amy_mhd的博客 83

【Linux】如何在linux系统重启或启动时执行命令或脚本(也支持docker容器内部)

我们知道linux在启动时,可以通过systemctl或者chkconfig来设置某个服务开机自启,但是有时我们需要在系统启动时添加自定义脚本、命令或服务,该怎么做?介绍三种方法,我只用过第一种。

A-Itfuture的博客 4078

边缘设备部署全攻略——ARM架构设备的OpenClaw优化(2026实测)

本文详细介绍了ARM架构设备上OpenClaw的部署与优化方案。针对边缘计算场景,文章系统分析了三类ARM设备:嵌入式设备(如Raspberry Pi 4、Jetson Nano)、工业设备(如BeagleBone、i.MX8M Plus)和服务器设备(如Marvell Armada、AWS Graviton3),并提供了详细的性能与功耗对比数据。在系统配置方面,重点推荐了Ubuntu ARM、Debian ARM和OpenWRT三种操作系统,包括内核版本、必备软件包和针对边缘环境的优化策略(如CPU频率调

博客 410

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

如何在linux系统重启或启动时执行命令或脚本

你可以创建一个systemd服务文件,然后设置它在启动时运行。例如,你可以创建一个文件。:Crontab是一个用于设置周期性被执行的任务的工具。在crontab中,有一个特殊的时间字符串。注意,你需要确保你的脚本有执行权限,你可以在Dockerfile中使用。在Linux系统中,有多种方法可以在系统启动或重启时执行命令或脚本。,它可以用来设置在系统启动时运行的任务。例如,如果你想在每次系统启动时运行。在Docker容器中,你可以在Dockerfile中使用。指令来设置在容器启动时运行的命令或脚本。

jghhh01的博客 514

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

蓝易云 - 【Linux】如何在linux系统重启或启动时执行命令或脚本(也支持docker容器内部)

本文详细介绍了Linux系统中实现开机自动执行命令/脚本的多种方法,涵盖系统级(systemd、rc.local)、用户级(crontab)和容器级(Docker)方案。重点推荐使用systemd服务作为企业级解决方案,提供稳定、可控的执行环境;对于轻量容器场景建议采用Docker ENTRYPOINT方式,个人任务则可选用crontab的@reboot功能。文章通过执行流程图解和优劣对比表,帮助用户根据实际需求选择最佳实践方案,最终实现脚本在系统启动时的可靠执行。

高性价比服务器就选:蓝易云 1061

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

linux后台启动sh_如何在重启或启动时执行命令或脚本 | Linux 中国

有时你需要在启动时添加自定义脚本、命令或服务,该怎么做?来源:https://linux.cn/article-12279-1.html作者:Magesh Maruthamuthu译者:geekpi众所周知 Linux 可以在启动时添加服务。例如,如果要在 启动时添加 Apache Httpd 服务,你可以在 chkconfig 和 systemctl 命令的帮助下完成此操作。有时你需要在启动时添...

weixin_34515820的博客 2315

linux默认启动执行命令,如何在 Linux 启动时自动执行命令或脚本

8种机械键盘轴体对比本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?本篇博客将探讨一下在 Linux 操作系统中如何实现在启动时执行命令或脚本。1. 检查配置文件首先我们要提到一个rc配置文件,rc.local文件。cat /etc/rc.d/rc.local可以看到配置文件的解释说明,这是一个用户个性化设置的脚本文件。#!/bin/bash# THIS FILE IS ADDED FO...

weixin_39638859的博客 487

777后无效 执行chmod_如何在重启或启动时执行命令或脚本 | Linux 中国

有时你需要在启动时添加自定义脚本、命令或服务,该怎么做?https://linux.cn/article-12279-1.html作者:Magesh Maruthamuthu译者:geekpi众所周知 Linux 可以在启动时添加服务。例如,如果要在启动时添加Apache Httpd 服务,你可以在chkconfig和systemctl命令的帮助下完成此操作。有时你需要在启动...

weixin_39913628的博客 230

linux下配置自动运行方法

Linux环境下,配置打开终端自动运行某个命令,配置开机自动运行

qq_45670495的博客 2452
上一篇: 在 Cenntos6.8 下安装 Oracle11g
下一篇: Linux Powershell 安装教程
学习Linux棒棒哒
博客等级 码龄16年 12粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值