进程的基本介绍
1)在 LINUX 中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个 ID 号。
2)每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如 www 服务器。
3)每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
4)一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束
2)每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如 www 服务器。
3)每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
4)一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束
Outline: ①查看进程 ps ②终止进程 kill 和 killall ③查看进程树 pstree ④服务 service 服务名 [start | stop | restart | reload | status] ⑤查看服务名:setup 或/etc/init.d/ ⑥服务运行级别 chkconfig ⑦动态监控进程 top ⑧查看系统网络情况 netstat
①查看进程使用的指令是 ps ,一般来说使用的参数是 ps -aux
②终止进程 kill 和 killall
kill [选项] 进程号(功能描述:通过进程号杀死进程,-9 :表示强迫进程立即停止)
killall 进程名称(功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
③查看进程树 pstree
pstree [选项] ,可以更加直观的来看进程信息
-p :显示进程的 PID
-u :显示进程的所属用户
④服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是 Linux 中非常重要的知识点。
service 服务名 [start | stop | restart | reload | status]
在 CentOS7.0 后 不再使用 service ,而是 systemctl
1)关闭或者启用防火墙后,立即生效。[telnet IP 端口号 测试某个端口即可] 2) 这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置 3) 如果希望设置某个服务自启动或关闭永久生效,要使用chkconfig指令
⑤查看服务名:setup 或/etc/init.d/
1)使用 setup 查看系统服务
2)/etc/init.d/ 查看服务名称
⑥服务运行级别 chkconfig
⑦动态监控进程top
top 与 ps 命令很相似。它们都用来显示正在执行的进程。Top 与 ps 最大的不同之处,在于 top 在执行一段时间可以更新正在运行的的进程。
top [选项]
⑧ 查看系统网络情况 netstat
netstat [选项]
netstat -anp
-an 按一定顺序排列输出
-p 显示哪个进程在调用
例子1:查看系统所有的网络服务
例子2:查看服务名为 sshd 的服务的信息