大数据 Linux 进程介绍

课时44 进程介绍和查询
1.基本介绍
(1)在Linux中,每个执行的程序(代码)都称为一个进程。每个进程都分配一个ID号。
(2)每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器
(3)每个进程都可能以两种方式存在。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台
进程实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
(4)一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才结束。
2.指令
1)ps 用来查看目前系统中,有哪些正在执行,以及执行的状况,可以不加任何参数
2)字段
PID     进程识别号
TTY     终端机号
TIME   此进程所消CPU时间
CMD   正在执行的命令或进程名
3)命令
ps -a:显示当前终端的所有进程信息
ps -u:以用户的格式显示进程信息
ps -x:显示后台运行的参数
[root@hadoop01 ~]# ps -aux
[root@hadoop01 ~]# ps -aux | more
USER(用户) PID (进程id)%CPU(占用的CPU) %MEM(占用内存)  
VSZ(占用虚拟内存)   RSS(使用物理内存情况) TTY(使用的终端)      STAT(进程状态,S休眠,R运行,
s表示该进程是会话的先导进程,N进程拥有比普通优先级更低的优先级,D短期等待,Z僵死,T被跟踪或被停止)
 START(启动时间)  TIME(占用cpu的总时间) COMMAND(进程执行时的命令行)
4)
ps -aux | grep xxx,看一下有没有xxx服务
root@hadoop01 ~]# ps -aux | grep sshd
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root       1816  0.0  0.1  66236  1200 ?        Ss   14:26   0:00 /usr/sbin/sshd
root       3485  0.0  0.4 102084  4140 ?        Ss   15:11   0:00 sshd: root@pts/0
root       3652  0.0  0.0 103332   860 pts/0    S+   16:27   0:00 grep sshd
3.
以全格式显示当前所有的进程,查看进程的父进程。
 ps -ef是以全格式显示当前所有的进程
-e 显示所有进程。-f全格式
ps -ef | grep xxx
[root@hadoop01 ~]# ps -ef | more
UID(用户ID)  PID(进程ID)   PPID(父进程ID)  C (CPU用于计算执行优先级的因子。数值越大 ,表明进程
是I/O密集型运算,执行优先级会提高)
STIME(进程启动的时间) TTY(完整的终端名称) TIME(CPU时间) CMD(启动进程所用的命令和参数)
BSD风格
4.查看某一个的父进程
[root@hadoop01 ~]# ps -ef | grep sshd
root       1816      1  0 14:26 ?        00:00:00 /usr/sbin/sshd
root       3485   1816  0 15:11 ?        00:00:00 sshd: root@pts/0
root       3685   3489  0 16:41 pts/0    00:00:00 grep sshd
课时45 进程管理 终止进程
1.kill和killall
若是某个进程执行一半需要停止,或已消耗了很大的系统资源,可以考虑终止该进程。
使用kill命令。
kill [选项] 进程号 (通过进程号杀死进程)
killall 进程名称 (通过进程名杀死进程,也支持通配符,这在系统因负载过大而变得很慢有用)
 -9  表示强迫进程立即停止
