首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux下开机自动启动脚本

基础概念

Linux系统开机自动启动脚本是指在系统启动时自动执行的脚本程序。这些脚本通常用于启动服务、应用程序或其他需要在系统启动时运行的任务。

相关优势

  1. 自动化:减少手动操作,提高效率。
  2. 稳定性:确保关键服务在系统启动时自动启动,减少系统故障的风险。
  3. 灵活性:可以根据需要添加或删除启动脚本,适应不同的系统配置和应用需求。

类型

  1. 系统级脚本:通常位于 /etc/init.d/ 目录下,使用 chkconfigsystemctl 管理。
  2. 用户级脚本:通常位于用户的 ~/.bashrc~/.profile 文件中,用于设置用户环境变量或启动用户特定的应用程序。

应用场景

  1. 服务启动:如数据库服务器、Web服务器等。
  2. 系统监控:如日志监控、系统健康检查等。
  3. 用户环境设置:如设置用户特定的环境变量、启动桌面环境等。

实现方法

使用 systemd

systemd 是现代Linux系统中常用的初始化系统,可以通过创建服务单元文件来实现开机自动启动。

  1. 创建服务单元文件
  2. 创建服务单元文件
  3. 编辑服务单元文件
  4. 编辑服务单元文件
  5. 启用并启动服务
  6. 启用并启动服务

使用 init.d

init.d 是传统的Linux初始化系统,可以通过创建脚本并使用 chkconfig 管理。

  1. 创建脚本文件
  2. 创建脚本文件
  3. 编辑脚本文件
  4. 编辑脚本文件
  5. 设置脚本权限
  6. 设置脚本权限
  7. 启用并启动服务
  8. 启用并启动服务

可能遇到的问题及解决方法

脚本未执行

原因:可能是脚本路径错误、权限不足或脚本内容有误。

解决方法

  • 检查脚本路径是否正确。
  • 确保脚本具有执行权限:
  • 确保脚本具有执行权限:
  • 检查脚本内容是否有语法错误。

服务启动失败

原因:可能是依赖的服务未启动、脚本内容有误或系统资源不足。

解决方法

  • 检查依赖的服务是否已启动。
  • 使用 journalctl 查看服务日志:
  • 使用 journalctl 查看服务日志:
  • 确保系统资源充足,如内存、CPU等。

参考链接

