进程与计划任务

进程

一.进程介绍

 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、 安全功能等。

  Process:  运行中的程序的一个 副本,是被 载入内存的一个指令集合。

进程ID (Process ID PID )号码被用来标记各个进程

UID 、GID 、和SELinux 语境决定对文件系统的存取和 访问权限,

通常 从执行进程的用户来继承。

存在生命周期

  task struct Linux 内核存储进程信息的数据结构格式

  task list :多个任务的的task struct 组成的链表

   进程创建:

init :第一个进程

父子关系

进程:都由其父进程创建,COW

fork(), clone()

二、进程管理常用命令

Linux 系统状态的查看及管理工具:pstree, ps, pidof,pgrep, top, htop, glance, pmap, vmstat, dstat, kill,pkill, job, bg, fg, nohup

1.pstree-打印进程树

图片7.png 

2.ps—列举进程

常用的选项:

a 选项包括所有终端中的进程

   x 选项包括不连接终端的进程

u 选项显示进程所有者的信息

f 选项显示进程的父进程

o 属性..选项显示定制的信息:pidcomm%cpu%memstatettyeuserruser

常用组合选项:

ps aux

ps -ef (-e 显示所有进程    -f 显示完整格式程序信息)

ps -eFH(-F 显示更完整格式的进程信息  -H 以进程层级格式显示进程相关信息)

图片8.png 

ps axo   stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm

图片9.png 

ps  -eo  pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,comm

3.pidof—查询进程号

  pidof  command 例如:pidof bash

4.pgrep—搜索进程

选项

-u uid:effercive user 生效者

-U uid:real user,真正发起运行命令者

-t 指定终端相关的进程

-l 显示进程名

-a 显示完整格式的进程名

-P 显示之地进程的子进程

图片10.png 

5.top——可以动态持续地显示监控的过程

第六行可以输入命令:

P 以占据的CPU百分比大小排序

M 以占据Memory空间大小排序

T  CPU累积占用时间排序

l  是否显示系统负载行

t  是否显示进程摘要信息及CPU负载状态

1  平均或单独显示CPU的负载状态

m 是否显示内存相关的状态信息

s  修改延迟时长  终止指定进程 退出命令

图片11.png 

6.htop—top的增强版

 需要epel源来进行安装

图片12.png 

7.vmsate—动态显示系统资源使用情况

 vmsate -s 将一些事件导致的内存变化情况列表说明

        -S 后面可以接单位,如KM取代bytes的容量。

图片13.png 

8.glances—-由python语言开发,能监视CPU、负载、内存、磁盘I/O、网络流量、文件系统、系统温度。

图片14.png 

 

计划任务

一、at任务

命令格式:at [option]   TIME

常用选项:

-V 显示版本信息

-l 列出指定队列中等待运行的作业,相当于atq

-d 删除指定的作业,相当于atrm

-c 查看具体的作业任务

-f /path/from/somefile:从指定文件中读取任务

-m 当任务被完成后,将给用户发送邮件,及时没有标准输出。

TIME选项说明:定义何时完成at中的任务

HH:MM[YYYY-mm-dd]

noon,midnight,teatime(4pm)

tomorrow

now+#{minutes,hours,days,or weeks}

图片15.png 

 二、corn—-周期性任务计划

1.介绍 周期性任务计划:cron

相关的程序包:

cronie:  主程序包,提供crond 守护进程及相关辅助工具

cronie-anacron :cronie 的补充程序;用于监控cronie任 任

务执行状况;如cronie 中的任务在过去该运行的时间点未能正常

运行,则anacron 会随后启动一次此任务

crontabs :包含CentOS提供的系统维护任务

2.crond的状态

    查看crond 守护处于运行状态:

CentOS 7:

systemctl status crond

CentOS 6:

service crond status

计划周期性执行的任务提交给crond ,到指定时间会自动运行

系统cron 任务:系统维护作业

/etc/crontab

用户cron 任务:

crontab 命令

日志:/var/log/cron

 图片16.png

   @reboot   Run once after reboot.

  @yearly    0 0 1 1 *

  @annually  0 0 1 1 *

  @monthly  0 0 1 * *

  @weekly   0 0 * * 0

  @daily     0 0 * * *

  @hourly    0 * * * *

三、crond的命令

crond  [-u user ]  [-l |-r |-e ] [-i]

-l 列出所有任务

-e 编辑任务

-r  移除所有任务

-i  同-r一起使用,以交互式模式移除指定任务


原创文章,作者:yaobinbin,如若转载,请注明出处:http://www.178linux.com/75650

(0)
yaobinbinyaobinbin
上一篇 2017-05-15
下一篇 2017-05-15

相关推荐

  • HAProxy实战(一)

    实验目的 测试基于haproxy的反代和负载均衡配置 测试keepalived高可用haproxy的效果 实验要点 (1) 动静分离discuzx,动静都要基于负载均衡实现;(2) 进一步测试在haproxy和后端主机之间添加varnish缓存;(3) 给出拓扑设计;(4) haproxy的设定要求: (a) 启动stats;(b) 自定义403、502和5…

    Linux干货 2017-02-13
  • LVM应用

    1、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项 ·首先在虚拟机当中添加指定大小的硬盘,添加完成后,系统不会自动扫描添加的硬盘设备,键入命令重新扫描SCSI总线来添加设备   echo "- – -&quo…

    Linux干货 2016-08-30
  • 新建用户的全​程解析

     新建用户的全程解析: 1,编辑passwd文件,添加newuser用户一行  nano /etc/passwd  newuser:x:2000:2000:NEWUSER:/home/newuser:/bin/bash  2,编辑group文件,添加newuser组一行 &nbs…

    系统运维 2016-08-05
  • Linux破解root口令

    Centos5、6版本破解口令方法 1 启动系统 2 在操作系统选择菜单界面选中要启动的内核 — 按a键 3 在行尾输入 1(或s或S或single)— 按回车键 4 使用passwd命令修改口令即可   Centos7版本破解口令方法 方法1 1 启动系统 2 在操作系统选择菜单界面选中要启动的内核 — 按e键…

    Linux干货 2018-01-08
  • 基础脚本编程练习题

        Shell脚本其实就是以一系列命令组合起来的文本文件,这些命令组合起来完成一个或者一项功能。因为Shell似乎是各UNIX系统之间通用的功能,并且经过POSIX(表示可移植操作系统接口Portable Operating System Interface of UNIX,缩写为 POSIX)的标准化。因此,Sh…

    2017-08-05
  • Ansible实战 lnmp 安装

    网海过客 www.chinasa.net 目录结构 ├── hosts├── roles│   └── lnmp│             ├── files│             │     &…

    Linux干货 2016-07-29