00:00
好,前面我们介绍了查看进程的基本命令就是P,一般我们用法呢,就是p saux和P-EF,那这两种用法其实都是查看了所有的进程,那有时候我们想查看一些特定的信息,哎,那往往可以后面加一个grape做一个管道的筛选啊,所以接下来呢,我们就来举一个具体的实践的案例吧。呃,我们来查看哪一个进程呢?呃,那前面我们都说到了啊,最熟悉的应该就是当前我们远程登录所使用的这个SSH服务了。它的后台守护进程就是SHD,哎,所以接下来我们就来看一看啊,多打开几个远程登录的界面,看一看SSHD这样的对应的进程是不是就会多出来。所以首先我们现在啊,先查看一下当前我们到底有哪些SSHD对应的进程啊,所以首先我们这里就直接有可能我们想看到对应的父子关系啊,我们就直接杠EF吧,因为AX主要是看这个系统资源占用的,我们现在更关心父子关系,然后直接GR。
01:06
SHD。我们可以看到现在搜出来了三条结果,这三条结果分别是user sb SD,很显然这就是我们直接启动SSHD服务的那条命令,所以我们看这条命令啊,对应的进程,它的PID是1130,它的副进程呢,直接就是一号进程。直接就是CMD啊,也就是说我们在系统启动的时候,CMD直接就把SSHD这个服务启动了啊,那如果说我们想要看一下它的状态的话,其实也可以使用system ctl status。SD,显然这是一个系统服务嘛,我们看一下它的状态。当前是正在运行的状态,而且它是开机启动,诶,所以没有问题,我们看到它是由一号进程直接启动,这就跟我们之前的系统服务管理也可以配合起来看。
02:00
然后接下来我们继续看,除了当前的这个SD之外,另外还有一个s shd root,然后使用PTS0做了一个很显然。用这个终端做了一个远程登录,那这个指的是谁呢?这就是我们当前登录的这个页面呀,我们使用叉shell,直接使用root的身份,然后打开了一个虚拟的终端去登录到了我们远程的服务器上,那这个时候使用的是什么服务呢?就是SHD,好,那所以这里面我们看到也把它搜出来了,那它的负进程是什么呢?诶,我们看它就是通过SSHD这个守护进程创建出来的一个子进程。哎,所以当前的进程编号是3195,它的负进程ID是1130PPID就是前面的这个。然后最后还有一个grape color等于auto shd,哎,那我们看到它好像跟前面我们这些都没什么关系,很显然这本身是我们当前进行这条命令,然后进行筛选SSHD输这条命令的对应产生的一个进程啊,所以我们看到它的终端,这就不是在后台了啊,当前它是有终端的里。
03:15
所以我们看到真正跟我们当前这个远程登录操作相关的,就是前面的这两条。然后接下来呢,诶呢,我们这个就很简单了,比方说我再多去创建一个。用root身份,然后登录到哈杜100这样的一个远程登录链接,我直接点一下,哎,现在又登录了一个,那接下来如果说我们再执行一下相同的命令,会发生什么事呢?啊,很显然当前我们就会多了一条SSHD的进程。那对应的呢,我们看它跟前面这个PTS0是一样的,它叫sh HD root pts2,诶那我们可能有疑问啊,那PT1去哪了呢?哎,之前我们不是在虚拟机那边直接打开了桌面,打开了一个虚拟终端吗?这个叫做。
04:03
PT1对吧,哎,但是他没有用远程登录,所以没有SSHD相关的进程啊,那这个我们就都了解了,同样它的附进程也是1130啊,那只不过紫禁程这个PID就不一样了。接下来呢,我们还可以进一步测试,因为我们当前这个登录的用户都是root嘛,那我们用其他用户身份能不能也可以做远程登录,然后筛选出对应的SHD这样的进程呢?当然是可以的,我们去新建一个。当前,哎,我们就管它叫做哈杜。100还是登录到哈度100,然后我们以艾特硅谷的身份去做一个登录,当然了,主机名就不要加上这个了,哈度100端口号二二啊,使用SSH协议去进行一个登录,然后我们做一下用户身份的验证,艾特硅谷输入密码,我们这里直接连接一下。好,连接上之后,接下来我们再来做一个查看。
05:00
哦,接下来我们看到直接就多了两个SD的进程啊,这里需要给大家稍微解释一下,下面这个比较简单,我们看到它直接就是艾特硅谷at特PTS3,很显然我们这里又打开了一个终端嘛,啊,远程登录的终端。虚拟终端PTS3,按照编号也轮到三了吧,所以这是我们对应的这个远程登录的进程,那上面这个是什么呢?呃,艾特硅谷,然后PV,这又是什么意思呢?啊,这个其实主要是为了权限分离的,我们如果仔细看的话,就会发现他们两个进程的调用的用户是不同的,下面这个,诶,很很显然直接就是艾特硅谷用户,诶他直接上来之后,我们当前就是以他身份艾特硅谷的身份去登录的嘛,所以这个完全没有问题,那上面这一个为什么它的远程登录是root身份呢?这主要就是为了我们做操作的时候,权限分离一个进程单独列出来,它保留root身份,我们在执行root权限的时候啊,就是假如说想要使用root权限去执行一些操作的时候啊,那这个时候其实使用的是这个进程去进行操作。
06:11
那如果说是普通的艾特硅谷用户去进行操作的话,就用下面的这个远程登录的进程去进行操作啊,这样的话权限分离,我们在安全性上啊,在性能上都可以得到更好的保证,这个是多说一句的扩展。通过这个例子,我们就可以看的非常的清楚,当前所有的进程到底是怎么回事儿,然后跟我们的服务他们之间又是什么样的关系了。
我来说两句