linux开机自启动设置方法

1.开机启动时自动运行程序

Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程序。例如:编辑 /etc/rc.d/rc.local 文件,在文件最末加上一行"xinit"或"startx",可以在开机启动后直接进入X-Window。

2.登录时自动运行程序
用户登录时,bash首先自动执行系统管理员建立的全局登录script :/ect/profile。然后bash在用户起始目录下按顺序查找三个特殊文件中的一个:/.bash_profile、/.bash_login、 /.profile,但只执行最先找到的一个。
因此,只需根据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于 DOS下的Autoexec.bat)。

3.退出登录时自动运行程序
退出登录时,bash自动执行个人的退出登录脚本 /.bash_logout。例如,在/.bash_logout中加入命令"tar -cvzf c.source.tgz *.c",则在每次退出登录时自动执行 "tar" 命令备份 *.c 文件。

4.定期自动运行程序
Linux有一个称为crond的守护程序,主要功能是周期性地检查 /var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些文件中的命令。用户可以通过crontab 命令来建立、修改、删除这些命令文件。
例如,建立文件crondFile,内容为"00 9 23 Jan * HappyBirthday",运行"crontab cronFile"命令后,每当元月23日上午9:00系统自动执行"HappyBirthday"的程序("*"表示不管当天是星期几)。

5.定时自动运行程序一次
定时执行命令at 与crond 类似(但它只执行一次):命令在给定的时间执行,但不自动重复。at命令的一般格式为:at [ -f file ] time ,在指定的时间执行file文件中所给出的所有命令。也可直接从键盘输入命令:

 代码如下 复制代码

$ at 12:00
at>mailto Roger -s ″Have a lunch″ < plan.txt
at>Ctr-D
Job 1 at 2000-11-09 12:00

设置服务自启动的三种方式

主要用三种方式进行这一操作:

ln -s                       在/etc/rc.d/rc*.d目录中建立/etc/init.d/服务的软链接(*代表0~6七个运行级别之一)

chkonfig                命令行运行级别设置

ntsysv                   伪图形运行级别设置

 注意:

1.这三种方式主要用于以redhat为基础的发行版

2.如果还不知道运行级别是什么,那么最好先看看相关资料再实验

 第一种方式:ln -s 建立启动软连接
在Linux中有7种运行级别(可在/etc/inittab文件设置),每种运行级别分别对应着/etc/rc.d/rc[0~6].d这7个目录

Tips:/etc/rc[0~6].d其实是/etc/rc.d/rc[0~6].d的软连接,主要是为了保持和Unix的兼容性才做此策

 

这7个目录中,每个目录分别存放着对应运行级别加载时需要关闭或启动的服务

由详细信息可以知道,其实每个脚本文件都对应着/etc/init.d/目录下具体的服务

K开头的脚本文件代表运行级别加载时需要关闭的,S开头的代表需要执行

因此,当我们需要开机启动自己的脚本时,只需要将可执行脚本丢在/etc/init.d目录下,然后在/etc/rc.d/rc*.d中建立软链接即可

[root@localhost ~]# ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S100ssh

此处sshd是具体服务的脚本文件,S100ssh是其软链接,S开头代表加载时自启动

如果需要在多个运行级别下设置自启动,则需建立多个软链接

这种方式比较繁琐,适用于自定义的服务脚本

如果系统中已经存在某些服务(比如安装apache时就会有httpd服务项),可以使用下面的两种方式

 

第二种方式:chkconfig

如果需要自启动某些服务,只需使用chkconfig 服务名 on即可,若想关闭,将on改为off

在默认情况下,chkconfig会自启动2345这四个级别,如果想自定义可以加上--level选项

上面我们先将sshd服务的所有启动级别关闭,然后使用--level选项启动自定义级别

Tips:--list选项可查看指定服务的启动状态,chkconfig不带任何选项则查看所有服务状态

 

第三种方式:ntsysv 伪图形

ntsysvchkconfig其实是一样的,只不过加上了图形而已

启动ntsysv有两种方式,一是直接在命令行中输入ntsysv,二是使用setup命令,然后选择系统服务

默认情况下,当前运行级别为多少,在ntsysv中设置的启动服务的级别便是多少

比如,我当前的运行级别是3,那么我在伪图形界面中选择启动服务后,它的运行级别也会是3

