美文网首页
进程服务管理

进程服务管理

作者: pretty_rain | 来源:发表于2019-02-22 15:55 被阅读0次

1.进程的基本介绍

1)在linux中,每个执行的程序都称为一个进程,每个进程都分配一个ID号;
2)每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程;
3)每个进程都可能以两种方式存在,前台和后台,所谓前台进程就是用户目前的屏幕上可以操作的,后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行;
4)一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束。

2.显示系统执行的进程

  • 2.1说明:查看进程使用的指令 ps ,一般来说使用的参数是 ps -aux
字段 说明
ps -a 显示当前终端的所有进程信息
ps -u 以用户的格式显示进程信息
ps -x 显示后台进程运行的参数
image.png
  • 2.2ps指令详解
    1)指令:ps -aux | grep xxx
    2)指令说明
    USER:用户名称
    PID:进程id
    %CPU:进程占用CPU的百分比
    %MEM:进程占用物理内存百分比
    VSZ:进程占用的虚拟内存大小单位KB
    RSS:进程占用的物理内存的大小
    TTY:终端名称。缩写
    STAT:进程状态,其中s-睡眠,n-表示进程拥有比普通优先级更低的优先级,r-正在运行,d-短期等待,z-僵死进程,t-被跟踪或者被停止等等
    STARTED:进程的启动时间
    TIME:CUP时间,即进程使用CPU的总时间
    COMMAND:启动进程所用的命令和参数,如果过长会被截取显示
  • 2.3以全格式显示当前所有的进程,查看进程的父进程
    image.png
    ps -ef 是以全格式显示当前所有的进程
    -e 显示所有进程 -f 全格式
    ps -ef | more
    UID:用户id
    PID:进程id
    PPID:父进程id
    C:cpu用于计算执行优先级的因子,数值越大,表明进程是cup密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高
    STIME:进程启动的时间
    TTY:完整的终端名称
    TIME:cpu时间
    CMD:启动进程所用的命令和参数
    案例:查查sshd的父进程id是多少
    image.png

3.终止进程kill 和 killall

  • 3.1介绍
    若是某个进程执行一半需要停止时,或是已消耗了很大的系统资源时,此时可以考虑停止该进程。使用kill命令来完成此项任务。
  • 3.2基本语法
    kill [选项] 进程号 (功能描述:通过进程号杀死进程)
    killall 进程名称 (功能描述:通过进程名称杀死进程,已支持通配符,这在系统因负载过大而变得很慢时很有用)
  • 3.3常用选项
    -9:表示强迫进程立即停止
  • 3.4最佳实践
    案例1:踢掉某个非法登录的用户
    image.png
    案例2:终止远程登录服务sshd,在适当时候再次重启sshd服务
    image.png
    案例3:终止多个gedit编辑器
    killall gedit
    案例4:强制杀掉一个终端
    kill -9 终端id

4.查看进程数pstree

  • 4.1基本语法
    pstree [选项] ,可以更加直观的来看进程信息
  • 4.2常用选项
    -p :显示进程的PID
    -u :显示进程的所属用户
  • 4.3应用实例
    案例1:请树状的显示进程的pid
    image.png
    案例2:请树状的形式显示用户id
    image.png

5.服务service管理

  • 5.1介绍
    服务本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其他程序的请求,比如(mysql,防火墙,sshd),因此我们又称为守护进程,是linux中非常重要的知识点。

  • 5.2service管理指令
    service 服务名 [start|restart|strop|reload|status]
    在CentOS7.0后不再使用service,而是systemctl

  • 5.3使用案例
    关闭防火墙,启动防火墙,重启防火墙,查看防火墙状态
    bash>service iptables stop
    bash>service iptables start
    bash>service iptables restart
    bash>service iptables status
    细节说明测试防火墙是否关闭或开启

    image.png
  • 5.4查看服务名称
    方式1:在命令行输入 setup指令

    image.png
    方式2:/etc/init.d/ 下面查看服务 image.png
  • 5.5开机的流程说明

    image.png
  • 5.6 chkconfig 指令
    介绍:通过chkconfig命令可以给每个服务的各个运行级别设置自启动/关闭
    基本语法:
    1)chkconfig --list | grep xxx

    image.png
    image.png
    2)chkconfig xxx --list
    image.png
    3)chkconfig --level 运行级别 服务名 on/off
    案例:在运行级别5关闭sshd终端服务
    image.png
  • 5.7应用实例
    案例1:请显示当前系统所有服务的各个运行级别的运行状态
    bash> chkconfig --list
    案例2:请查看sshd服务的运行状态
    bash> chkconfig sshd --list
    案例3:将sshd服务在运行级别5下设置为不自动启动
    bash> chkconfig --level 5 sshd off
    案例4:当运行级别是5时关闭防火墙
    bash> chkconfig --level 5 iptables off
    案例5:在所有运行级别下关闭防火墙
    bash> chkconfig iptables off
    案例6:在所有运行级别下开启防火墙
    bash> chkconfig iptables on
    使用细节:chkconfig重新设置服务自动关闭或启动后,需要重启系统reboot才能生效

6.动态监控进程

  • 6.1介绍
    top和ps命令很相识,他们都是用来显示正在执行的进程,Top与ps最大的不同之处,在于top在执行的时候可以更新正在运行的进程
  • 6.2基本语法
    top [选项]
  • 6.3选项说明
选项 功能
-d 秒数 指定top命令每个几秒更新,默认是3秒在top命令的交互模式当中可以执行的命令
-i 使top不显示任何闲置或者僵死的进程
-p 通过指定监进程id来仅仅监控某个进程的状态

交互操作说明:

操作 功能
p 以cup使用率排行,默认就是此项
m 以内存的使用率排行
n 以pid排序
q 退出top
  • 6.4应用实例
    案例1:监视特定用户
    top:输入此命令,按回车键,查看执行进程
    u:然后输入“u”回车,再输入用户名,即可
    image.png
    案例2:终止指定的进程
    top:输入此命令,按回车键,查看执行的进程
    k:然后输入“k”回车,再输入要结束的进程id号
    image.png
    案例3:指定系统状态更新的时间(每隔10秒自动更新,默认是3秒)
    bash > top -d 10
  • 6.5查看系统网络情况netstat
    • 基本语法:
      netstat [选项]
      netstat -anp
    • 选项说明
      -an 按一定顺序排序输出
      -p 显示哪个进程在调用
    • 应用案例

      案例1:查看系统所有的网络服务: image.png
      案例2:请查看服务名为sshd的服务的信息 image.png

相关文章

网友评论

      本文标题:进程服务管理

      本文链接:https://www.haomeiwen.com/subject/lgbryqtx.html