Linux如何配置自启动服务? (linux 配置自启动)

Linux是一款开源的操作系统,使用范围广泛,具有高度的可定制性和安全性。Linux系统下的各种服务和应用程序能够以自启动的方式在后台运行,提高系统的效率和稳定性。在本文中,我们将介绍Linux如何配置自启动服务。

一、服务介绍

在Linux系统中,服务是指在后台运行的应用程序。这些服务可以在系统启动时自动启动,也可以根据需要手动启动。服务可以通过系统服务管理器systemd来管理,systemd是Linux下广泛使用的init系统,它是Linux系统中最常见的系统管理器。

二、服务列表

在Linux中,可以通过以下命令查看系统中所有服务的列表:

$ systemctl list-unit-files –type=service

这个命令将显示所有在系统中可用的服务列表,其中包括所有开机启动的服务以及需要手动启动的服务。

三、配置自启动服务

要将服务设置为自启动服务,在Linux中有两种方法:

1、通过systemd管理器:

使用systemd管理器,我们需要使用以下命令:

$ sudo systemctl enable

这个命令将告诉systemd管理器,在启动时自动运行指定的服务。替换掉””为实际的服务名称。

例如,要将Apache2服务器设置为自启动服务,我们需要使用以下命令:

$ sudo systemctl enable apache2

2、手动配置:

我们可以手动将服务添加到启动文件中。启动文件位于/etc/init.d目录中,使用vi编辑器来打开它:

$ sudo vi /etc/init.d/service-name

通过编辑启动文件,我们可以将服务添加到启动文件中并保存。然后,通过以下命令将它设置为自启动服务:

$ sudo update-rc.d service-name defaults

这条命令将在系统启动时启动指定的服务,确保其一直在后台运行。

四、手动启动与停止服务

有时候,我们需要手动启动或停止某个服务。为此,我们可以使用以下命令:

手动启动服务:

$ sudo systemctl start

手动停止服务:

$ sudo systemctl stop

例如,我们可以通过以下命令手动启动Apache2服务器:

$ sudo systemctl start apache2

五、管理已启动的服务

一旦服务启动,我们可以使用以下命令来控制它们:

查看已启动的服务:

$ sudo systemctl status

停止或重启服务:

$ sudo systemctl stop

$ sudo systemctl restart

例如,我们可以通过以下命令查看已启动的Apache2服务器的状态:

$ sudo systemctl status apache2

结论

相关问题拓展阅读:

Linux系统如何将某一程序设置为开机自启动,linux 小白求详细讲解……

/早辩此etc/profile 系统的环境参数和启动程序

需要用陆迅root权限改写。灶禅

Linux开机启动程序详解

我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作滚漏系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤。

加载内核

LILO启动之后,如果你选择了Linux作为准备引导的操作系统,之一个被加载的东西就是内核。请记住此时的计算机内存中还不存在任何操作系统,PC(因为它们天然的设计缺陷)也还没有办法存取机器上全部的内存。因此,内核就必须完整地加载到可用RAM的之一个兆字节之内。为了实现这个目的,内核是被压缩了的。这个文件的头部包含着必要的代码,先设置CPU进入安全模式(以此解除内存限制),再对内核的剩余部分进行解压缩。

执行内核

内核在内存中解压缩之后,就可以开始运行了。此时的内核只知道它本身内建的各种功能,也就是说被编译为模块的内核部分还不能使用。最基本的是,内核必须有足够的代码设置自己的虚拟内存子系统和根文件系统(通常就是ext2文件系统)。一旦内核启动运行,对硬件的检测就会决定需要对哪些设备驱动程序进行初始化。从这里开始,内核就能够挂装根文件系统(这个过程类似于Windows识别并存取C盘的过程)。内核挂装了根文件系统之后,将启动并则差运行一个叫做init的程序。

注意:在这里我们故意略去了Linux内核启动的许多细节,这些细节只有内核开发人员才感兴趣。如果你好奇的话,可以访问http://

www.redhat.com

:8080地址处的”Kernel Hackers Guide”。

init进程

init进程是非内核进程中之一个被启动运行的,因此它的进程编号PID的值总是1。init读它的配置文件/etc/inittab,决定需要启动的运行级别(Runlevel)。从根本上说,运行级别规定了整个系统的行为,每个级别(分别由0到6的整数表示)满足特定的目的。如果定义了initdefault级别,这个值就直接被选中,否则需要由用户输入一个代表运行级别的数值。

输入代表运行级别的数字之后,init根据/etc/inittab文件中的定义执行一个命令脚本程序。缺省的运行级别取决于安装阶段对登录程序的选择:是使用基于文本的,还是使用基于X-Window的登录程序。

rc命令脚本程序我们已经知道,当运行级别发生改变时,将由/etc/inittab文件定义需要运行哪一个命令脚本程序。这些命令脚本程序负责启动或者停止该运行级别特定的各种服务。由于需要管理的服务数量很多,因此需要使用rc命令脚本程序。其中,最主要的一个是/etc/rc.d/rc,它负责为每一个运行级别按照正确的顺序调用相应的命令脚本程序。我们可以想象,这样一个命令脚本程序很容易变得难以控制!为了防止这类事件的发生,需要使用精心设计的方案。

对每一个运行级别来说,在/etc/rc.d子目录中都有一个对应的下级目录。这些运行级别的下级子目录的命名方法是rcX.d,其中的X就是代表运行级别的数字。比如说,运行级别3的全部命令脚本程序都保存在/etc/rc.d/rc3.d子目录中。在各个运行级别的子目录中,都建立有到/etc/rc.d/init.d子目录中命令脚本程序的符号链接,但是,这些符号链接并不使用命令脚本程序在/etc/rc.d/init.d子目录中原来的名字。如果命令脚本程序是用来启动一个服务的,其符号链接的名字就以字母S打头;如果命令脚本程序是用来关闭一个服务的,其符号链接的名字就以字母K打头。

