Linux开机自启动的几种方式:

1.chkconfig

以supervisord服务脚本为例:

第1步:把上面的脚本放在/etc/init.d/文件

ln -s ./supervisord  /etc/init.d/supervisord

  第2步:将启动脚本权限改为可执行。

chmod a+x /etc/init.d/supervisord

  第3步:添加启动项。

chkconfig --add supervisord
chkconfig supervisord on

  第4步:检查是否设置成功。

chkconfig --list | grep supervisord
supervisord 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭

2、手动配置在文件中加入启动命令

/etc/rc.local

3、文件指向路径是/etc/init.d下的脚本文件

/etc/rc[0-6].d

0-6是linux操作系统的运行级别,运行runlevel查看当前运行级

运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限用户,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
/etc/rc[0-6].d目录下文件的命名规则:S|K + nn + script

S|K,S开头命名的是开机要执行的脚本,K开头命名的是关机要执行的脚本

nn取值0-100,表示优先级,数字越大,优先级越低

script是软链接指向的脚本的文件名

/etc/init.d目录下的控制脚本接受参数

-- start   //启动

-- stop //停止

-- restart //重启

-- status //状态

-- force-reload  //重新载入配置

update-rc.d命令为/etc/init.d目录下的脚本建立或删除到/etc/rc[0-6].d的软链接

增加一个服务
            添加这个服务并让它开机自动执行           
            update-rc.d apache2 defaults
           并且可以指定该服务的启动顺序:
           update-rc.d apache2 defaults 90
           还可以更详细的控制start与kill顺序:
           update-rc.d apache2 defaults 20 80
           其中前面的20是start时的运行顺序级别,80为kill时的级别。也可以写成:
           update-rc.d apache2 start 20 2 3 4 5 . stop 80 0 1 6 .
           其中0~6为运行级别。

删除一个服务
           update-rc.d -f apache2 remove

4、 设置程序的.desktop文件

通过将应用程序的.desktop文件放在自启动目录下,那么当用户登陆桌面环境时,就会自动启动这些应用程序。

linux中自启动目录是$XDG_CONFIG_DIRS/autostart和$XDG_CONFIG_HOME/autostart这两个,可以打印看一下,有的可能只有其中一个。

把设置好的.desktop放在这两个目录下,那么指定的程序就会在桌面环境启动时启动,当两个自启动目录同时存在相同的文件时,只会运行其中一个($XDG_CONFIG_HOME)。

program.desktop文件写法:

[Desktop Entry]
Name=program
Exec=/usr/bin/program
Type=Application
Comment=my program
只需要有这关键的几行就可以了,Exec的路径一定要正确。.desktop文件还有其他定制项,可参考其他文章。

5、crontab定时执行任务

周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]

cron的配置文件称为“crontab”,是“cron table”的简写

  service crond start //启动服务
  service crond stop //关闭服务
  service crond restart //重启服务
  service crond reload //重新载入配置
  service crond status //查看服务状态

# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed

每两个小时
0 */2 * * * echo "Have a break now." >> /tmp/test.txt

crontab -l  //在标准输出上显示当前的c
crontab -r // 删除当前的crontab文件。
crontab -e  //使用VISUAL或者EDITOR环境变量所指的编辑器编辑当前的crontab文件,当结束编辑离开时,编辑后的文件将自动安装。

除了数字还有几个个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内的数字,"/"代表每的意思,"/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。

