分享

进程管理和计划任务

 夜猫速读 2022-05-06 发布于湖北
一、进程的概念;
二、进程的管理(增、查、删);
三、计划任务的概念;
四、一次性计划任务的管理;
五、周期性计划任务的管理;

一、进程的概念;
  总结:程序是保存在硬盘中的可执行代码或数据的静态集合;
                  进程是cpu及内存中处于动态执行状态的计算机程序;
                  进程由程序运行后产生,需要消耗cpu和内存,分为父子进程,子进程向父进程申请或提交;
                  线程:包含在进程中的一个实体,与所在的进程共用计算机资源,(单线程(串行)、多线程(并行));
二、进程的管理:增(启动)、删(杀死或关闭)、查(显示进程)
  查:查找进程 ps/top/pgrep/pstree
        1.语法:ps aux                  ##静态查看进程
          RSS:物理内存,不包括swap,单位kb
          VSZ:虚拟内存
          STAT:进程状态,R运行、S休眠、Z僵尸、s父进程、1多线程、<高优先级、N低优先级、+前台进程
        2.语法:top                 ##动态显示进程的列表,相当于windows下的任务管理器,q退出,h帮助,k杀死。
          top交互式中的基本操作:
                        k--输入要杀死的PID--9代表强制杀死--15代表正常杀死(windows关机时有未关闭的程序时的提醒)
                    大写P按cpu使用情况进行将进程排序
                        q退出
        3.补充知识:清除内存的缓存命令
          echo 3 >/proc/sys/vm/drop_caches
        4. pgrep命令 :按条件查看进程;
          语法:pgrep -l 关键字                ##查看包含关键字的进程
                        pgrep -l -u 用户名                ##查看该用户的进程
        5.pstree命令:树形显示进程列表,显示包含其子进程;
          语法:pstree -aup        ##查看当前系统的进程树
                        pstree -ap 用户名                ##查看某用户的进程树
  增:启动进程        (举例:ping命令)
        1.启动方式:
          手动启动:手动执行命令进行开启进程;
          调度启动:根据任务计划定时自动启动进程;
        2.进程类型:
          前台进程:在界面运行,必须等待结束后才能继续执行命令;
          后台进程:不在操作界面运行。
        3.前后台进程的管理:
          启动前台进程:
          启动后台进程:在运行命令后加上 &,将现在运行的进程放到后台运行;
例:cat /dev/zero >/dev/null &
          挂起前台进程到后台:ctrl z        将正在运行的前台进程调到后台并暂停;
          查看后台进程:jobs -l
          恢复后台进程到前台:fg 后台进程编号(并非pid)  将后台暂停的进程调到前台继续运行
  删:停止进程 kill/killall/pkill
        1.ctrl c                 ##终止前台正在运行的进程
        2.kill -9 PID                ##强制终止单个进程
        3.killall -9 进程名                ##强制终止此进程名称的所有有关进程
        4.pkill -9 -u 用户名                ##针对此用户的所有进程强制终止
三、计划任务的概念:
  1.概念:实现进程调度管理,在特定的时间(时间点)完成特定的任务(命令);
    作用:周期性备份、定期更新系统、完成某一个特定的任务;
四、一次性计划任务管理:at
  1.一次计划任务编写流程:
         启动atd服务-->at(时间:例:at 00:17 2017-11-1)-->任务(命令)-->ctrl+d(提交)-->atq(查看)-->atrm 任务编号(删除)
五、周期性计划任务的管理;
  1.了解crond:周期性执行命令,由crontabs软件提供系统计划任务内容;crond提供程序或用户自定义计划任务。
  2.计划任务的格式:分 时  日 月  周   要执行的命令        ##用户可以不指定,默认为root用户
  3.时间的表示:所有时间为正常标准,特殊的表示以下:
        *:表示任意时间,可用在除分钟外的其他时间
        -:表示连续的时间
        /:表示时间的频率,如*/3表示每隔3
        ,:表示不连续的时间,如1,3,5
  4.设置周期性计划任务的方式:
        crontab -e -u 用户  -->时间 命令-->:wq  --> crontab -l  -->crontab -r         (删除用户的所有计划任务)
        echo'时间 命令’>>/var/spool/cron/用户名  --> crontab -l (查看)
  5.案例:
        每天早上7:50自动开启sshd服务,2250时关闭
        每隔5天清空一次FTP服务器公共目录/var/ftp/pub
        每周六的7:30时,重新启动httpd服务
        每周一、三、五的17:30时,打包备份/etc/httpd目录
       30 17 * * 1,3,5 /bin/tar zcvf /tmp/httpd-$(date +%F).tar.gz /etc/httpd/

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多