许多情况下,这些命令脚本程序的执行顺序都很重要。如果没有先配置网络接口,就没有办法使用DNS服务解析主机名!为了安排它们的执行顺序,在字母S或者K的后面紧跟着一个两位数字,数值小的在数值大的前面执行。比如:/etc/rc.d/rc3.d/S50inet就会在/etc/rc.d/rc3.d/S55named之前执行(S50inet配置网络设置,55named启动DNS服务器)。存放在/etc/rc.d/init.d子目录中的、被符号链接上的命令脚本程序是真正的实干家,是它们完成了大盯烂启动或者停止各种服务的操作过程。当/etc/rc.d/rc运行通过每个特定的运行级别子目录的时候,它会根据数字的顺序依次调用各个命令脚本程序执行。它先运行以字母K打头的命令脚本程序,然后再运行以字母S打头的命令脚本程序。对以字母K打头的命令脚本程序来说,会传递Stop参数;类似地对以字母S打头的命令脚本程序来说,会传递Start参数。编写自己的rc命令脚本在维护Linux系统运转的日子里,肯定会遇到需要系统管理员对开机或者关机命令脚

本进行修改的情况。

有两种方法可以用来实现修改的目的:

●如果所做的修改只在引导开机的时候起作用,并且改动不大的话,可以考虑简单地编辑一下/etc/rc.d/rc.local脚本。这个命令脚本程序是在引导过程的最后一步被执行的。

●如果所做的修改比较细致,或者还要求关闭进程使之明确地停止运行,则需要在/etc/rc.d/init.d子目录中添加一个命令脚本程序。这个命令脚本程序必须可以接受Start和Stop参数并完成相应的操作。

之一种方法,编辑/etc/rc.d/rc.local脚本,当然是两种方法中比较简单的。如果想在这个命令脚本程序中添加内容,只需要使用喜欢的编辑器程序打开它,再把打算执行的命令附加到文件的末尾就可以了。这对一两行的修改来说的确很便利。

如果确实需要使用一个命令脚本程序,这时必须选择第二个方法。编写一个rc命令脚本程序的过程并不像想象中那么困难。我们下面就给出一个例子,看看它是怎样实现的(顺便说一句,你可以把我们的例子当作范本,按照自己的需要进行修改和添加)。

假设你打算每隔60分钟调用一个特殊的程序来弹出一条消息,提醒自己需要从键盘前面离开休息一会儿,命令脚本程序将包括下面几个部分:

●关于这个命令脚本程序功能的说明(这样就不会在一年之后忘记它);

●在试图运行它之前验证这个命令脚本程序确实存在;

●接受start和stop参数并执行要求的动作。

参数给定后,我们就可以编写命令的脚本程序。这个程序很简单,大家可以自己编写一下,我在这里就不给出了。

编写好新的命令脚本程序之后,再从相关的运行级别子目录中加上必要的符号链接,来控制这个命令脚本程序的启动或者停止。在我的印象中,只想让它在运行级别3或者运行级别5中启动,原因是我认为只有这两个运行级别才是日常工作的地方。最后,希望这个命令脚本程序在进入运行级别6(重启动)的时候被关闭。

激活或者禁止服务项目有的时候会发现,在引导的时候并不需要某个特定的服务被启动。如果你正在考虑使用Linux替换Windows NT的文件和打印服务器,就更是如此。我们已经知道,在特定的运行级别子目录中给符号链接改个名称,就可以让该服务不被启动,如把其名称的之一个字母由S改为K。一旦熟练掌握了命令行和符号链接,就会发现这是激活或者禁止服务的最快办法。

在学习这个改名方法的时候,可能会觉得图形化的操作界面ksysv比较容易掌握。虽然它原来是设计使用在KDE环境里的,但在Red HatLinux 7.2下缺省安装的GNOME环境里也运行得很好。如果想启动它,只需简单地打开一个xterm窗口,并输入ksysv命令就可以了。屏幕上会出现一个窗口,其中列出了能够修改的全部参数,需要时还包括在线帮助。警告:如果是在一个现实中的系统上学习本文的知识,要多多运用常识。当试着对启动脚本程序进行修改的时候,要记住所做的修改可能会造成你的系统不能正常工作,而且无法采用重启动的方法恢复。不要在正常运转的系统上实验新的设置,对你准备修改的文件要全部进行备份。最重要的是,在手边要准备一张引导盘以防不测。

如何配置Linux的服务设置为自动启动或崩溃重新启动后

linux中设置自动启动可以编辑/etc/rc.d/rc.local文件,使用vim在/etc/rc.d/rc.local添加你需要启动的内容即可。

rc.local在在系统启动后执行,在用户登陆前执行

rc.local脚本是一个在各运行级别里衫拆到rc.d目录的rc.local脚本的软链接,编号更大,所以被rc脚本执行时在各运行级别的初始化末尾进行。

在rc.local里设置是系统级别而非用户级别,因为启动脚本的初始化与用户无关(启动脚本初始化完成后,或乎枣才进入用户登录界面)。与用户相关的设置顷明shell的配置文件如: ~/.bash_profile。

linux 配置自启动的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux 配置自启动,Linux如何配置自启动服务?,Linux系统如何将某一程序设置为开机自启动,linux 小白求详细讲解……,如何配置Linux的服务设置为自动启动或崩溃重新启动后的信息别忘了在本站进行查找喔。


数据运维技术 » Linux如何配置自启动服务? (linux 配置自启动)