循序渐进linux 第十四章 linux系统进程管理(完善中)

14.1  进程的概念和分类

       1、概念
     在自身的虚拟空间运行的一个独立的程序,从操作系统的角度看,所有在系统上运行的东西都可以称为一个进程。
            进程由程序产生。
            程序是一个进程指令的集合,它可以启用一个或多个进程。
            程序只占磁盘空间;进程只占内存空间。

       2、分类
    按照进程的功能和运行的程序分类,进程分两大类。
            系统进程
   可以执行内存资源分配和进程切换等管理工作。不受用户干预。
            用户进程:
                    通过执行用户程序、应用程序和内核之外的系统程序而产生的进程。
                    分类:交互、批处理、守护
       3、进程属性
             状态:可运行状态、可中断的等待状态、不中断的等待状态、僵死状态、暂停状态
             关系:父进程、子进程
14.2 进程的监控与管理
        14.2.1 ps命令

              ps -ef |grep httpd
                ps  auxf |grep httpd

        14.2.2 pstree命令
           以树形结果显示程序和程序之间的关系
           pstree [-aunpu] [pid/user]
           pstree mysql #mysql用户启动了哪些进程
           pstree -c -p mysql
           pstree -u 26037 #知道PID查询哪个用户启动
            pstree -u -p 26037
            pstree -a -u -p 26037

         14.2.3 top 命令
              top
               动态实时的显示进程状态,同时提供了交互界面。
        14.2.4 lsof命令
              通过文件找到对应的进程信息
              lsof /var/log/messages  # message 文件由哪个进程在使用
              lsof  -c abc  #显示abc进程现在打开的文件
              lsof -g 3626  # 显示指定进程组打开的文件
              lsof -P 1  #通过进程号显示程序打开的所有文件及相关进程
              lsof -i
              lsof -i tcp:25 # tcp协议对应25端口进程信息
              lsof -i  :80  # 80端口对应的进程信息

              lsof -i udp@127.0.0.1:53  #显示本机udp协议对应的53端口开启的进程信息  

14.3   任务调度进程crond的使用
14.3.1  crond简介
                crond是linux下用来周期性地执行某种任务或等待处理某些事件的一个守护进程,与linux下的计划任务类似。
                linux下的任务调动分为两类,即系统任务调度和用户任务调度。
                系统任务调度:配置文件 /etc/crontab文件
用户任务调度:配置文件 /var/spool/cron 目录中,文件名与用户名一致
        14.3.2  crontab工具的使用
               1、crontab使用格式
crontab [-u user]  [file]
crontab [-u user]  [-e | -l | -r | -i]
2、crontab文件含义
用户建立的crontab文件中,每行代表一项任务,每行的每个字段代表一项设置。每行6个字段,前五段是时间设定段,第六段是执行的命令段。
                        minite  hour day month week   command 
3、crontab文件举例
0   */3  *  *  *    /........./apachectl restart        #每隔3小时重启apache服务
30  3  *  *  6    /........./backup.sh        #每周六3点30分执行脚本 * *  1,20  *  *    fsck /dev/sdb8       #每个月的1号和20号 检查磁盘设备sdb8 10  5  */5  *  *    echo "">/usr/local/apache2/log/access_log    #每个月的5,10,15,20,25,30号的5点10分执行清理apache日志操作  14.3.3 crontab注意事项 注意环境变量问题 注意清理系统用户的邮件日志 系统级任务调度与用户级任务调度的区分

      14.4 关闭进程    

14.4.1   kill终止一个进程
信号类型有多种,可用kill -l查看,常用的有3种:
SIGKILL对应数字9, 强制结束进程
SIGINT 对应数字 2,非强制结束进程 ,Cril + C
        SIGTERM 对应数字 15, 正常结束进程,缺省选项
 
        kill  [信号类型]  进程id
killall  [信号类型]  进程名称

             
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值