美文网首页
L. Linux进程管理

L. Linux进程管理

作者: 小猪Harry | 来源:发表于2018-09-03 10:32 被阅读0次
    //ps -l显示长格式进程信息
    //其中PID表示进程ID,PPID表示其父进程ID
    [root@hadoop01 ~]# ps
       PID TTY          TIME CMD
      3716 pts/0    00:00:00 bash
      3731 pts/0    00:00:00 ps
    [root@hadoop01 ~]# ps -l
    F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
    4 S     0   3716   3712  0  80   0 - 27081 do_wai pts/0    00:00:00 bash
    4 R     0   3732   3716  0  80   0 - 27037 -      pts/0    00:00:00 ps
    

    输出格式对应字段含义:
    F 进程的标志,
    S 进程的状态,
    PID 进程的ID,
    PPID 进程的父进程ID,
    C 进程的CPU占用率,
    PRI 进程的优先权,
    NI 进程的Nice值,
    ADDR 进程的地址空间,
    SZ 进程占用内存的大小,
    WCHAN 进程当前是否在运行,
    TTY 进程所属终端,
    Time 进程的运行时间,
    CMD 进程的命令.

    前台进程指的是进程在执行时会将命令行阻塞,直到进程执行完毕;后台进程指的是进程在执行时不会阻塞当前命令行,而是在系统后台执行。

    [root@hadoop01 ~]# ping www.baidu.com
    PING www.a.shifen.com (111.13.100.91) 56(84) bytes of data.
    64 bytes from 111.13.100.91: icmp_seq=1 ttl=128 time=18.5 ms
    64 bytes from 111.13.100.91: icmp_seq=2 ttl=128 time=20.6 ms
    64 bytes from 111.13.100.91: icmp_seq=3 ttl=128 time=18.7 ms
    64 bytes from 111.13.100.91: icmp_seq=4 ttl=128 time=17.0 ms
    64 bytes from 111.13.100.91: icmp_seq=5 ttl=128 time=17.1 ms
    64 bytes from 111.13.100.91: icmp_seq=6 ttl=128 time=17.2 ms
    64 bytes from 111.13.100.91: icmp_seq=7 ttl=128 time=16.8 ms
    64 bytes from 111.13.100.91: icmp_seq=8 ttl=128 time=16.8 ms
    64 bytes from 111.13.100.91: icmp_seq=9 ttl=128 time=17.4 ms
    ^Z
    [1]+  Stopped                 ping www.baidu.com
    [root@hadoop01 ~]# 
    
    ctrl+z进入后台
    

    ps 命令常用选项包括:
    (1)a显示所有用户的进程
    (2)u显示用户名和启动时间
    (3)x显示所有进程,包括没有控制终端的进程
    (4)e显示所有进程,包括没有控制终端的进程,较x选项,信息更为简略
    (5)l显示进程详细信息,按长格式显示

    [root@hadoop01 ~]# ps -au
    Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
    USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root       1675  0.0  0.0   4068   592 tty1     Ss+  05:39   0:00 /sbin/mingetty /dev/tty1
    root       1677  0.0  0.0   4068   588 tty2     Ss+  05:39   0:00 /sbin/mingetty /dev/tty2
    root       1679  0.0  0.0   4068   588 tty3     Ss+  05:39   0:00 /sbin/mingetty /dev/tty3
    root       1684  0.0  0.0   4068   592 tty4     Ss+  05:39   0:00 /sbin/mingetty /dev/tty4
    root       1687  0.0  0.0   4068   592 tty5     Ss+  05:39   0:00 /sbin/mingetty /dev/tty5
    root       1691  0.0  0.0   4068   588 tty6     Ss+  05:39   0:00 /sbin/mingetty /dev/tty6
    root       3716  0.0  0.1 108324  1912 pts/0    Ss   21:04   0:00 -bash
    root       3769  0.0  0.1 109592  1028 pts/0    T    21:37   0:00 ping www.baidu.com
    root       3770  0.0  0.1 110248  1188 pts/0    R+   21:41   0:00 ps -au
    [root@hadoop01 ~]# ps -aux
    Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
    USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root          1  0.0  0.1  19364  1536 ?        Ss   05:38   0:03 /sbin/init
    root          2  0.0  0.0      0     0 ?        S    05:38   0:00 [kthreadd]
    root          3  0.0  0.0      0     0 ?        S    05:38   0:00 [migration/0]
    root          4  0.0  0.0      0     0 ?        S    05:38   0:00 [ksoftirqd/0]
    root          5  0.0  0.0      0     0 ?        S    05:38   0:00 [stopper/0]
    root          6  0.0  0.0      0     0 ?        S    05:38   0:00 [watchdog/0]
    

    输出格式中对应字段含义:
    USER: 进程所有者
    PID: 进程号
    %CPU: CPU占用率
    %MEM: 内存占用率
    VSZ:表示如果一个程序完全驻留在内存的话需要占用多少内存空间;
    RSS:指明了当前实际占用了多少内存;
    TTY: 终端的次要装置号码 (minor device number of tty)
    STAT: 该进程程的状态,有以下值
    D: 不可中断的静止
    R: 正在执行中
    S: 静止状态
    T: 暂停执行
    Z: 不存在但暂时无法消除
    W: 没有足够的记忆体分页可分配
    <: 高优先序的进程
    N: 低优先序的进程
    L: 有记忆体分页分配并锁在记忆体内
    START: 进程开始时间
    TIME: 执行的时间
    COMMAND:所执行的指令

    kill -9 pid,强制关闭进程

    [root@hadoop01 ~]# ps -l
    F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
    4 S     0   3716   3712  0  80   0 - 27081 do_wai pts/0    00:00:00 bash
    4 T     0   3769   3716  0  80   0 - 27398 do_sig pts/0    00:00:00 ping
    4 R     0   3790   3716  0  80   0 - 27035 -      pts/0    00:00:00 ps
    [root@hadoop01 ~]# kill -9 3769
    [root@hadoop01 ~]# ps -l
    F S   UID    PID   PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
    4 S     0   3716   3712  0  80   0 - 27081 do_wai pts/0    00:00:00 bash
    4 R     0   3791   3716  0  80   0 - 27035 -      pts/0    00:00:00 ps
    [1]+  已杀死               ping www.baidu.com
    [root@hadoop01 ~]# 
    

    进程的前台后台切换:
    ctr+c命令终止进程
    ctr+z命令挂起进程
    jobs:该命令用于查看当前终端后台运行的任务。
    ps:该命令用于查看瞬间进程的动态。
    fg命令将进程转到前台执行
    bg命令将进程转到后台执行

    开启Crontab服务

    检查是否安装:
    crontab -l

    安装:
    yum install crontabs

    查看服务状态
    service crond status

    开启服务
    service crond start

    crontab -e 命令可以在vi中编辑任务, 如下面代码每一分钟向文本写入当前日期

    * * * * * date >> ~/log.txt
    

    分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 星期(0-6,0代表星期天)  命令

    相关文章

      网友评论

          本文标题:L. Linux进程管理

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