扣丁学堂Linux培训之如何查看系统运行管理程序

2018-11-26 13:50:15 430浏览

今天扣丁学堂Linux培训老师给大家详细介绍一下关于如何弄清Linux系统运行何种系统管理程序的详细介绍,希望对同学们有所帮助,我们大家都知道SystemV和systemd两种系统管理器。SystemV(简写SysV)是老式系统所使用的古老且传统的初始化系统及系统管理器,下面我们一起来看一下吧。



Systemd是全新的初始化系统及系统管理器,并且已被大部分主流Linux发行版所采用。

Linux系统中主要有三种有名而仍在使用的初始化系统。大多数Linux发行版都使用其中之一。

什么是初始化系统管理器?

在基于Linux/Unix的操作系统中,init(初始化的简称)是内核启动系统时开启的第一个进程。

它持有的进程ID(PID)号为1,其在后台一直运行着,直到关机。

init会查找/etc/inittab文件中相应配置信息来确定系统的运行级别,然后根据运行级别在后台启动所有的其它进程和应用。

作为Linux启动过程的一部分,BIOS、MBR、GRUB和内核进程在此进程之前就被激活了。

下面列出的是Linux的可用运行级别(存在七个运行级别,从0到6)。

0:停机

1:单用户模式

2:多用户,无NFS(LCTT译注:NFS即NetworkFileSystem,网络文件系统)

3:全功能多用户模式

4:未使用

5:X11(GUI–图形用户界面)

6:重启

下面列出的是Linux系统中广泛使用的三种初始化系统。

SystemV(SysV):是类Unix操作系统传统的也是首款初始化系统。

Upstart:基于事件驱动,是/sbin/init守护进程的替代品。

Systemd:是一款全新的初始化系统及系统管理器,它被所有主流的Linux发行版实现/采用,以替代传统的SysV初始化系统。

什么是SystemV(SysV)?

SystemV(SysV)是类Unix操作系统传统的也是首款初始化系统。init是系统由内核启动期间启动的第一个进程,它是所有进程的父进程。

起初,大多数Linux发行版都使用名为SystemV(SysV)的传统的初始化系统。多年来,为了解决标准版本中的设计限制,发布了几个替代的初始化系统,例如launchd、ServiceManagementFacility、systemd和Upstart。

但只有systemd最终被几个主流Linux发行版所采用,以替代传统的SysV。

什么是Upstart?

Upstart基于事件驱动,是/sbin/init守护进程的替代品。用来在启动期间控制任务和服务的启动,在关机期间停止它们,及在系统运行过程中监视它们。

它最初是为Ubuntu发行版开发的,但也可以在所有的Linux发行版中部署运行,以替代古老的SystemV初始化系统。

它用于Ubuntu9.10到14.10版本和基于RHEL6的系统中,之后的被systemd取代了。

什么是systemd?

systemd是一款全新的初始化系统及系统管理器,它被所有主流的Linux发行版实现/采用,以替代传统的SysV初始化系统。

systemd与SysV和LSB(LCTT译注:LinuxStandardsBase)初始化脚本兼容。它可以作为SysV初始化系统的直接替代品。其是内核启动的第一个进程并占有数字1的PID,它是所有进程的父进程。

Fedora15是第一个采用systemd而不是upstart的发行版。systemctl是一款命令行工具,它是管理systemd守护进程/服务(如start、restart、stop、enable、disable、reload和status)的主要工具。

systemd使用.service文件而不是(SysV初始化系统使用的)bash脚本。systemd把所有守护进程按顺序排列到自己Cgroups(LCTT译注:Cgroups是controlgroups的缩写,是Linux内核提供的一种可以限制、记录、隔离进程组所使用的物理资源,如:cpu、memory、IO等的机制。最初由Google的工程师提出,后来被整合进Linux内核。Cgroups也是LXC为实现虚拟化所使用的资源管理手段,可以说没有cgroups就没有LXC)中,所以通过查看/cgroup/systemd文件就可以查看系统层次结构。

在Linux上如何识别出系统管理器

在系统上运行如下命令来查看运行着什么系统管理器:

(LCTT译注:原文繁冗啰嗦,翻译时进行了裁剪整理。)

方法1:使用ps命令

ps–显示当前进程快照。ps会显示选定的活动进程的信息。其输出不能确切区分出是SystemV(SysV)还是upstart,所以我建议使用其它方法。

#ps-p1|grep"init\|upstart\|systemd"

1?00:00:00init

方法2:使用rpm命令

RPM即RedHatPackageManager(红帽包管理),是一款功能强大的安装包管理命令行工具,在基于RedHat的发行版中使用,如RHEL、CentOS、Fedora、openSUSE和Mageia。此工具可以在系统/服务上对软件进行安装、更新、删除、查询及验证等操作。通常RPM文件都带有.rpm后缀。

RPM会使用必要的库和依赖库来构建软件,并且不会与系统上安装的其它包冲突。

#rpm-qf/sbin/init

SysVinit-2.86-17.el5

方法3:使用/sbin/init文件

/sbin/init程序会将根文件系统从内存加载或切换到磁盘。

这是启动过程的主要部分。这个进程开始时的运行级别为“N”(无)。/sbin/init程序会按照/etc/inittab配制文件的描述来初始化系统。

#/sbin/init--version

init(upstart0.6.5)

Copyright(C)2010CanonicalLtd.

Thisisfreesoftware;seethesourceforcopyingconditions.ThereisNOwarranty;notevenforMERCHANTABILITYorFITNESSFORAPARTICULARPURPOSE.

以上就是扣丁学堂Linux培训之如何查看系统运行管理程序的详细介绍,希望对小伙伴们有所帮助,想要了解更多内容的小伙伴可以登录扣丁学堂官网咨询,此外还有与时俱进的Linux课程体系和Linux视频直播课供大家学习,想要学好Linux开发技术的小伙伴快快行动吧。扣丁学堂Linux技术交流群:422345477。

扣丁学堂微信公众号


【关注微信公众号获取更多学习资料】



查看更多关于“Linux培训资讯”的相关文章>>

标签: Linux培训 Linux视频教程 红帽Linux视频 Linux学习视频 Linux入门视频

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号