通过以上方法,你可以实现Linux系统下的开机自动启动脚本,并解决可能遇到的问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 【Zookeeper】Linux下实现zookeeper开机自动启动搭建集群

    服务脚本和启动脚本备份 个人准备了两份脚本文件,需要的时候可以直接下载上传到服务器,稍微修改配置之后,按照下文的步骤操作,即可快速实现开机自动搭建集群。...STOPPED 2、添加开机启动脚本zookeeper文件到/etc/rc.d/init.d目录(centos机器) 创建文件zkAuto-start.sh到对应的/etc/rc.d/init.d...chown root:root zkAuto-start.sh 然后在自己执行尝试一下 ./zkAuto-start.sh start 3、添加到开机服务 把新建的脚本设置为开启启动服务。...开机自动组成ZK集群 我们把这个开机启动脚本放到其他几台机器对应的目录下面,然后按照上面的步骤执行一遍即可。这样之后只需要启动三台虚拟机就可以自动构建集群了,非常方便。...参考资料 Linux下安装zookeeper、配置zookeeper开机自启动 - java先生 - 博客园 (cnblogs.com)

    1.1K10

    如何优雅的在 Linux 下开机自动重启脚本

    1 简介 经常碰到机器断电之后需要重启一大堆服务,为了防止这种事情发生,设置开机自启的脚本十分的重要,我们习惯性的做法就是编写一个重启脚本,然后在 /etc/rc.local 中去完成开机执行。...首先在命令行输入: $ crontab -e 然后添加以下内容: @reboot /root/script/restart.sh 完成后,这个脚本就可以在重启的时候自动执行了。...其它的一些进阶玩法: 在启动完成后的指定时间内运行脚本 # 在启动 5 分钟后运行指定脚本 @reboot sleep 300 && /home/wwwjobs/clean-static-cache.sh...default.target 然后启用这个 Systemd 服务: $ systemctl daemon-reload $ systemctl enable restart.service 完成后,这个服务对应的脚本就可以自动开机自启了...4 参考文档 https://www.google.com https://tinyurl.com/6ryafefw https://www.cyberciti.biz/faq/linux-execute-cron-job-after-system-reboot

    4.4K31

    如何优雅的在 Linux 下开机自动重启脚本

    1简介 经常碰到机器断电之后需要重启一大堆服务,为了防止这种事情发生,设置开机自启的脚本十分的重要,我们习惯性的做法就是编写一个重启脚本,然后在 /etc/rc.local 中去完成开机执行。...首先在命令行输入: $ crontab -e 然后添加以下内容: @reboot /root/script/restart.sh 完成后,这个脚本就可以在重启的时候自动执行了。...其它的一些进阶玩法: 在启动完成后的指定时间内运行脚本 # 在启动 5 分钟后运行指定脚本 @reboot sleep 300 && /home/wwwjobs/clean-static-cache.sh...default.target 然后启用这个 Systemd 服务: $ systemctl daemon-reload $ systemctl enable restart.service 完成后,这个服务对应的脚本就可以自动开机自启了...4参考文档 https://www.google.com https://tinyurl.com/6ryafefw https://www.cyberciti.biz/faq/linux-execute-cron-job-after-system-reboot

    4.8K10

    【Zookeeper】Linux下实现zookeeper开机自动启动搭建集群

    服务脚本和启动脚本备份个人准备了两份脚本文件,需要的时候可以直接下载上传到服务器,稍微修改配置之后,按照下文的步骤操作,即可快速实现开机自动搭建集群。...关闭自启动:systemctl disable zookeeper.service启动脚本方法1、安装zookeeper可以参考这一篇:[【Zookeeper】基于3台linux虚拟机搭建zookeeper...chown root:root zkAuto-start.sh然后在自己执行尝试一下./zkAuto-start.sh start3、添加到开机服务把新建的脚本设置为开启启动服务。...开机自动组成ZK集群我们把这个开机启动脚本放到其他几台机器对应的目录下面,然后按照上面的步骤执行一遍即可。这样之后只需要启动三台虚拟机就可以自动构建集群了,非常方便。...参考资料Linux下安装zookeeper、配置zookeeper开机自启动 - java先生 - 博客园 (cnblogs.com)

    1.1K30

    Red Hat Enterprise Linux 7.4下设置Oracle开机自动启动

    在Linux系统中,安装好Oracle数据库服务后,并不像在Windows系统下一样,Oracle服务在默认情况下会随系统的启动自动启动。...Linux系统中,是需要用户去手动进行设置,才能实现Oracle开机自动启动的。本文将一步一步教你如何进行设置。...,让系统开机就去执行dbstart脚本文件,它会去读oratab文件,读到Y就会把对应的实例开机自启动 --调整或确认监听路径,如ORACLE_HOME_LISTNER=/u01/app/oracle/...,实例用一个dbstart命令去启动,它会去读oratab文件,读到Y就会把对应的实例开机自启动 7、小结: linux下设置实例自启动有关脚本: oratab:实例是否自启动的注册信息 dbstart...:开机启动脚本文件会读取oratab信息 rc.local:开机后立即要做的文件 --“启动监听” lsnrctl start --“启动数据库实例” dbstart --“关闭数据库实例” dbshut

    2.1K10

    linux部署jar包脚本和注册开机启动

    前言 之前开发了windows部署jar包为服务的工具在实际生产环境中使用非常简单方便,公司部分项目是部署在linux系统中的,所以决定整合一个通用的jar包部署脚本,并注册为开机启动服务,为开发实施的同事提供方便...,以下操作实际系统环境为centos8 通过脚本启动 安装jdk,可以不配置环境变量 脚本和部署jar包放置在同一个文件夹 修改脚本deploy.sh中的JAVA_HOME指向jdk目录,.../deploy.sh stop 注册服务启动 需要执行完毕【通过脚本启动】步骤配置内容 修改deploystart.sh和deploystop.sh脚本内容重的cd路径为【通过脚本启动】步骤拷贝到的项目路径...ExecStop=/etc/systemd/system/deploystop.sh PrivateTmp=true [Install] WantedBy=multi-user.target 执行命令服务开机启动...systemctl enable deploy.service 执行命令取消服务开机启动 systemctl disable deploy.service 执行命令查看服务状态 systemctl status

    42040

    【详解】linux下配置mysql开机自启动

    Linux下配置MySQL开机自启动在Linux系统中,确保MySQL服务在系统启动时自动运行是一个常见的需求。这可以确保数据库服务始终可用,从而支持应用程序的正常运行。...enable mysql这个命令会在系统启动时自动加载MySQL服务。...手动启动和停止MySQL服务在某些情况下,你可能需要手动启动或停止MySQL服务。...设置MySQL服务为开机自启动:sudo chkconfig --level 35 mysqld on这里​​--level 35​​表示在运行级别3和5(多用户模式和图形界面模式)下启动MySQL服务...在Linux系统中,确保MySQL服务能够随系统启动而自动启动是一个常见的需求。这可以通过多种方法实现,具体取决于你的Linux发行版和你安装MySQL的方式。

    16510

    Linux下的Nginx安装(开机自启动)

    copy压缩包至linux的相应目录,例如:opt下的software,需要确认当前登录用户有权限进行解压和安装。...cd ../ 2)安装Nginx: tar nginx-0.8.54.tar.gz cd nginx-0.8.54 在这里需要对nginx的源码做一下小的处理,默认nginx是不支持静态文件的...大致意思是静态资源请求的处理方法中,如果发现请求方法为post提交则拒绝 接下来就是安装了 make && make install Nginx默认被安装在/usr/local/nginx 3)开机自启动...nginx 这里使用的是编写shell脚本的方式来处理 vi /etc/init.d/nginx  (输入下面的代码) #!...同样的修改了nginx的配置文件nginx.conf,也可以使用上面的命令重新加载新的配置文件并运行,可以将此命令加入到rc.local文件中,这样开机的时候nginx就默认启动了 vi /etc/rc.local

    3.6K20

    Linux开机启动(bootstrap)

    计算机开机是一个神秘的过程。我们只是按了开机键,就看到屏幕上的进度条或者一行行的输出,直到我们到达登录界面。...然而,计算机开机又是个异常脆弱的过程,我们满心期望的登录界面可能并不会出现,而是一个命令行或者错误信息。了解计算机开机过程有助于我们修复开机可能出现的问题。...最初始阶段 当我们打开计算机电源,计算机会自动从主板的BIOS(Basic Input/Output System)读取其中所存储的程序。...随后,内核会启动一个init进程。它是Linux系统中的1号进程(Linux系统没有0号进程)。到此,内核就完成了在计算机启动阶段的工作,交接给init来管理。...在此模式下,初始脚本还没有开始执行,我们可以检测并修复计算机可能存在的错误) 随后,init会运行一系列的初始脚本(startup scripts),这些脚本是Linux中常见的shell scripts

    8.3K80

    linux开机启动顺序

    LINUX 开机过程指的是从打开计算机电源直到LINUX显示用户登录画面的全过程。分析LINUX开机过程也是深入了解LINUX核心工作原理的一个很好的途径。...,启动完毕进行自动挂载文件) 接下来详细介绍启动进程: 启动第一步--BIOS加电自检   当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它...启动第八步--执行不同运行级别的脚本程序   根据运行级别的不同,系统会运行rc0.d到rc6.d中的相应的脚本程序,来完成相应的初始化工作和启动相应的服务。...如启动 3模式,会有个rc3。d目录,里面就保存着服务。其中,S(start)开头的表明开机启动,K(kill)开头的表明开机不启动。数字表示启动顺序。 数字越小,启动越早。   ...所以,如果需要什么开机启动的话,可以写个脚本或命令到这里面来。就不用像上面那么麻烦。以后删除也方便。

    8.3K100
    领券