实例
(1)踢掉某个非法登录用户
如踢掉jack
[root@hadoop01 ~]# kill 4010
(2)终止远程登陆服务sshd,在适当的时候再次重启sshd服务
[root@hadoop01 ~]# ps -ef | grep sshd
[root@hadoop01 ~]# kill 1816
[root@hadoop01 ~]# kill 1816
-bash: kill: (1816) - 没有那个进程
(3)终止多个gedit编辑器
终端打开多个gedit编辑器
killall gedit
(4)强制杀掉一个终端
打开俩个终端
[root@hadoop01 桌面]# ps -aux | grep bash
[root@hadoop01 桌面]#kill 3851(杀不掉)
[root@hadoop01 桌面]#kill -9 3851
自己的进程号,可以自杀
2.查看进程树
pstree [选项],可以更加直观的来看进程信息
-p 显示进程的PID
-u 显示进程的所属用户
实例:
(1)以树状的形式进程PID
[root@hadoop01 桌面]# patree -p
(2)以树状的形式进程的用户id
[root@hadoop01 桌面]# patree -u
课时46 进程管理 服务管理
1.介绍
服务(service)本质就是进程,但是运行在后台的,通常会监听某个端口,等待其他程序的请求,比如(mysqld,aahd,
防火墙等),因此又称为守护进程。是Linux中非常重要的知识点。
2.管理指令
service 服务名 [start | stop | restart | reload | status]
在CentOS7.0后,不是service,是systemctl
实例
查看当前防火墙的状况,关闭防火墙和重启防火墙
[root@hadoop01 ~]# service iptables status
[root@hadoop01 ~]# service iptables stop
iptables:将链设置为政策 ACCEPT:filter                    [确定]
iptables:清除防火墙规则:                                 [确定]
iptables:正在卸载模块:                                   [确定]
[root@hadoop01 ~]# service iptables status
iptables:未运行防火墙。
[root@hadoop01 ~]# service iptables start
iptables:应用防火墙规则:                                 [确定]
[root@hadoop01 ~]# service iptables status
3.细节
(1)关闭或者启用防火墙后,立即生效。(telnet 测试 某个端口即可)
telnet ip 端口
C:\Windows\system32>telnet 192.168.112.129 22
正在连接192.168.112.129...无法打开到主机的连接。 在端口 22: 连接失败
(2)这种方式知识临时生效,当重启系统后,还是回归以前对服务的设置
(3)如果希望设置某个服务自启动或关闭永久生效,要使用chkconfig。
4.查看服务名
(1)使用setup ->系统服务
(2)/etc/init.d/服务名称
[root@hadoop01 ~]# ls -l /etc/init.d/
5.服务的运行级别
0~6,一共7种
开机的流程说明
开机→BIOS→/boot→init进程1→运行级别→运行级对应的服务
6.chkcconfig
通过chkconfig命令可以给每个服务的各个运行级别设置自启动/关闭
(1)查看服务 chkconfig --list | grep xxx
[root@hadoop01 ~]# chkconfig --list
[root@hadoop01 ~]# chkconfig --list | grep sshd
sshd            0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
(2)chkconfig 服务名 --list
[root@hadoop01 ~]# chkconfig iptables --list
iptables        0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
(3)chkconfig --level 5 服务台 on/off
请将sshd服务在运行级别为5的情况下,不要自启动
[root@hadoop01 ~]# chkconfig --level 5 sshd off
[root@hadoop01 ~]# chkconfig sshd --list
sshd            0:关闭 1:关闭 2:启用 3:启用 4:启用 5:关闭 6:关闭
实例
在所有运行级别下关闭/开启防火墙
chkconfig iptables off/on
重启可生效
课时47 进程管理 监控服务
1.动态监控进程
   top与ps命令很相似。都用来显示正在执行的进程。top与ps最大的不同之处,在于top在执行一段时间后
可以更新正在运行的进程。
(1)top [选项]
选项
-d 指定top命令每隔几秒更新,默认3秒
-i 使top不显示任何闲置或僵死进程
-p 通过指定监控进程ID来仅仅监控某个进程的状态
(2)交互操作说明
P 以CPU使用排序,默认就是此项
M 以内存的使用率排序
N 以PID排序
q 退出top
实例
(1)监视特定用户
top:输入此命令,回车,查看执行进程
u:然后输入u,回车,再输入用户名
[root@hadoop01 ~]# top
(2)终止指定的进程
top:输入此命令,回车,查看执行进程
k:然后输入k,回车,再输入要结束的进程ID号
(3)指定系统状态更新的时间(每隔10秒自动更新,默认3秒)
[root@hadoop01 ~]# top -d 10
2.监控网络状态
netstat [选项](重要)
-an 按一定顺序排列输出
-p 显示哪个进程正在调用
实例
[root@hadoop01 ~]# netstat -anp | more(查看所有的网络服务)
查看服务名为sshd的服务的信息
[root@hadoop01 ~]# netstat -anp | grep sshd
3.检测主机连接命令ping
     是一种网路检测工具,它主要是用来检测主机是否正常,或是两部主机间的介质是否为断、网线是否脱落
或网卡故障。

猜你喜欢

转载自www.cnblogs.com/zxy151/p/12303434.html