linux开机启动设置的几种方法的更多相关文章

  1. Linux 添加开机启动项的三种方法

    linux 添加开机启动项的三种方法. (1)编辑文件 /etc/rc.local 输入命令:vim /etc/rc.local 将出现类似如下的文本片段: #!/bin/sh## This scri ...

  2. Linux 设置开机启动项的几种方法

    方法一:编辑rc.loacl脚本 Ubuntu开机之后会执行/etc/rc.local文件中的脚本. 所以我们可以直接在/etc/rc.local中添加启动脚本. $ vim /etc/rc.loca ...

  3. linux开机启动服务和chkconfig使用方法(自定义服务路径启动)

    服务概述在linux操作系统下,经常需要创建一些服务,这些服务被做成shell脚本,这些服务需要在系统启动的时候自动启动,关闭的时候自动关闭.将 需要自动启动的脚本/etc/rc.d/init.d目录 ...

  4. linux开机启动服务和chkconfig使用方法(转)

    每个被chkconfig 管理的服务需要在对应的/etc/rc.d/init.d 下的脚本加上两行或者更多行的注释. 第一行告诉 chkconfig 缺省启动的运行级以及启动和停止的优先级.如果某服务 ...

  5. linux 开机启动设置

    操作系统:Ubuntu12.04硬件环境:HP CQ45        当用户使用sudo apt-get install安装完apache和mysql之后,这些服务默认是开机启动的,但是有的时候需要 ...

  6. Ubuntu下添加开机启动项的2种方法

    1.方法一,编辑rc.loacl脚本 Ubuntu开机之后会执行/etc/rc.local文件中的脚本,所以我们可以直接在/etc/rc.local中添加启动脚本.当然要添加到语句:exit 0 前面 ...

  7. Linux 添加开机启动项的两种方法

      1.编辑文件 /etc/rc.localvim /etc/rc.local #!/bin/sh## This script will be executed *after* all the oth ...

  8. Linux 环境变量设置的几种方法

    From:http://home.eeworld.com.cn/home.php?mod=space&uid=291513&do=blog&id=40557 环境变量是和She ...

  9. Linux开机启动时执行脚本的方法

    方法 1 – 使用 rc.local利用 /etc/ 中的 rc.local 文件在启动时执行脚本与命令.我们在文件中加上一行来执行脚本,这样每次启动系统时,都会执行该脚本.不过我们首先需要为 /et ...

随机推荐

  1. 【SCOI2016】背单词

    P3294[SCOI2016]背单词 [提示] 这道题大概是告诉我们,让我们用一堆n个单词安排顺序,如果当前位置为x,当前单词的后缀没在这堆单词出现过,代价就为x,这里的后缀是原意,但不算自己(不算本 ...

  2. Arduino重置-复位问题

    转自: https://blog.csdn.net/y511374875/article/details/77845240 三种方式手动重启Arduino 1.Arduino板上重新编写代码时,Ard ...

  3. Tomcat 第六篇:类加载机制

    1. 引言 Tomcat 在部署 Web 应用的时候,是将应用放在 webapps 文件夹目录下,而 webapps 对应到 Tomcat 中是容器 Host ,里面的文件夹则是对应到 Context ...

  4. STM32之旅2——按键

    STM32之旅2--按键     几乎每个项目都有用到按键,为了避免以后在做大项目的时候还在琢磨按键怎么写,现在写一个,方便以后使用.这里是最简单的独立按键驱动方法,和学习51单片机是的一样,更好的方 ...

  5. centos 7.0 更改启动环境/启动进入图形界面/命令行模式

    当前我桌面模式 systemctl set-default multi-user.target ln -sf /lib/systemd/system/multi-user.target /etc/sy ...

  6. Mysql架构与内部模块-第一章

    Mysql作为大多数中小型企业的首选数据库,也可能是众多同僚接触的第一个数据库,其热门程度不言而喻,一些相对基础的知识本系列不做赘述,主要简述Mysql相关的进阶知识. 本章将由浅入深的讲解从连接My ...

  7. 编程福利:50本C语言电子书,你还怕没书看吗!

    推荐适合编程新手入门的几本经典的C语言书籍. 1.<C程序设计语言> C语言之父的著作,被称为C语言的的圣经.全球最经典的C语言教程.这本书最大的特点是精炼.读起来不会觉得"啰嗦 ...

  8. 氵0x a

    从今天开始记录这些东西,希望以后自己不出现在这上

  9. vim插件配置

    OS:kali linux tool:vim 上图: 0x00 需要用到的插件及其下载地址 左边的一栏显示文件目录结构的用到的插件为 NERDTree 下载地址:https://github.com/ ...

  10. 判断ip地址是属于国内还是国外

    一,如何判断一个ip地址是否属于国内? 我们以前使用淘宝提供的一个api地址进行判断,但经常出现打不开的报错, 因为只需要判断是国内或国外,于是考虑自己搞一个简单的. 分配给国内的ip地址在apnic ...