接下来,我们来看一下linux系统中的进程与服务。
那么何为进程,何为服务呢?
在计算机中,一个正在执行的程序或命令,被叫做“进程”(process)
启动之后一直存在、常驻内存的进程,一般称之为“服务”(service)
Linux中服务管理一般有两个命令,serveice、systemctl。
一:service服务管理
这个是centos6以及之前的版本使用的服务管理。目前了解即可。
service命令其实是去/etc/init.d目录下,去执行相关程序,init.d目录包含许多系统各种服务的启动和停止脚本。当Linux启动时,会寻找这些目录中的服务脚本,并根据脚本的run level确定不同的启动级别。
1:语法
arduino
复制代码
service 服务名称 start | stop | status | restart
下面我们来测试一下:重启ubuntu虚拟机中的nginx
复制代码
sudo service nginx restart
如下图所示:
2:查看service的服务
在终端中执行:
bash
复制代码
ll /etc/init.d/
如下图所示:
这样就列出了,目前在系统服务中的所有软件。挑了几个我们认识的。Cron:定时任务、nginx:web服务器、ssh:远程链接、vaware-tools:虚拟机屏幕自适应。
二:systemctl 服务管理
这个命令,是centos7及以后的版本在使用的系统服务管理命令,当然,这并不代表service这个命令就不能用了。但是更推荐使用systemctl
1:命令格式
bash
复制代码
systemctl start | stop | status | restart | disable | enable | show | kill | reload 服务名
2:测试一下
我们来看一下nginx服务的状态:
lua
复制代码
systemctl status nginx
如下图所示:
3:查看systemctl服务进程
Systemctl服务的文件都放在/usr/lib/systemd/system(/lib/systemd/system)(/etc/systemd/system)目录下,执行
bash
复制代码
ll /usr/lib/systemd/system
如下图所示:
通过对比,我们可以发现,目前主要的服务还都是在systemctl服务下的,通过总用量对比即可发现。