如果想自定义运行级别可使用ntsysv --level方式

 

以上三种操作需要保证服务脚本文件可执行,并且要有root权限

其中,第一种方式多用于自定义脚本,第二、三种多用于系统已存在的服务

比如ftp、samba、ssh、httpd等等

并且,要做相关设置需要弄清楚运行级别的问题

 

Tips:如果想手动启动某服务,传统的方式是 /etc/init.d 服务名 start

           实际上还可以这样,service 服务名 start

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文件
, 程序
, 系统
, 链接
, 时间
用户
linux设置开机自启动、linux 开机自启动、linux 开机自启动脚本、linux服务开机自启动、linux 程序开机自启动,以便于您获取更多的相关知识。

时间: 2024-09-28 08:00:27

linux开机自启动设置方法的相关文章

linux开机自启动设置inittab详解

linux下的/etc/inittab中的英文解释: This file describes how the INIT process should set up  the system in a certain run-level.The inittab file describes which processes are started  at  bootup  and      during  normal operation. 通俗的说就是控制linux启动时的一些程序及级别. run-

Android编程实现应用程序开机自启动的方法

本文实例讲述了Android编程实现应用程序开机自启动的方法.分享给大家供大家参考,具体如下: Android在开机时自动启动一个应用程序 在启动时自动启动一个应用程序: 1.AndroidManifest.xml <receiver android:enabled="true" android:name=".BootUpReceiver" android:permission="android.permission.RECEIVE_BOOT_COM

详解CentOS设置程序开机自启动的方法_Linux

在CentOS系统下,主要有两种方法设置自己安装的程序开机启动. 1.把启动程序的命令添加到/etc/rc.d/rc.local文件中,比如下面的是设置开机启动httpd. #!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the fu

Linux服务开机自启动设置

Linux中也有类似于Window中的开机自启动服务,主要是通过chkconfig命令来设置.它主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 参数说明: [root@DB-Server rc2.d]# chkconfig --help chkconfig version 1.3.30.2 - Copyright (C) 1997-2000 Red Hat, Inc. This may be freely

Linux开机自启动

  永久打开或则关闭 chkconfig iptables on chkconfig iptables off 即时生效,重启后还原 service iptables start service iptables stop 开机默认VSFTP服务自动启动:方法一:(常用\方便)[root@localhost etc]# chkconfig --list|grep vsftpd ( 查看情况)vsftpd          0:off   1:off   2:off   3:off   4:off

iPhone怎么设置开机密码?iPhone开机密码设置方法

在iPhone中有专门的开机密码设置选项,默认状态为关闭,即不加密,下面一步步教您完成密码设置: 第1步.打开iPhone并找到"设置"图标,猛击进入: 第2步.在"设置"选项中,找到"通用"分项图标,点击进入; 第3步.找到"密码锁定"选项,默认状态为"关闭",点击进入详细设置; 第4步.点击"打开密码".手机有两种密码设置方式,默认为"简单密码",由0-9的4位数

Linux php时区设置方法总结

大陆内地可用的值是:Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次为重庆,上海,乌鲁木齐) 港台地区可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北) 还有新加坡:Asia/Singapore 其他可用的值是:Etc/GMT-8 ,Singapore ,Hongkong ,PRC 一,Linux设置时区,以CentOS5.5为例:  代码如下 复制代码 cp -f /usr/share/z

Win8笔记本取消开盖自动开机的设置方法

  取消Win8笔记本开盖自动开机的方法: 1.同时按下Windows+X键,选择"电源选项". 2.在电源管理中,点击左侧的"选择关闭盖子的功能". 3.将"关闭盖子时"旁的两个选项都改为"不采取任何操作". 依照这样几步简单操作,关闭自动开机是不是安全了很多呢?再也不用担心资源浪费损害电脑了.

win7开机加速设置方法

  要设置一下启动系统所需要的处理器核心数量,因为win7系统默认启动是用一个处理器的核心的,我们可以增加它的数量.点击开始菜单运行,如果没有也可以win+r键盘组合键打开. 然后在运行框中输入msconfig,然后点击确定打开(我们关于很多启动方面的设置都是在这里开始的). 点击"引导"--"高级选项",可以看到"处理器数"前面的复选框默认不是选定的,我们用鼠标选定它,如图所示,然后点击下面的菜单,你的处理器是几核的就会显示数字几,比如我的处理